Vi & Vim

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


2
Używanie% w językach bez nawiasów klamrowych
W językach C i C mogę %przeskakiwać do odpowiedniego nawiasu klamrowego, na którym znajduje się kursor. To dobrze znana „sztuczka”. Ale na przykład w Ruby: def fun [1, 2].each do |n| end end To nie działa, ponieważ ruby ​​nie używa znaków w matchpairs( (:),{:},[:],<:>domyślnie ustawione na . Próbowałem to ustawić, …


2
ale linter + eslint: Przejdź do następnego błędu
Używam eslintz, aleaby pobrudzić mój kod JavaScript. Po edycji bloku kodu często mam kilka błędów do naprawienia. Naprawianie odbywa się poprzez przejście do następnej błędnej linii, odczytanie problemu z linijki i naprawienie. Gdybym mógł pominąć fazę nawigacji i użyć specjalnego powiązania klawiszy, aby przejść do lokalizacji następnego błędu - jego …

2
Jaka jest różnica między zestawem a: zestawem?
Szukałem na wtyczce vim-sensowne Tim Papieża i zauważyłem to w README ... Zobacz źródło wiarygodnej listy funkcji. (Nie martw się, to głównie :setpołączenia). Kiedy spojrzałem na źródło, :setwywołania są takie ... set autoindent Nie ma :przed set. Jestem prawie pewien, że faktycznie widziałem także :setw przykładach .vimrcs. Jaka jest różnica? …
17 vimscript  vimrc 

1
Dlaczego pojawia się błąd „E488: końcowe znaki” w tym niestandardowym poleceniu?
Mam taki, ~/.vimrcktóry zawiera tylko to: function! NewFile() let filename = input("Filename:") endfunction command NewFile :call NewFile()<cr> (oczywiście moja rzeczywistość .vimrcjest bardziej złożona, ale odtworzyłem ten mały przypadek testowy bez wtyczek itp.) Moim zamiarem jest napisanie funkcji, która obsługuje tworzenie nowego pliku zgodnie z szablonem. Niektóre elementy wejściowe będą pytane …

6
Jak mogę zmusić Vima do pokazania dokumentacji funkcji C / C ++?
Większość edytorów ma taką funkcję, że kiedy naciskasz niektóre klawisze, umieszczając kursor nad funkcją, wyświetla dokumentację tej funkcji wraz z liczbą i typem argumentów, które ta funkcja przyjmuje. Zastanawiałem się, czy Vim oferuje takie wsparcie. Na przykład, podczas kodowania w C, używam wbudowanej funkcji qsort(). Ponieważ nie jestem pewien co …

3
Zakładki do wcięcia, spacje do wyrównania
Próbuję zrobić automatyczne wcięcie vim za pomocą tabulatorów i wyrównanie do białych znaków, ale tak naprawdę wcięcie vim za pomocą tabulatorów i wypełnienie wyrównania tabulatorami + białymi spacjami. Vim to robi: (każdy blok to zakładka) { >--long a = 1, >-->--..b = 2, >-->--..c = 3; } Może to zrobić: …

1
Skąd mam poznać wersję łatki mojego vima?
Mam zainstalowany vim 7.4, ale nie jestem pewien, jaki był poziom łatek, kiedy go instalowałem. Jak mam sprawdzić? vim --version Daje VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Oct 15 2014 16:18:44) .... Ale nie podaje poziomu łaty lub pomniejszego numeru wersji.
17 version 

5
Jak przesunąć kursor na środek bieżącej linii?
Czy istnieje sposób na przesunięcie kursora na środek bieżącej linii? (środek linii tekstu - nie środek szerokości ekranu) Zastanawiałem się, czy istnieje skrót podobny do Mtego, który przesuwa kursor na środek ekranu. EDYCJA : Dodano wyjaśnienie w nawiasach


3
Czy mogę wystawić interaktywną powłokę w oknie Vima?
Wiem, że mogę :!lub mogę :r!wykonać polecenie zewnętrzne i opcjonalnie wstawić jego wynik do tekstu. Mogę nawet występować :!shi odradzam pocisk, który będzie żył, dopóki go nie opuszczę - ale gdy pocisk jest aktywny, Vim „śpi” i jest niedostępny. Muszę opuścić powłokę i odrodzić nową, jeśli chcę wrócić na chwilę …

3
Brak podświetlania składni w tmux
Po zainstalowaniu tmuxw iTerm 2. (build 3.0.13) Kiedy wykonać vimw tmux, podświetlanie składni wygląda następująco. Ale poza Tmuxem podświetlanie składni wygląda dobrze. Moje $TERMwewnętrzne i zewnętrzne tmux to xterm-256color. Dodałem również set -g default-terminal "screen-256color" w .tmux.confi dodano tę set t_Co=256 set t_AB=m set t_AF=m if &term =~ '256color' set …



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.