Настройка vim как среды IDE C++
Я хочу настроить vim как C++ IDE, чтобы я мог делать ВСЮ работу из него.
Я использую эти плагины для vim:
- Clang complete-точное завершение
- nerdtree-просмотр файлов
- snipmate - вставка фрагментов
- AutoComplPop-omni-завершение
- buffergator-управление буфером
- vim-powerline-Ницца statusbar
- vundle-для управления плагинами
но мне не хватает таких вещей, как переход к определению и компиляция нескольких файлов в одном исполняемом виде проекта...
Я использую
nmap <F8> :w % <bar> :!g++ -W -Wall -Wextra -pedantic -std=c++11 % -o %:t:r<CR> <bar> :!./%:t:r<CR>
для компиляции текущего файла, но он не будет работать, если есть несколько файлов, которые создает один исполняемый файл.
Я знаю, что могу просто использовать eclipse, netbeans, code:: blocks и т. д., Но мне очень нравится vim... Если такая вещь, как Vim ide, не возможно, мне нужно изучить систему сборки GNU или какой-то другой метод?
любые советы приветствуются.
4 ответов
вам нужно создать makefile, который обрабатывает процесс сборки.
тогда из vim просто запустите :make
, Он будет запускать сборку и всплывать все ошибки в quickfix
Окно, в котором вы можете перемещаться и переходить к местам ошибок.
во-первых, чтобы перейти к определениям, вы можете попробовать это:
Я не тестировал его, поэтому не могу сказать, работает ли он.
теперь, чтобы построить несколько файловых проектов, вам лучше научиться использовать makefiles и automake. Эти ссылки могут помочь ты:
удачи.
Edit: на аналогичный вопрос был дан ответ по этой ссылке:https://stackoverflow.com/a/563992/1820837
"перейти к определению" уже есть, это <C-]>
с курсором на ключевое слово или :tag foo
в командной строке.
для этого, чтобы работать, вам нужно tags
файл, сгенерированный exuberant-ctags и сообщить Vim, где его найти. См.:help tags
и :help ctags
.
без , gd
переходит к определению ключевого слова под курсором, если это в том же файле. Но это не так полезно, как <C-]>
.
для "перейти к определению" я могу рекомендовать YouCompleteMe, плагин, который очень легко настроить с помощью vundle.
в противном случае есть тоже ctags, но я нахожу его менее полезным.
чтобы использовать vim в качестве IDE, я нахожу этой пост полезным.