poruszaj się między wierszami pierwszą literą w vimie

2

czy jest jakiś sposób na przemieszczanie się między wierszami przez pierwszą literę w vimie, jak zwykle robiliśmy, używając „f + litera” w bieżącym wierszu, przykład:

 din          (tuple_hash_ack_data),       
 wr_en        (tuple_hash_ack_wr),        
 dout         (ack_fifo_data),       
 rd_en        (ack_fifo_rd),       
 empty        (ack_fifo_empty),        
 data_count   (tuple_hash_count),      
 almost_full  (tuple_hash_almost_full)  

Początkowo kursor zatrzymuje się w pierwszym wierszu:

   din          (tuple_hash_ack_data),  

Chcę przejść do linii:

   almost_full  (tuple_hash_almost_full)   

Chcę wpisać coś takiego jak „fa”, czy to możliwe?


źródło
2
Co jest nie tak z /^a?
adamdunson
Nie jestem pewien, czy jest to odpowiedź czy komentarz, więc po prostu to tutaj umieściłem. Sugeruję wypróbowanie wtyczki easyMotion. Dzięki tej wtyczce możesz bardzo szybko przejść do dowolnej litery / znaku lub słowa na ekranie.

Odpowiedzi:

6

/^aprzeniesie Cię do następnego wiersza zaczynającego się od „a” - w składni wyrażeń regularnych ^dopasowuje początek wiersza, więc /^aszuka początku wiersza, po którym bezpośrednio następuje znak.

Marius
źródło
1

Szczególnie w przypadku :set relativenumbernawigacji do początku pobliskiej linii można dokonać za pomocą [count]_(w dół) i [count]-(w górę). Zauważ, że polecenia takie jak ji kmogą być również poprzedzone znakiem a [count].

Ingo Karkat
źródło
0

Jeśli chodzi o poruszanie się w oknie, powinieneś dać wtyczce precyzyjną szansę. Używam go z mapowaniami:

nnoremap ,f :call PreciseJumpF(-1, -1, 0)<CR>
vnoremap ,f <ESC>:call PreciseJumpF(-1, -1, 1)<CR>
onoremap ,f :call PreciseJumpF(-1, -1, 0)<CR>

więc piszę ,fpo znaku, a wszystkie wystąpienia tego znaku są podświetlone. Po prostu wpisuję odpowiedni znak i kursor tam skacze.

skeept
źródło