In vim, come faccio a cambiare i tasti freccia sinistra e destra?


25

In realtà, i miei tasti freccia funzionano correttamente, spostandosi su, giù, sinistra e destra come previsto, con un'eccezione. All'inizio di una riga, la freccia sinistra non fa nulla, invece di passare all'ultimo carattere della riga precedente. Alla fine di una riga, la freccia destra non fa nulla, invece di passare al primo carattere della riga successiva.

C'è un'impostazione che posso modificare per ottenere il comportamento che mi aspetto?


4
Penso che la maggior parte degli utenti VIM raccomanderebbe di non usare i tasti freccia.
user12612

@ user12612 perché esattamente?
Luchonacho,

@luchonacho Penso che l'idea sia che gli utenti VIM seri sostengano che le tue dita non dovrebbero lasciare la riga iniziale della tastiera per navigare dove ti trovi nel testo.
no,

Risposte:


26

Dopo qualche altro google, ho scoperto che la risposta è usare l' whichwrapopzione.

Ho aggiunto la seguente riga al mio .vimrc:

set whichwrap+=<,>,[,]

Le opzioni <e >attivano l'impostazione desiderata per la modalità normale [e ]attivano l'impostazione desiderata per la modalità di inserimento.


1
(Perché questa non era l'impostazione predefinita sul mio sistema è un mistero)
no,

Ciò non sembra influenzare il comportamento delle h j k lchiavi.
Sebastián Grignoli,

Bene, ci sono altri valori per h e j. Vedi :help 'whichwrap'o vimhelp.appspot.com/options.txt.html#%27whichwrap%27 . K e I non si applicano davvero poiché stiamo parlando del comportamento sinistro / destro all'inizio / alla fine delle righe.
Adam Monsen,

9

Aggiungi questo al tuo .vimrc:

set whichwrap+=<,>,h,l,[,]

0

Questo è un comportamento predefinito: puoi sempre usare Home e End per saltare all'inizio e alla fine di una linea.


5
OP vuole cambiare il comportamento predefinito. Ecco perché ha chiesto qui in primo luogo.
Akira,

0

Puoi aggirare questo problema usando web che avvolgerà le linee.


Ma b ti prende il primo carattere dell'ultima parola della riga precedente. Non c'è davvero modo di spostare la freccia sinistra sull'ultimo carattere della riga precedente quando si trova al primo carattere di una riga?
no,

Sì, lo so, non è una vera soluzione.
hasen
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.