问题
Because honestly
:wq!
is just too much to type.
Please note that the question is about original Vi (say Vi which comes with FreeBSD) not Vim.
回答1:
This seems to work on solaris' old version of vi:
Version SVR4.0, Solaris 2.5.0
$ vi -c "map g ZZ" test
edit: Also, this seems to work:
$ vi -c 'map g :q!^M' test
Where ^M is actually, ^V (ctl-v) then ^M (ctl-m)
回答2:
Hold down the shift key and bang on Z twice.
ZZ
is (mostly) equivalent to :wq!
.
If you really want a single-keystroke solution, FreeBSD comes with the source so, in a pinch, you could modify that and re-compile. It's a bit of an overkill but it'll solve your problem.
回答3:
What about "ZZ"? It has slightly different semantics to ":wq!", but is also slightly shorter.
回答4:
Map your favourite key to the :wq! command.
e.g. put this in your .vimrc:
map <F8> :wq!<CR>
Et voilá.
Edit: Sorry, vim only, missed that.
回答5:
Does :x
work on Vi? Although for your case I guess it might be :x!
回答6:
If you're using gvim you can close it with ALT+F4
. Two keys, but one keypress.
If you're using vi in its own xterm, ALT+F4
should close the xterm, killing vi as well.
回答7:
What's wrong with the tried and true?
:x
It's not one key press, but it's much less than :wq! which is what your question appears to truly seek.
Or is this a ViM only feature? My apologies if so.
来源:https://stackoverflow.com/questions/468939/how-do-you-quit-the-vi-editor-with-single-keypress