помістіть `.vimrc` у папку` .vim`


24

Чи можна помістити .vimrcв .vimпапку так, що мені потрібно синхронізувати лише всю папку, а не папку та файл на інших комп'ютерах?


2
Ви можете розглянути можливість зберігати всі свої dotfiles у сховищі, яке контролюється редакцією. Усі мої dotfiles зберігаються в каталозі, керованому git. Це репо-файло також містить сценарії для перевірки відмінностей між репо та встановленими точковими файлами та сценарій для копіювання точкових файлів у належні їм місця. Щоб налаштувати іншу машину, я в основному копіюю репо і запускаю сценарій встановлення.
Roland Smith

У мене така ж система, мій dotfile навіть збирається з безлічі окремих вихідних файлів, оскільки один файл став занадто довгим :-D
Martin Ueding

@RolandSmith Як налаштувати репо для своїх точкових файлів? Один із способів, що я можу придумати, - це запустити git init у своїй домашній папці та виключити все, окрім точкових файлів, які ви хочете відслідковувати.
adammendoza

@adammendoza Я не керую ними на місці. Я збираю все в дерево директорій і використовую скрипт під назвою розгортання для їх встановлення. Прочитайте опис на пов'язаній сторінці github, щоб побачити, як це працює.
Роланд Сміт

Існує інструмент під назвою VCSH, який дозволяє відстежувати їх у хлопця з домашнього каталогу, але зберігає репо десь в іншому місці.
Мартін Удінг

Відповіді:


28

Починаючи з Vim 7.4, ви також можете просто розмістити файл vimrcу $HOME/.vim/vimrcабо $HOME/vimfiles/vimrcдля Windows, і Vim знайде його автоматично.

Зауважте, це vimrcбез а. (крапка) або _ (підкреслення), як у традиційного файлу .vimrc / _vimrc.


Звучить добре. Якщо вам подобається, ви можете помістити свій код у задній план.
Мартін Удінг

7.4 зараз теж вийшов з бета-версії ... так що це, мабуть, найкращий спосіб зробити це зараз.
Бен

+1 для мого нового стандартного способу призначення цих файлів. Якщо я перебуваю на машині, яка не використовує 7.4, але старішу версію, я завжди можу зробити
симпосилання

@Ben: Що ж, пройде деякий час, поки у мене на моєму комп'ютері Ubuntu не залишиться 7.4 без будь-яких опор, тому це поки що залишиться таким.
Мартін Удінг

15

Я зберігаю свій .vimrc у .vim і позначаю його символом.

ln -s ~/.vim/.vimrc ~/.vimrc

У Windows я вважаю, що ви можете зробити те ж саме з mklink.


Я це роблю, а також є каталог .vimrc на github, що робить його дуже легким при створенні нового облікового запису. Про це описано в перших кроках цього vimcast
pmac72

5

Якщо ви створили псевдонім для vim, щоб вказати розташування .vimrc, як-от таким чином:

alias vim='vim -u ~/.vim/vimrc'

тоді ви можете покінчити з розділенням .vimrc.

АЛЕ

Це спричинить проблеми з іншими програмами, які взаємодіють з vim. Натискання "v" в "менше" не вийде, оскільки викликає vim через вміст змінної env-змінної. Я думаю, ви можете додати біт '-u ...' до змінної EDITOR. може спрацювати.

Для gvim ви використовуєте верхній регістр 'U', щоб вказати розташування файлу .gvimrc. Знову виникають проблеми, якщо ви не зміните ВСЕ можливе початкове місце розташування gvim у вихідних посиланнях менеджера вікон.

Загалом, я б запропонував скористатись пропозицією @ remyo, якщо Ви ОБОВ'ЯЗКОВО мати це в одному піддіреку.

Порівняно легко створити сценарій після витягу, який би відновив зв'язок між 'repo / .vimrc' та '~ / .vimrc'.

Удачі.

(ви можете перекомпілювати vim самостійно, вказавши нове місце за замовчуванням для файлу .vimrc.)


1
Гаразд, це звучить як створювати більше проблем, ніж вирішувати.
Мартін Удінг

2

Це саме те, що я роблю, з цього єдиного рядка в моєму ~/.vimrc:

runtime vimrc

2
Гаразд, але я все одно мав .vimrcтоді мати . Тоді я просто використовую той, який ви мені дали в іншому запитанні.
Мартін Удінг
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.