vim powtórz znajdź następny znak 'x'


123

Często nawiguję w vimie, f xaby znaleźć następne wystąpienie znaku „x”, ale przeoczam, że istnieje słowo (lub więcej słów) zawierające „x” między słowem, które chcę edytować, a początkową pozycją kursora.

Muszę więc jeszcze f xraz, co jest trochę denerwujące, ponieważ jest ten fajny przycisk ., który powtarza ostatnie polecenie. Czy jest więc sposób, aby powtórzyć f xza jednym naciśnięciem przycisku.

Odpowiedzi:


240

Polecenie do powtórzenia fto ;(średnik); ,(przecinek) odwraca kierunek wyszukiwania.


2
Czy jest jakiś użyteczny powód, dla którego nie możesz tego użyć .? To było polecenie, którego się spodziewałem.
Daniel Kaplan

4
@DanielKaplan Sensowne jest mapowanie nowości, tj. Poszukiwania znaku ( fi ;), na inny znak niż powtórzenie edit ( .). Pozwala to na szybkie wyszukiwanie i zmiany w wynikach wyszukiwania. Jeśli chcesz zamienić niektóre znaki +w linii, *możesz zrobić coś takiego (pomijając niektóre znaki i zastępując inne):f+r*;.;;.;.;;;.
Marcus Krahl.

2
Czy istnieje sposób na zmianę mapowania tych poleceń? Wiele osób używa ,roli lidera.
rk1

@ rk1 Zmień lidera za pomocą: let mapleader = "" (jeśli chcesz spację)

@DrEval Jasne, ale chcę zachować mojego lidera jako ,i nadal mieć wyszukiwanie wsteczne. W każdym razie, teraz jestem szczęśliwym użytkownikiem vim-easymotion.
rk1

18

Minęło trochę czasu, odkąd zadałem to pytanie - obecnie korzystam z vim-easymotion , co sprawia, że ​​potrzeba tego jest ;prawie niepotrzebna.

Ta wtyczka umożliwia bezpośrednie przejście do określonej litery - uruchomienie wtyczki powoduje, że wszystkie litery są szare z wyjątkiem wszystkich „x” na ekranie - a te są zastępowane czerwonymi literami, które można nacisnąć, aby przejść bezpośrednio do niej.

easymotion w użyciu

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.