Vi & Vim

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

1
Użyj backspace, aby zmodyfikować bieżące polecenie w trybie normalnym?
Czasami podczas wprowadzania polecenia w trybie normalnym możesz napisać literówkę, na przykład jeśli zamierzam pisać 10dk, mogę przypadkowo zacząć pisać 19d. Ponieważ polecenie nie zostało jeszcze zakończone / zatwierdzone, czy można usunąć niepoprawne klucze za pomocą backspace, jako takiego: 19d<backspace><backspace>0dkzamiast naciskać klawisz Escape i ponowić polecenie? Pytanie poboczne: Czy istnieje …

2
Edytuj katalog w Vimie
Czy można edytować katalog w Vimie? (Niektóre polecenia działają dla katalogów). Chcę wiedzieć, jakie operacje można wykonać w katalogu w Vimie. Vim może otwierać katalogi do edycji, wierzę, że będzie miał także polecenia do pracy. Ale zwykłe polecenia zachowują się inaczej dla katalogów. Na przykład, naciskając Ii wpisując nazwę pliku …

1
Wizualnie wybierz bieżący wynik wyszukiwania
Mam hlsearchustawione, ale czasami kołysze mnie do myślenia t kapelusz mam termin wyszukiwania wizualnie zaznaczone, a może po prostu wciskamy cgo zmienić. Wyszukiwany termin może nie być łatwą liczbą liter, słów, a nawet wierszy - a zresztą nie chcę liczyć. Czy istnieje sposób vh(lub ch), powiedzmy, gdzie hdziała, dopóki nie …


1
Zmień kształt kursora w trybie oczekiwania operatora
Mój kursor w Gvim: Mój kursor w Gvimie po naciśnięciu d: Czy jest jakiś sposób na zmianę kursora w terminalu Vim w trybie oczekiwania operatora? Nie musi wyglądać dokładnie jak zrzuty ekranu. Odbywa się to o:hor50-Cursorw guicursorGvim. Jedyne trzy opcje, które widzę dla Vima to: t_SI start insert mode (bar …

1
Inteligentne uzupełnianie słów w środku słowa
Rozważ plik z następującymi dwoma wierszami: someLongFunction someFunction Kiedy jestem w trybie wstawiania w środku drugiego słowa some|Function i naciskam Ctrl-n, rozumiem someLongFunctionFunction Czy istnieje sposób na skonfigurowanie Vima, aby zamiast tego uzyskać następujące „inteligentne” zakończenie? someLongFunction

1
Niepoprawne kodowanie podczas wywoływania powłoki
Eksperymentowałem ze schematem DOT i próbowałem wykonać następujące czynności: :! dot -Tpng -oFab.png % óWystąpił błąd, ponieważ moja nazwa pliku ma znak specjalny („ ” w „Fabricación”): C:\windows\system32\cmd.exe /c ( dot -Tpng -oFab.png Fabricaci├│n.gv) Error: dot: can't open Fabricaci├│n.gv shell returned 2 Hit any key to close this window... Jak …


1
Dlaczego ponowne mapowanie <Esc> powoduje przeskok kursora?
W .vimrc: inoremap ii &lt;esc&gt; " ii to go back into command mode Problem polega na tym ii, że kursor przeskakuje o 35 kolumn w prawo. Jedyna inna linia, która wpływa na Esc: nnoremap &lt;esc&gt;&lt;esc&gt; :noh&lt;return&gt;&lt;esc&gt; Próbowałem to skomentować, nie pomaga. Pełna.vimrc : set nocompatible filetype off " Vundle --------------------------------------------------------------------- …

2
Zastępowanie wyrażeń regularnych mieszanymi przypadkami, w Vim
Często spotykam się z sytuacją, w której mam plik zawierający wiele różnych przypadków. Na przykład, CamelCase and camelCase Poszukuję zamiany wyrażeń regularnych Vima do produkcji, AnotherCase and anotherCase Teraz robię to w dwóch krokach po wizualnym wybraniu linii, :s/CamelCase/AnotherCase/g :s/camelCase/anotherCase/g Czy jest to możliwe w jednym kroku zastępowania, czy powinienem …


2
Rozumiem „[[”, „]]”, „[]”, „] [”
Trudno mi zrozumieć te ruchy obiektów tekstowych: *]]* ]] [count] sections forward or to the next '{' in the first column. When used after an operator, then also stops below a '}' in the first column. |exclusive| Note that |exclusive-linewise| often applies. *][* ][ [count] sections forward or to the …

3
Jak dodać tekst szkieletu do nowych plików vim?
Używam Vima do pisania C ++ i mam sporo #include&lt;&gt;instrukcji, komentarzy itp., Które muszę dołączyć do każdego nowego pliku, który tworzę. dodałem autocmd BufNewFile *.cpp r C:\(full file path of skeleton text file) do mojego vimrc, ponieważ słyszałem, że tworzy bufor z tekstem, którego potrzebuję. Jak mogę dodać ten tekst …


5
Jak zamienić zawartość między dwoma wzorami z pliku?
Mam następujący format pliku: &lt;common&gt; fitnes=0 genetic=1 method=0 &lt;/common&gt; &lt;inputs&gt; foo=bar bar=foo &lt;/inputs&gt; &lt;limits&gt; balance=200.00 &lt;/limits&gt; i chciałbym usunąć wszystko, co jest pomiędzy &lt;inputs&gt;i &lt;/inputs&gt;(z wyjątkiem samodzielnego wzorca) i zastąpić go treścią z innego pliku (np foo.txt.). Innymi słowy wiersze z foo=bari bar=foozostaną zastąpione inną treścią. Prawdopodobnie może być podobny …

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.