18 Stimmen

Kann die Windows-Taste in Vim abgebildet werden?

Die Verwendung der Windows-Taste als Meta ist in Emacs sehr nützlich, gibt es eine Möglichkeit, dies in Vim zu tun?

10voto

guest Punkte 101

Sie können es auf jeden Fall, sogar im Terminal, obwohl Sie es als Metaschlüssel verwenden müssen (ich habe keine Möglichkeit gefunden, es allein zu verwenden).

Bearbeiten Sie Ihre .vimrc-Datei mit vim. Sagen wir, Sie wollen Folgendes umschreiben Win+q im normalen Modus, um vim zu beenden. Fügen Sie einfach Ihre Zuordnung hinzu und drücken Sie, wenn Sie versuchen, Ihren Shortcut anzugeben, die Taste Ctrl+V entonces Win+q .

Dadurch wird etwas Ähnliches hinzugefügt wie ^X@sq zu Ihrer Datei (aber nicht direkt eingeben El ^X es un Sonderzeichen ).

Am Ende sollte Ihre Zeile wie folgt aussehen:

nnoremap ^X@sq :q<CR>

Speichern und beenden Sie das Programm, starten Sie vim erneut, und das war's.

Anmerkung: Ctrl+v im Einfügemodus wird die folgende Taste/Tastenkombination wörtlich eingefügt. Für mehr Informationen versuchen Sie :help i_CTRL-V in vim.

7voto

frp Punkte 1119

Tut mir leid, dass ich eine so alte Frage beantworte, aber die Lösung ist wirklich einfach: Es ist unmöglich, die Win-Taste im Terminal zu benutzen, aber es ist möglich, sie mit Gvim zu benutzen. Übergeben Sie sie einfach als Modifikator T. Zum Beispiel,

:nmap <T-F5> :q<cr> 

wird Win+F5 dem Befehl :q zugeordnet. Aber es ist nur unter *nix verwendbar.

6voto

wimh Punkte 14781

Sie können verwenden AutoHotkey zur Karte die Windows-Taste auf eine andere Taste. Aktivieren Sie die Zuweisung nur, wenn vim aktiv ist:

#IfWinActive ahk_class GVIM
RWin::Alt  
LWin::Alt  
#IfWinActive  ; This puts subsequent remappings and hotkeys in effect for all windows.

5voto

Yktula Punkte 13416

Keine dieser Antworten (einschließlich dieser) ist vim-spezifisch, und die ausgewählte Antwort ist Windows-spezifisch. Hier ist eine für *nix mit X.

Ich belege meine linke Win-Taste mit der Esc-Taste. Das funktioniert nicht in virtuellen Terminals, aber in X.

Entweder:
(1) Anhängen keysym Super_L = Escape zu ~/.Xmodmap und ausführen xmodmap .Xmodmap .
|______(1a) ~same as echo "keysym Super_L = Escape" >> ~/.Xmodmap && xmodmap .Xmodmap .
(2) Ausführen xmodmap -e "keysym Super_L = Escape" .

Wenn Sie möchten, dass es in virtuellen Terminals funktioniert, siehe [0].

REFERENZEN:
[0] http://www.mail-archive.com/screen-users@gnu.org/msg02859.html
[1] http://www.paganini.net/index.cgi/linux/nocaps.html
[2] http://ubuntuforums.org/archive/index.php/t-975229.html

0voto

Ich bin mir nicht ganz sicher, aber die Ctrl + Esc Tastenkombination ist eine reine Windows-Tastenbelegung. Sie hilft nicht mit vim

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X