Any custom mappings to <Plug>Exchange, <Plug>ExchangeLine, or <Plug>ExchangeClear will have to be changed to map to <Plug>(Exchange), <Plug>(ExchangeLine), and <Plug>(ExchangeClear). References #12
2.0 KiB
exchange.vim
Easy text exchange operator for Vim.
Mappings
cx
On the first use, define the first {motion} to exchange. On the second use, define the second {motion} and perform the exchange.
cxx
Like cx
, but use the current line.
cxc
Clear any {motion} pending for exchange.
Notes about the mappings
cx
can also be used from visual mode, which is sometimes easier than coming up with the right {motion}- If you're using the same motion again (e.g. exchanging two words using
cxiw
), you can use.
the second time.
Example
To exchange two words, place your cursor on the first word and type cxiw
.
Then move to the second word and type cxiw
again. Note: the {motion} used in
the first and second use of cx
don't have to be the same.
Caveats
Visual mapping causes delay for change operator
As noted in Issue #11, the visual mapping for cx
can cause a delay
if you want to use c
from visual mode. This is because Vim is waiting for a
delay (specified by 'timeoutlen'
) before using the c
command instead of
using cx
. For more details, see :help 'timeoutlen'.
There are two potential solutions for this.
Changing timeout length
Set 'timeoutlen'
to a smaller value so that the delay is less noticeable.
set timeoutlen=250
Changing default visual mapping
Change the default visual mapping to something that doesn't begin with c
(or
any other existing operator).
vmap <Leader>cx <Plug>(Exchange)
Installation
If you don't have a preferred installation method, I recommend installing pathogen.vim, and then simply copy and paste:
cd ~/.vim/bundle
git clone git://github.com/tommcdo/vim-exchange.git
Once help tags have been generated, you can view the manual with
:help exchange
.