Ich habe mich gefragt, ob es möglich ist, eine benutzerdefinierte Verknüpfung zu erstellen vim
oder vi
eine geöffnete Datei zu speichern.
Zum Beispiel, CtrlSanstatt jedes Mal zu tippen :w
?
Vielen Dank!
Ich habe mich gefragt, ob es möglich ist, eine benutzerdefinierte Verknüpfung zu erstellen vim
oder vi
eine geöffnete Datei zu speichern.
Zum Beispiel, CtrlSanstatt jedes Mal zu tippen :w
?
Vielen Dank!
Antworten:
Vim wird mit einer Datei geliefert, die einige Zuordnungen enthält, die mit Windows-Dateien übereinstimmen sollen. Dies ist normalerweise in $VIMRUNTIME/mswin.vim
(laufen, um :echo $VIMRUNTIME
zu sehen, was es für Sie ist). Sie können einfach tun:
:source $VIMRUNTIME/mswin.vim
Und erhalten Sie eine Reihe von Verknüpfungen, einschließlich CtrlS. Weitere :h mswin.vim
Informationen finden Sie hier.
Beachten Sie, dass Ihr Terminalemulator möglicherweise CtrlSfür andere Zwecke verwendet wird, dies liegt jedoch außerhalb von Vim.
Gehen Sie folgendermaßen vor, um nur ein zu testendes Mapping zu erstellen:
nnoremap <c-s> :w<cr>
Auslegen auf @ muru ‚s Vorbehalt über ctrl+ sdurch das Endgerät eingefangen werden:
Standardmäßig binden mehrere Terminal-Clients (einschließlich Cygwin) ctrl+ san das Freeze-Ausgangssignal , was sich auf eine Reihe von Befehlen auswirkt, z. B. scp
und verhindert im Übrigen, dass der Tastendruck anderen Dingen zugewiesen wird, da die Konsole ihn erfasst, bevor er erreicht wird vim
oder andere Anwendungen.
Also , für diejenigendie verwendetsollenctrl+sfür andere Zwecke alsEinfrieren Ausgang, versuchen Sie folgendes zu Ihrer „Bashrc“ Datei hinzufügen:
# free up ctrl+s and ctrl+q:
stty stop ''
stty start ''
stty -ixon
stty -ixoff
/usr/share/vim/vim74
. Und wenn ich Dateien von dort aufliste, habe ich nichtmswin.vim
. Ich bin auf Deb8, vim Version ist2:7.4.488-7