
Я уже некоторое время использую Vim в качестве текстового редактора, и мне кажется, что я иду долгим путем, чтобы что-то сделать. Я использую ctags для разметки своей кодовой базы для навигации и grep (хотя и неэффективно), чтобы найти, где используются определенные методы. Но у меня есть чувство, что есть некоторые очень полезные инструменты, о которых я не знаю, которые могли бы сделать меня более продуктивным.
Какой лучший программный стек я мог бы использовать для общего программирования, который дополнял бы Vim? Как вы перемещаетесь по кодовой базе, запускаете make, отправляете изменения в систему управления исходным кодом и т. д.? У вас открыта вторая консоль рядом с Vim?
решение1
Отличная особенностьвимявляется простота интеграции с существующими командами оболочки. Некоторые из наиболее полезных внешних инструментов — это те, которые включены вcoreutilsи другие простые инструменты для работы с текстом. Например, мы можем получить количество строк в файле с помощью:
:! wc -l %
или количество слов:
:! wc -w %
Любая команда, которая работает в оболочке, будет работать и здесь. Это можно эффективно объединить с командой :read
( :r
), чтобы поместить вывод команды в файл. Например:
:r !wc -l %
Помещает количество строк слов в редактируемый вами файл.
Еще одно преимущество этого — замена текста, который вы в данный момент редактируете, на вывод одной из этих команд. Например, вы можете отформатировать весь файл с помощьюpar
выполнив команду:
:% !par
решение2
Я считаю NERDtree незаменимым для навигации по моей кодовой базе. Наряду с этим, вложение некоторого времени в то, чтобы стать опытным в перемещении по буферам/окнам, действительно стоит того.
решение3
На каком бы языке вы ни говорили, вам понадобится функция под названиемctagsчто позволяет просматривать исходные определения. Для этого требуется внешний инструмент для генерации файлов TAGS, которые используются VIM для обнаружения местоположений различных определений кода в проекте.
Получитьбуйные ctagsинструмент, он работает на многих языках и очень прост в использовании.
из ВИМ:help ctags
ctagsсоздаст индекс всех идентификаторов в исходном дереве. Затем вы можете использовать команды тегов для навигации по исходному дереву. см. :help tag-commands
. Самый простой — поместить курсор на ключевое слово и нажать CTRL- ]. Чтобы вернуться туда, откуда вы пришли, нажмите CTRL-T
Помимо этого, вам, возможно, будет интересно ознакомиться с некоторыми советами и улучшениями VIM, которые мы обсудили.здесь, это очень всестороннее обсуждение некоторых вещей, которые можно сделать, чтобы улучшить опыт пользователя.
решение4
Есть отличный плагин для VIM, который проверяет синтаксис.Синтастический. Также доступно множество других инструментов для управления файлами, сборки и т. д. Зайдите на IRC #vim на freenode.net, там много полезных людей.