Ingo Karkat
d578e14e89
Do not create a select mode default mapping.
...
In select mode (the variant of visual mode), any printable characters should override the selection (see below :help v_CTRL-G), so no such mappings should exist. Limit the default visual mode mapping to visual mode (:xmap). (The <Plug>(Exchange) can and should be defined for both.)
2014-06-24 16:28:41 +02:00
Tom McDonald
72d9f0a3cf
Add "expand" functionality
...
When one exchange region is completely contained within another,
replace the larger one with the smaller one.
The term "expand" may seem counter-intuitive, as the result is less
text, but think of it this way: the smaller region is "expanding"
to occupy the space previously defined by the larger region.
2014-04-27 10:28:16 -04:00
Tom McDonald
a55ebe1c8d
Use srings to describe exchange region comparison
...
... in preparation for things to come.
2014-04-27 10:14:13 -04:00
Tom McDonald
06f62c9f51
Ensure 'selection' is set to inclusive
...
References #23 .
2014-04-26 08:25:46 -04:00
Tom McDonald
105cf06d43
Use '[ and '] marks instead of a-z marks
...
Closes #22 .
2014-04-08 17:09:22 -04:00
Tom McDonald
c307765978
Use less popular marks during exchange
...
At least until I can figure out why they're being overwritten.
References #22 .
2014-04-08 15:21:36 -04:00
Tom McDonald
694d00abe9
Use clearer variable names for mark backups
2014-04-08 15:20:29 -04:00
Christian Wellenbrock
ff52604e80
Use X as visual mapping for Exchange
2014-02-25 00:19:48 +01:00
Brian Smyth
57fe37a89c
Use a named register for visual mode put.
...
Save and restore both the unnamed and z registers. Using the z register
works around the bug addressed by Vim patch 7.3.411.
2014-02-04 12:39:30 -05:00
Micha Moskovic
ac8ae24d73
Link 'IncSearch' for default highlight group
...
The previous green one is completely arbitrary and looks ugly with some colorschemes.
2014-01-07 18:12:25 +01:00
Tom McDonald
d67bace226
Improve highlighting coverage
...
* Support gui
* Use colors available for terminals with 8 colors
2014-01-05 11:06:07 -05:00
Tom McDonald
53b2b497b0
Maintain cursor position when exchanging
...
Closes #16 .
2014-01-01 11:32:54 -05:00
Tom McDonald
39895312ec
Highlight the first defined exchange region
...
Closes #13 .
2014-01-01 11:03:33 -05:00
Tom McDonald
80f24f2398
Change <Plug> mappings to avoid prefix strings
...
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
2013-12-22 10:05:38 -05:00
Tom McDonald
88bb271e2d
Fix incorrect visual mapping to cxx
...
Fixes #12 .
2013-12-22 09:28:36 -05:00
Tom McDonald
855b57077e
Allow default mappings to be overridden
...
Partial solution to #11
2013-12-21 22:51:50 -05:00
Tom McDonald
fba5bcea8c
Detect overlap for two blockwise regions
2013-12-12 15:12:14 -05:00
Tom McDonald
ec7f183583
Fix quoting for escaped <C-V> sequence
...
This bug would probably have never affected anyone, since it only
comes up when a normal-mode motion results in a blockwise selection.
2013-12-12 15:06:40 -05:00
Tom McDonald
2d7ef58550
Use getreg() instead of macro syntax
2013-12-11 10:19:25 -05:00
Tom McDonald
62ae17d31a
Use " register instead of @
2013-12-11 10:17:26 -05:00
Tom McDonald
a0e2169959
Use setreg() to preserve yanked text's -wise mode
2013-12-11 10:03:15 -05:00
Israel Chauca Fuentes
07d9946872
Use getregtype() to restore register's mode.
2013-12-11 09:23:52 -05:00
Micha Moskovic
00b3dd0274
Make the default mappings optional
2013-12-10 17:43:08 +01:00
Tom McDonald
ae6495dafc
Protect against mapped underscore
...
Refs pull request #3
2013-12-10 09:16:01 -05:00
James Baumgarten
a1745846e6
make sure to paste from unnamed register
2013-12-10 01:18:03 -08:00
Tom McDonald
9aa477fa96
Match case when comparing visual mode
...
Closes #4 .
2013-12-09 20:40:00 -05:00
Christian Wellenbrock
275bc1e2b7
Add mapping to make 'cxx' work linewise
2013-12-09 23:03:55 +01:00
Tom McDonald
e31a5f57d2
Detect overlapping and swap-needing exchange text
...
Closes #1 .
2013-12-09 13:19:19 -05:00
Tom McDonald
6ff338e953
Code organization
2013-12-06 13:45:08 -05:00
Tom McDonald
366ead65a2
Rewrite to support swapping exchange operands
2013-12-06 00:26:36 -05:00
Tom McDonald
9833bfaf9f
Preserve cursor position after exchange
2013-12-05 23:19:37 -05:00
Tom McDonald
ea205fd0fc
Fix typo
...
(Actually, it was the result of me testing the plugin)
2013-12-05 13:00:38 -05:00
Tom McDonald
a17828563e
Initial prototype
2013-12-05 12:50:07 -05:00