2013-06-11 14 views
5

Ich möchte <PageUp> zu <C-u> und PageDown zu <C-d> pro der Vim scrolling documentation neu zuordnen.Wie neu zuordnen Vim-Tasten (PageUp und Pagedown)

Wie steht es jetzt, mein /etc/vim/vimrc sieht wie folgt aus:

nnoremap <PageUp> <C-u> 
nnoremap <PageDown> <C-d> 

ich viele verschiedene Kombinationen und nichts ausprobiert habe ich getan habe gearbeitet hat.

Mein Ziel ist es, den Cursor auf den Start der Datei oder EOF verschieben, wenn Sie Bild auf/Bild gedrückt halten. Wie es gerade ist, stoppt der Cursor, bevor er ganz nach oben kommt (und PageDown scrollt nach dem EOF). Nur Ärger, die ich versuche zu beheben.

EDIT: Die obigen Einstellungen funktionieren gut. Ich habe meine Mappings zu früh in der Akte platziert.

Antwort

6

Was ist mit den folgenden Zuordnungen?

nnoremap <PageUp> gg 
nnoremap <PageDown> G 

Oder einfach gg und G mit?

+0

Nö, die nicht funktionierten. Ich bin auf Debian, wenn das hilft. Vielleicht haben sie Vim auf eine Weise eingerichtet, die ich nicht verstehe? – Jeff

+0

Warte, ja, es war ... Ich habe an '/ etc/vim/vimrc' statt an' ~/.vimrc' gearbeitet. Funktionieren Schlüsselzuordnungen nur in der .vimrc-Datei des Benutzers? – Jeff

+0

Ich bin auf Ubuntu und es funktioniert, 'gg' ist der kanonische Befehl für die erste Zeile und' G' der kanonische Befehl für die letzte Zeile gehen. Auch "" und '' stoppen direkt an der ersten Zeile und der letzten Zeile. Bitte zeigen Sie uns Ihre '~/.vimrc' und sagen Sie uns, welche Version von Vim Sie verwenden. – romainl

2

Anstatt die Zuordnungen in das systemweite /etc/vim/vimrc zu platzieren, sollten Sie Benutzeranpassungen in die Datei ~/.vimrc einfügen. Nichtsdestotrotz sollte die globale Konfiguration (wenn es das ist, was Sie wollen) auch funktionieren. Das bedeutet nicht, dass die Zuordnungen gelöscht oder neu definiert werden. Sie können prüfen, mit

:verbose nmap <PageDown> 

Wenn es nicht neu definiert bekommt, müssen Sie in allen geladenen Skripten (:scriptnames) oder fangen ein Protokoll mit vim -V20vimlog für :nunmap Befehle jagen.

+0

Wenn Sie die Antwort downvote, geben Sie bitte Feedback, warum Sie denken, dass es nicht ausreicht. –

0

Sie können dies tun, mit

map <silent> <PageUp> 1000<C-U> 
map <silent> <PageDown> 1000<C-D> 
imap <silent> <PageUp> <C-O>1000<C-U> 
imap <silent> <PageDown> <C-O>1000<C-D> 

von fixing-pageup-and-pagedown

Verwandte Themen