Я хочу установить переменную $VIMFILES в моем файле vimrc чтобы определить не зависящим от платформы путь к файлу моего vimfiles (а-ля Как мне получить домашний каталог Vim?). Это должно быть тривиально (на самом деле, я думаю, что это должна быть встроенная переменная), но я не могу найти надежный способ сделать это. Метод, использующий плагин, требует, чтобы вы поместили любой код, который фактически использует эту переменную, в ваш каталог after , что (на мой взгляд) делает плагин практически бесполезным. Метод, использующий if has определить операционную систему и установить переменную вручную, кажется нелепо хрупким и утомительным.

Поэтому я хотел бы просто предположить, что первым компонентом значения по умолчанию параметра runtimepath является каталог vimfiles я хочу.

Тем не менее, я понятия не имею, как извлечь первый компонент из rtp . Это, опять же, кажется, что это должно быть тривиально, но &rtp[0] расширяется до первого символа пути времени выполнения, потому что очевидно, что &rtp на самом деле является строкой, хотя это явно семантически список (!!?).

Итак ... как мне получить первый компонент runtimepath? Есть лучший способ сделать это?

1 ответ1

0

Я думаю, что у меня это есть:

set rtp&
let $VIMFILES=split(&rtp,",")[0]

Все еще кажется чрезмерно ручным, но это не так страшно, как я боялся.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .