Vi & Vim

Pytania i odpowiedzi dla osób korzystających z rodzin edytorów tekstu vi i Vim


5
Jak wyszukać wzorzec w niektórych regionach składni?
Używam vima do edycji dokumentów lateksowych. Często będę chciał zmienić nazwę zmiennej na coś innego. Jednak szukanie nazwy zmiennej jest trochę denerwujące. Chciałbym wyszukiwać tylko w „strefach matematycznych” zdefiniowanych w pliku składniowym tex. Czy istnieje prosty sposób na ograniczenie wyszukiwania do określonego regionu składni?
10 search 

1
usuń linie, które pasują do wzorca z danej linii na końcu pliku
Jeśli mam plik z dużą ilością komentarzy i chcę usunąć wszystkie komentarze z powiedzmy wiersza 3 na końcu pliku, jaki jest najlepszy sposób, aby to zrobić? Utknąłem, ponieważ to, co pierwszy raz spróbowałem, nie robi dokładnie tego, czego chcę: :3,$/^#/d Zamiast szukać wzoru i usuwania linii z nim od 3 …
10 ex-mode 

1
Dlaczego niestandardowe podświetlenia w moim vimrc są usuwane lub resetowane do domyślnych?
Chciałbym podkreślić (część) moją linię statusu %1*, na przykład: set statusline=%1*%f%0* highlight User1 ctermbg=0 ctermfg=10 cterm=bold Jednak zawsze pojawia się to jako „puste” (domyślne kolory terminala): Jeśli piszę :highlight User1, pokazuje się User1 xxx cleared, a jeśli piszę :highlight User1 ctermbg=0 ctermfg=10 cterm=boldw oknie poleceń, wydaje się, że działa. Jak …



2
Jak pracować w trybie wiersza poleceń w ten sposób?
Czy istnieje sposób na interakcję z trybem wiersza poleceń, zawsze pozostając w pozycji wyjściowej? W szczególności następujące dwie czynności są uciążliwe i wymagają przesunięcia palców w stronę klawiszy strzałek, a czasem nawet myszy. Poruszanie się: czy istnieje sposób poruszania się w tę iz powrotem w trybie wiersza poleceń, pozostając w …


3
Jak napisać fold-expr?
Przeczytałem stronę pomocy dotyczącą fold-expr ( :h fold-expr), ale nie wyjaśniło to, jakiej składni użyto w wyrażeniu. Były cztery przykłady: :set foldexpr=getline(v:lnum)[0]==\"\\t\" :set foldexpr=MyFoldLevel(v:lnum) :set foldexpr=getline(v:lnum)=~'^\\s*$'&&getline(v:lnum+1)=~'\\S'?'<1':1 :set foldexpr=getline(v:lnum-1)=~'^\\s*$'&&getline(v:lnum)=~'\\S'?'>1':1 Zrozumiałem, że v:lnumjest to linia, która wymaga poziomu wcięcia, a to wyrażenie drugie jest wywołaniem funkcji. co z wyrażeniami 1,3 i 4? …
10 folding 




2
Zapisz ostatnią akcję (.) W makrze
Przypadek użycia Jestem w trybie normalnym. Nie myślałem wprost o nagraniu makra, ale dokonuję zmiany jednego polecenia. Teraz mogę powtórzyć tę akcję, używając kropki. Teraz zdaję sobie sprawę, że warto zapisać w makrze, aby użyć później, zamiast wpisywać całe polecenie za każdym razem. Mogę albo zająć się wszystkimi zmianami, które …


3
Skąd mam wiedzieć, że jestem w powłoce z komendy vi: sh?
W vi mogę uzyskać terminal powłoki z :shpoleceniem. Później mogę wrócić do vi przez exitpowłokę. Ale jeśli długo korzystałem z terminalu powłoki i zapomniałem, czy exitcoś zamknę, czy zwrócę vi. Czy jest jakiś sposób, aby sprawdzić, czy wrócę do vi? jobslub fgnie działa.

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.