Использование a.vim для C ++ - PullRequest
7 голосов
/ 03 февраля 2010

Есть ли способ использовать плагин a.vim для переключения между файлами .h, .cxx и .txx? Или вы можете предложить другое решение? Идея заключается в автоматическом переключении с .h -> .txx -> .cxx на нажатие клавиши.

Большое спасибо вам обоим!

Ответы [ 3 ]

3 голосов
/ 03 февраля 2010

Найдите строки в a.vim, которые содержат AddAlternateExtensionMapping. Первый аргумент - это расширение текущего файла, второй - список расширений файла, на который вы хотите переключиться с помощью :A. Они перечислены в порядке предпочтения . В вашем случае вам придется настроить его так, чтобы он работал в цикле.

call <SID>AddAlternateExtensionMapping('h', 'txx,cxx')
call <SID>AddAlternateExtensionMapping('txx', 'cxx,h')
call <SID>AddAlternateExtensionMapping('cxx', 'h,txx')

Так что теперь вы переходите от .h к .txx, если он существует, или .cxx, если он не существует.

1 голос
/ 03 февраля 2010

IIRC с последними версиями alternate , есть опция, которая указывает предпочтительные расширения для использования. Вы смотрели в строке плагинов doc / first comment?

0 голосов
/ 18 июня 2013

Достойная альтернатива a.vim - altr .

altr - переключиться на отсутствующий файл без взаимодействия

По умолчанию этот плагин позволяет переключаться между «альтернативными» файлами сценариев Vim, файлами C, C ++ и Objective-C и файлами ASP.NET, но вы также можете легко добавлять свои собственные альтернативы.

После установки настройте отображения, которые вы предпочитаете,

  • либо a.vim , используя команду Ex

    command! A call altr#forward()
    
  • или с использованием отображений

    nmap <Leader>a <Plug>(altr-forward)
    nmap <Leader>A <Plug>(altr-back)
    
...