1
0
mirror of https://github.com/SpaceVim/SpaceVim.git synced 2025-01-24 02:20:03 +08:00
SpaceVim/bundle/clever-f.vim/doc/clever_f.txt
2022-04-08 23:52:26 +08:00

286 lines
13 KiB
Plaintext

*clever-f.txt* Make |f|, |F|, |t| and |T| cleverer.
Author : rhysd <lin90162@yahoo.co.jp>
Version : 1.5
CONTENTS *clever-f.vim-contents*
Introduction |clever-f.vim-introduction|
Usage |clever-f.vim-usage|
Mappings |clever-f.vim-mappings|
Variables |clever-f.vim-variables|
Special Thanks |clever-f.vim-special-thanks|
Repository Page |clever-f.vim-repository-page|
License |clever-f.vim-license|
==============================================================================
INTRODUCTION *clever-f.vim-introduction*
*clever-f.vim* or *clever-f* extends |f|, |F|, |t| and |T| key mappings for more
convenience.
Instead of |;|, |f| is available to repeat after you type |f|{char} or |F|{char}. |F|
after |f|{char} and |F|{char} is also available to undo a jump. |t|{char} and
|T|{char} are ditto. This extension makes a repeat easier and makes you forget
the existence of |;|. You can use |;| for other key mapping.
In addition, many handy features (target highlighting, smartcase matching, and
so on) are provided and you can customize behavior of the mappings.
Please check |clever-f.vim-variables|.
==============================================================================
USAGE *clever-f.vim-usage*
I'll show an example of usage. _ is the place of cursor, -> is a move of
cursor, alphabets above -> is input by keyboard.
>
input: fh f f e fo f
move : _---------->_------>_---------->_->_---------------->_->_
input: F F
move : _<-----------------------------_<-_
text : hoge huga hoo hugu ponyo
<
>
input: f Fh b f Fo
move : _<----------_<------_<-_<-----------------------------_<-_
input: F F F
move : _---------->_------>_----------->_
text : hoge huga huyo hugu ponyo
<
>
input: th t t e to t
move : _--------->_------>_---------->_-->_--------------->_->_
input: T T
move : _<-----------------------------__
text : hoge huga hoo hugu ponyo
<
==============================================================================
MAPPINGS *clever-f.vim-mappings*
*g:clever_f_not_overwrites_standard_mappings*
If you don't set |g:clever_f_not_overwrites_standard_mappings|, |clever-f|
replaces |f|, |F|, |t|, and |T| with |<Plug>(clever-f-f)|, |<Plug>(clever-f-F)|,
|<Plug>(clever-f-t)| and |<Plug>(clever-f-T)| as default mappings.
<Plug>(clever-f-f) *<Plug>(clever-f-f)*
<Plug>(clever-f-F) *<Plug>(clever-f-F)*
<Plug>(clever-f-t) *<Plug>(clever-f-t)*
<Plug>(clever-f-T) *<Plug>(clever-f-T)*
<Plug>(clever-f-reset) *<Plug>(clever-f-reset)*
<Plug>(clever-f-repeat-forward) *<Plug>(clever-f-repeat-forward)*
<Plug>(clever-f-repeat-back) *<Plug>(clever-f-repeat-back)*
==============================================================================
VARIABLES *clever-f.vim-variables*
g:clever_f_across_no_line *g:clever_f_across_no_line*
If the value is equivalent to 1, |clever-f| mappings search target
character only in the cursor line. The default value is 0.
g:clever_f_ignore_case *g:clever_f_ignore_case*
If the value is equivalent to 1, it makes |clever-f| mappings' search case-
insensitive. For example, if you input "fa", it matches both "a" and "A".
The default value is 0.
g:clever_f_smart_case *g:clever_f_smart_case*
If the value is equivalent to 1, it makes |clever-f| mappings' search
smart case. For example, if you input "fa", it matches both "a" and "A",
but if you input "fA", it matches only "A".
The default value is 0.
g:clever_f_use_migemo *g:clever_f_use_migemo*
If the value is equivalent to 1, migemo support is enabled. This feature
is useful in Japanese environment. |clever-f| can match multibyte Japanese
character with a alphabet input. For example, "fa" can search "あ".
This feature doesn't require |cmigemo| because |clever-f| includes regex
patterns generated by cmigemo.
Please see http://0xcc.net/migemo/ if you want to know more about migemo.
The default value of this variable is 0.
>
input: fm f f
move : _---->_---->_----------------------------------------->_
input: F F F
move : _<----_<----_<-----------------------------------------_
text : ビム!ビム!ビムゥぅうわぁああん!!! あぁあっあっー!ビムゥ!!
<
g:clever_f_fix_key_direction *g:clever_f_fix_key_direction*
If the value is equivalent to 1, the directions of keys are fixed. For
example, |F| is backward search and repeating of |F| after |F| makes the
same direction search. Below is the behavior. Please compare examples of
|clever-f.vim-usage|.
The default value is 0.
>
input: F Fh b F Fo
move : _<----------_<------_<-_<-----------------------------_<-_
input: f f f
move : _---------->_------>_----------->_
text : hoge huga huyo hugu ponyo
<
g:clever_f_show_prompt *g:clever_f_show_prompt*
If the value is equivalent to 1, a prompt is shown when a character is
input to search. The prompt is disposed after the input.
The default value is 0.
g:clever_f_chars_match_any_signs *g:clever_f_chars_match_any_signs*
The value must be string. If this variable is not empty, characters in the
value matches any signs. For example, when the value is ";:", f; and f:
matches all signs. You can jump signs whose keys are hard to press.
The default value is "".
>
input: f; f f f f f f
move : _-->_--->_--------->_>_>_------------>_>_
text : hoge.huga( autoloads: %w{ aaa bbb ccc } )
<
g:clever_f_mark_cursor *g:clever_f_mark_cursor*
If the value is equivalent to 1, current cursor position will be
highlighted when waiting for {char}. This way you won't lose your focus
from the place your cursor was.
The default value is 1.
g:clever_f_mark_cursor_color *g:clever_f_mark_cursor_color*
Only used when |g:clever_f_mark_cursor| is enabled. Change highlight group
used to mark cursor position.
The default value is "Cursor".
Note:
|g:clever_f_mark_cursor_color| must be set before |clever-f| is loaded.
(e.g. in your |vimrc|)
g:clever_f_hide_cursor_on_cmdline *g:clever_f_hide_cursor_on_cmdline*
If the value is equivalent to 1, a cursor is hidden on inputting {char}.
This feature prevents cursor from moving to command line.
The default value is 1.
g:clever_f_timeout_ms *g:clever_f_timeout_ms*
If the value is greater than 0, |clever-f| check the interval of previous
search and next search. If the interval is longer than the value,
|clever-f| resets its state to make you input a character. The unit of the
value is millisecond.
The default value is 0 (it means no timeout).
g:clever_f_highlight_timeout_ms *g:clever_f_highlight_timeout_ms*
Setting a number value to this variable specifies the timeout for clearing
highlights in milliseconds. When the value is greater than 0, highlights
on the target character are automatically cleared after the timeout.
The default value is 0 (it means no timeout).
g:clever_f_mark_char *g:clever_f_mark_char*
If the value is equivalent to 1, the characters in line which you input
in |f|, |F|, |t| and |T| are highlighted until the search ends. The
highlighted characters means candidates the cursor can move to by |f|, |F|, |t|
and |T|. Highlighting is enabled in normal and visual mode.
The default value is 1.
g:clever_f_mark_char_color *g:clever_f_mark_char_color*
If |g:clever_f_mark_char| is enabled, |clever-f| highlights the target
characters using the highlight group which |g:clever_f_mark_char_color|
specifies. If you want to change the highlight group |clever-f| uses, set
your favorite highlight group to this variable.
The default value is "CleverFDefaultLabel", which makes characters red and
bold. If you want to make an original label highlight, define your own
highlight group.(See |:highlight|)
Note:
|g:clever_f_mark_char_color| must be set before |clever-f| is loaded.
(e.g. in your |vimrc|)
g:clever_f_repeat_last_char_inputs *g:clever_f_repeat_last_char_inputs*
This is a list of string value. If one of the elements are input,
|clever-f| use the previous input instead of the input.
The default value is ["\<CR>"]. It means that previous input is used when
you input <CR>. For example, when you previously input "fa" and then
input "f<CR>", "a" will be used instead of "<CR>".
If you want to add <Tab> to the element, please write below in your vimrc.
>
let g:clever_f_repeat_last_char_inputs = ["\<CR>", "\<Tab>"]
<
g:clever_f_mark_direct *g:clever_f_mark_direct*
If the value is equivalent to 1, characters to which the cursor can be
moved directly are highlighted until you input a character. Highlighting
is enabled in normal and visual mode.
The default value is 0.
Note:
|g:clever_f_mark_direct| must be set before |clever-f| is loaded. Setting
to 1 in your |vimrc| is recommended.
g:clever_f_mark_direct_color *g:clever_f_mark_direct_color*
If |g:clever_f_mark_direct| is enabled, |clever-f| highlights characters
using the highlight group which |g:clever_f_mark_direct_color| specifies.
If you want to change the highlight group |clever-f| uses, set
your favorite highlight group to this variable.
The default value is "CleverFDefaultLabel", which makes characters red and
bold. If you want to make an original label highlight, define your own
highlight group.(See |:highlight|)
Note:
|g:clever_f_mark_direct_color| must be set before |clever-f| is loaded.
(e.g. in your |vimrc|)
==============================================================================
SPECIAL THANKS *clever-f.vim-special-thanks*
|<Plug>(clever-f-t)|, |<Plug>(clever-f-T)|, repeatability with |.|,
availability of |[count]| are the works by @thinca. Thanks!
(http://d.hatena.ne.jp/thinca/20130227/1361891993)
==============================================================================
REPOSITORY PAGE *clever-f.vim-repository-page*
The latest version of |clever-f| is available at
https://github.com/rhysd/clever-f.vim
==============================================================================
LICENSE *clever-f.vim-license*
|clever-f.vim| is distributed under MIT license.
Copyright (c) 2013 rhysd
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
"Software"), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
==============================================================================
vim:tw=78:colorcolumn=78:ts=8:ft=help:norl:et:fen:fdl=0: