Przyznanie, że nie obsługuje zapamiętywania, można uzyskać pewien rodzaj intellisense działającego na vimie. Zaletą jest to, że można tworzyć znaczniki zarówno z własnych, jak i zewnętrznych plików kodu źródłowego. W każdym razie STL potrzebuje specjalnego traktowania, które jest tutaj opisane.
Pobierz te vim-skrypty OmniCppComplete i SuperTab.
Install OmniCppComplete:
- Rozpakuj wtyczki do ~/.vim.
Install SuperTab:
- Otwórz plik w vim ($ vim supertab.vba).
- Źródło pliku (: tak%).
Zainstaluj ctags za pośrednictwem ulubionego menedżera pakietów. Pobierz i rozpakuj ten plik file i uruchom na nim ctagi.
$ ctags -R --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ tags_stl cpp_src
Spowoduje to wygenerowanie pliku ctags o nazwie "tags_stl" zawierającego znaczniki STL. Skopiuj go w dowolne miejsce. Dodaj następujące linie, które jeszcze nie istnieją do ~/.vimrc:
set tags+=~/path/to/your/tags_stl
filetype on
filetype plugin on
let OmniCpp_GlobalScopeSearch=1
let OmniCpp_NamespaceSearch=2
let OmniCpp_MayCompleteDot=1
let OmniCpp_MayCompleteArrow=1
let OmniCpp_MayCompleteScope=1
let OmniCpp_DisplayMode=1
let OmniCpp_DefaultNamespaces=["std"]
tym kończy oświadczenia STL na karcie „”, «::» a - nazw nawet jeśli”za pomocą«>»„” std; '. Nie rób tego, jeśli nienawidzisz magenty.
Używaj ich często, a Twoje palce będą je pamiętać. –
@cambr Posiadanie dobrej pamięci to jedno z podstawowych wymagań programisty, IMHO. –
Czego dokładnie tu szukasz? Jakiś rodzaj piosenki, którą możesz zaśpiewać, aby zapamiętać rzeczy? Uczysz się tego z doświadczeniem, tak jak wszystko inne. Lub użyj nowoczesnego IDE. – ryeguy