Що таке vim "каталог часу виконання"?


21

Я намагаюся почати з таких речей, як FuzzyFinder , але я застряг у тому місці, де написано:

ВСТАНОВКА

Помістіть усі файли у каталог виконання. Якщо у вас є zip-файл, витягніть його в каталог виконання.

Файли слід розмістити так:

your_runtime_directory/plugin/fuf.vim

...

Що таке "каталог часу виконання"? Що йде там? Де моє?

Відповіді:


17

Якщо припустити, що ви використовуєте деякий смак Unix, ваш особистий каталог часу виконання ~ / .vim. Тут ви повинні помістити будь-який плагін, який використовується тільки ви. Якщо ви хочете, щоб інші користувачі мали змогу отримати доступ до плагіна, покладіть його у другий каталог опції 'runtimepath', яка зазвичай є $ VIM / vimfiles. Не слід встановлювати додатки у каталог $ VIMRUNTIME. Цей каталог призначений для плагінів, що поширюються з Vim. Якщо ви помістите інші плагіни в цей каталог або зміните файли в цьому каталозі, ви, ймовірно, втратите ці зміни, коли оновите встановлення Vim.

Побачити

:help 'rtp'
:help $VIMRUNTIME

для отримання додаткової інформації про це.


Власне, це, безумовно, більш повна відповідь.
Андрес Яан Так

1
Якщо ОП розглядає можливість встановлення плагінів типу FuzzyFinder, можливо, варто також згадати менеджерів плагінів, таких як Vundle або (старіший) Pathogen - чим раніше ви зможете розпочати роботу з диспетчером плагінів, тим краще, оскільки це раціоналізує структуру підпапок за замовчуванням у ~ / .вім /.
JP

9

Насправді існує декілька "каталогів виконання". Використовуйте :set runtimepath?всередині Vim, щоб переглянути потрібні каталоги.

Будь-яка з них повинна працювати, але, мабуть, найпростішим місцем для використання буде каталог користувачів ~/.vim/, який повинен бути першим у вашому Vim runtimepath.

mkdir ~/.vim; (cd ~/.vim && unzip /path/to/vim-fuzzyfinder.zip)

Якщо ви хочете встановити його для всіх користувачів в системі, то спробуйте один із пізніших каталогів у списку (один з яких - значення, характерне для версії, яке також є $VIMRUNTIMEзмінною Vim ).


Це саме те, що мені було потрібно! Дивовижно.
Андрес Яан Так

7

Введіть :!echo $VIMRUNTIMEvim vim, щоб дізнатися.


Пустий? Так що я ... не маю такого?
Андрес Яан Так

@Andres Jaan Tack: Я здогадуюсь, що ти керував командою у своїй оболонці. Вам потрібно видати цю команду в дворядковому рядку у Vim.
Кріс Джонсен

2
це буде працювати краще, !оскільки змінна середовища не буде існувати в Windows
Janus Troelsen

@JanusTroelsen правильний, у Windows використовувати :echo $VIMRUNTIMEбез !.
Сабунку

2

Пізно до гри тут ... згідно док

echo VIMRUNTIME=`vim -e -T dumb --cmd 'exe "set t_cm=\<C-M>"|echo $VIMRUNTIME|quit' | tr -d '\015' `
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.