Czy mogę dodać zestaw słów do słownika autouzupełniania Vima?


11

W Vimie jestem świadomy używania CTRL-n i CTRL-p do autouzupełniania słów znalezionych w dokumencie. Jest to świetne do promowania stosowania metod opisowych i nazw zmiennych.

Chciałbym dodać zestaw słów do autouzupełniania, które często, ale nie znajdują się w pliku źródłowym, który aktualnie edytuję. Moje obecne rozwiązanie polega na dodaniu listy słów do komentarza na dole mojego pliku szablonu, ale wydaje mi się to trochę marnotrawstwem i kludgey w najlepszym wypadku.

Czy istnieje sposób na dodanie słów do autouzupełniania słownictwa Vima, które byłyby dostępne dla każdej sesji Vima?

Odpowiedzi:


10

Możesz użyć skrótów w swoim ~/.vimrcpliku dla zaledwie kilku słów:

: abbr supeuser superuser
: abbr autoc autouzupełnianie
: pytanie abbr que

Zostaną one automatycznie uzupełnione po naciśnięciu Spacelub Enter. Więc jeśli wpiszesz, quea następnie naciśniesz, w Spaceprzeciwnym Enterrazie słowo „pytanie” zostanie dla ciebie zakończone.

Jeśli dodajesz dużo i chcesz ten interfejs:

alternatywny tekst

Możesz korzystać ze słowników . Po prostu skonfiguruj plik ze słowem w każdej linii, a następnie w .vimrc dodaj taką linię:

set dictionary+=/home/john/dict.txt

Zamień ścieżkę na lokalizację pliku słownika. Następnie możesz użyć Ctrl+ xi Ctrl+, kaby wyświetlić sugestie. Ctrl+ ni Ctrl+, paby wybrać następny / poprzedni z wielu wyborów.


1
fantastyczny! zamierzam korzystać ze słowników!
— madh

To zadziałało! Nie dostaję jednak tak ładnie wyglądającego menu. Używam VIM 6.3.82, który nie jest najnowszą wersją.
— madh

Ach ... czy aktualizacja pomaga? Musisz nacisnąć sekwencję Ctrl-x, Ctrl-k, aby wyświetlić menu. Z przyjemnością pomogę :)
— John T

To jest właściwy sposób.
— o.

Właśnie sprawdziłem, czy to działa w VIM 7.2. Dzięki jeszcze raz!
— madh

2

„Źródła” do zwykłego autouzupełniania (otrzymanego z Ctrl+ N) pochodzą z completeopcji (patrz :h 'complete') Domyślnie jest

complete=.,w,b,u,t

co znaczy

  1. . skanuj bieżący bufor
  2. w skanuj bufory z innych okien
  3. b skanuj inne załadowane bufory znajdujące się na liście buforów
  4. u skanuj rozładowane bufory znajdujące się na liście buforów
  5. t zakończenie tagu

możesz dodać własny słownik za pomocą

set complete+=k~/.vim/keywords.txt

i dodaj słowa kluczowe po jednym w wierszu ~/.vim/keywords.txt. W ten sposób możesz uzyskać dostęp do uzupełnień bezpośrednio za pomocą Ctrl+ N(nie trzeba jawnie wywoływać uzupełniania słownika za pomocą Ctrl+ X, Ctrl+ K). Uważam, że jest to szczególnie przydatne do uzupełniania kodu, w którym mam wszystkie często używane nazwy funkcjikeywords.txt

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.