2013-06-11 15 views
5

voglio rimappare <PageUp> a <C-u> e PageDown al <C-d> per il Vim scrolling documentation.Come rimappare i tasti di Vim (Pagina su e Pagina giù)

Così com'è ora, il mio /etc/vim/vimrc assomiglia a questo:

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

Ho provato un sacco di combinazioni e niente di quello che ho fatto ha lavorato diversi.

Il mio obiettivo è spostare il cursore su Start Of File o EOF tenendo premuto PageUp/PageDown. Come è adesso, il cursore si ferma prima che arrivi fino in cima (e PageDown scorre oltre l'EOF). Solo fastidi che sto cercando di sistemare.

MODIFICA: Le impostazioni precedenti funzionano correttamente. Stavo posizionando le mie mappature troppo presto nel file.

risposta

6

E i seguenti mapping?

nnoremap <PageUp> gg 
nnoremap <PageDown> G 

O semplicemente utilizzando gg e G?

+0

No, che non ha funzionato. Sono su Debian, se questo aiuta. Forse hanno creato Vim in un modo che non capisco? – Jeff

+0

Aspetta, sì, sì ... Ho modificato su '/ etc/vim/vimrc' invece di' ~/.vimrc'. Le mappature dei tasti funzionano solo nel file .vimrc degli utenti? – Jeff

+0

Sono su ubuntu e funziona, 'gg' è il comando canonico per andare alla prima riga e' G' il comando canonico per andare all'ultima riga. Inoltre, '' e' 'si fermano proprio alla prima riga e l'ultima riga. Per favore mostraci il tuo '~/.vimrc' e dicci quale versione di Vim usi. – romainl

2

Invece di posizionare i mapping nel sistema /etc/vim/vimrc, è necessario inserire le personalizzazioni utente nel file ~/.vimrc. Tuttavia, la configurazione globale (se è ciò che si desidera) dovrebbe funzionare anche. Ciò non significa che le mappature vengano cancellate o ridefinite. È possibile controllare con

:verbose nmap <PageDown> 

Se non ha ottenuto ridefinito, si deve andare a caccia di :nunmap comandi in tutti gli script caricati (:scriptnames), o catturare un registro con vim -V20vimlog.

+0

Se si rispetta la risposta, si prega di fornire un feedback perché si ritiene che sia inadeguato. –

0

Si può fare questo con

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> 

da fixing-pageup-and-pagedown

Problemi correlati