2013-11-07 8 views
1

Вот мой обязывать:Источник более одного файла с keybind команды в Vim

nnoremap <Leader>L :so $MYVIMRC<CR>:so ~/.vim/after/plugin/*.vim<CR> 

Он работал большой прямо, пока я не добавил второй файл конфигурации в папке плагина. Теперь я получаю E77: слишком много имен файлов из команды :so[urce].

Я нашел this, что на самом деле не делает очевидным, как это сделать из командной строки, как в keybind.

Как написать цикл в привязке клавиш? Должна ли быть объявлена ​​функция?

P.S. причина, по которой у меня даже есть сценарии в .vim/after/plugin/, состоит в том, что для некоторых плагинов есть определенные команды конфигурации, которые должны запускаться после их инициализации, а скрипты загрузки плагина запускаются после vimrc. (поэтому они не могут просто пойти в vimrc).

+0

Мне любопытно: какие плагины сделают это необходимым? Это звучит так же плохо, как плохой дизайн. – romainl

+0

В основном это плагины, которые устанавливают стили выделения, которые я предпочитаю переопределять. Один плагин, с которым я не могу жить, - это HiCursorWords, и у меня есть тонкий стиль bgcolor и подчеркивания для него. Вероятно, у меня есть способ использовать ссылки, чтобы установить их таким образом, чтобы их не растоптали через vimrc, но я не могу беспокоиться. Он довольно чистый и работает хорошо, и я могу добавить эти скрипты 'after/plugin/*. Vim' в мое git-репо, чтобы я мог легко отслеживать конфигурацию, поэтому я доволен этим. –

+0

Uuurgh, это функция, которую я выключаю каждый раз, когда я устанавливаю IDE. Не забудьте отметить ответ, если он решит вашу проблему. – romainl

ответ

2

:source принимает только один аргумент, но вы можете использовать :runtime команду:

runtime! after/plugin/*.vim 

, который почти точно второй пример, приведенный под :help :runtime.

0

Вы также можете объединить команды, и это не так приятно, как ответ romainl, но вы можете прорваться в терминал и запустить там источник.

nnoremap <Leader>L :so $MYVIMRC|:!source `find ~/.vim/after/plugin/ -name "*.vim"`<CR> 
Смежные вопросы