Как мне «сделать исходный код» в моем файле .vimrc?


99

В последнее время я работал над расширением своего vim-foo, и я наткнулся на несколько плагинов ( например, autotag.vim ), которые требуют, чтобы они были "источником" в моем файле .vimrc. Что именно это означает и как мне это сделать?

Ответы:


119

Источник файла - это его «выполнение». По сути, каждая строка файла считается командой. Его поиск аналогичен вводу каждой команды по порядку. Вы используете команду :source(обычно сокращенно :so).

Итак, если вы источник myStuff.vim

:so myStuff.vim

и если myStuff.vimсодержал эти строки

set xx iI just intersted this<C-]>
set yy bbbb4dw

Это как если бы вы ввели эти команды в Vim.

:set xx iI just intersted this<C-]>
:set yy bbbb4dw

По умолчанию используется только файл .vimrc( _vimrcв Windows), так что в нем вы можете хранить все команды, которые вы используете для настройки Vim каждый раз.

Что интересно, так это то, что, поскольку исходный файл - это просто серия команд, а источник - это команда, вы можете исходить из файлов исходных файлов. Таким образом, плагины, которые вы используете каждый раз, могут быть получены при запуске Vim, добавив строку в свой .vimrcподобный

 so myPlugin.vim

2
Что so!делать? Я запустил его, потому что думал, что он будет принудительно использовать мой ресурс, .vimrcи он начал просматривать файл, который я редактировал (мой .vimrc), и странным образом делал отступы, и происходили разные странные вещи.
Alexej Magura

2
Он выполняет файлы в «нормальном» режиме (то есть, что бы произошло, если бы вы не добавили «:» впереди).
Эндрю Майнер

44

Файлы в вашем каталоге .vim / plugin загружаются (загружаются) автоматически.


7
Кроме того, их имя файла должно заканчиваться на .vim
flawyte

да, но только один раз за запуск, верно? это когда вы запускаете терминал / PowerShell или когда вы используете команду vim для редактирования какого-либо файла?
3pitt

@ 3pitt AFAIK, это каждый раз, когда запускается команда vim.
Фаддей Маркл,

12

Всегда есть команда : source file . Я обычно пишу, .vimrcчто содержит пользовательские команды и то, что не для консольного приложения, а затем, .gvimrcчто содержит дополнительные преимущества, подходящие для оконной версии. Я .gvimrcначинаю с того, source $HOME/.vimrcчто собираю все из консольной версии, прежде чем добавлять что-то новое.


Мои версии vim, по крайней мере, все время исходники .vimrc. Вы уверены, что вам нужен источник .vimrc?
Dav Clark

@DavClark: похоже, ты прав в этом. Я занимаюсь этим давно и никогда не задумывался об этом дважды. В файле справки определенно сказано, что в этом нет необходимости ... хммм.
D.Shawley 06

6

Обычно существует два файла vimrc, один - _vimrc, а другой - _gvimrc (в первом - файлы для vim, а во втором - для gvim - графические элементы) - хотя большинство людей, которых я знаю, просто помещают все в _vimrc.

Хорошая практика - хранить все ваши дополнительные файлы (плагины, цветовые схемы, фрагменты ...) в отдельном (вашем собственном) каталоге vimfiles (который вы можете взять с собой).

Если вы сделаете

:help vimfiles

vim сообщит, что ваш каталог vimfiles должен быть расположен. Это несколько зависит от платформы (win, unix). В Windows все обычно находится в папке пользователя (документы и настройки, затем пользователь ...). В каталоге vimfiles есть несколько подкаталогов. Среди них есть подкаталог plugin. Плагины, помещенные в этот каталог, будут загружены автоматически (также плагины, помещенные в подкаталоги «плагина»). Если вы не хотите загружать его автоматически, просто поместите его в свои "vimfiles" или в другой каталог, и

:so plugin_name.vim (with the appropriate path)
(you can use the $vim, $vimfiles, and $home as shortcuts when defining path to plugin)
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.