-
Notifications
You must be signed in to change notification settings - Fork 112
DifferencesFromPureVim
b1f6c1c4 edited this page May 22, 2020
·
8 revisions
- How can I make vmp behave as close to pure-vim's default as possible?
- Config: vmp:
stayOnTransformString
,stayOnYank
,stayOnDelete
- Config: vim:
startofline
, vmp:stayOnVerticalMotion
( meaning inverted ) g ctrl-a
,g ctrl-x
invisual-mode
(v_g_CTRL-A
)
Paste following setting to your config.cson
.
See flight-manual for how to open your config.cson
.
"vim-mode-plus":
useClipboardAsDefaultRegister: false
updateRegisterOnChangeOrSubstitute: true
clearMultipleCursorsOnEscapeInsertMode: true
stayOnTransformString: false
stayOnDelete: false
stayOnYank: false
stayOnSelectTextObject: false
stayOnVerticalMotion: false
incrementalSearch: false
highlightSearch: false
Optionally, you can install a package no-evil-eol-newline so that the last empty line is hidden, just like in pure vim.
These configurations are unique feature of vim-mode-plus and enabled by default.
- vmp: Try to keep original cursor position as much as posible after operation(select, move, operate).
- vim: Move to start position of target after operation(e.g. Cursor moved to start of paragraph after
y i p
)
If you don't like this incompatible behavior, set all false
.
- In vim
startofline
istrue
by default.- When
true
, move cursor to start of first character for specific commands. - When
false
, try to keep same column for specific commands.
- When
The affected commands
- vim:
startofline
affects following commands-
ctrl-d
,ctrl-u
,ctrl-b
,ctrl-f
,G
,H
,M
,L
,gg
,d
,<<
,>>
-
- vmp:
stayOnVerticalMotion
affect motion command only.- Meaning inverted:
!startofline === stayOnVerticalMotion
stayOnVerticalMotion` -
ctrl-d
,ctrl-u
,ctrl-b
,ctrl-f
,G
,H
,M
,L
,gg
- So how to set for
d
,<<
,>>
?- For
d
:stayOnDelete
config is available, settingfalse
is equal tostartofline=true
. - For
<<
,>>
:stayOnTransformString
config is available, settingfalse
is equal tostartofline=true
.
- For
- Meaning inverted:
This command increment number within the selected text with count(default 1
) step.
- vmp: do not increment first number.
- vim: increment first number.
So in the following text
1 1 1 1
- vmp:
V g ctrl-a
make text to1 2 3 4
- vim:
V g ctrl-a
make text to2 3 4 5
This difference is intentional breaking change.