Чи можна і корисно розділити vimrc?


22

Відповідно до заголовка, чи можна розділити vimrcфайл на кілька підфайлів? Зберігати окремі файли для груп налаштувань, які стосуються однієї речі ? Ця річ може бути що завгодно, будь-який вид певної користувачем групи параметрів. Наприклад,

[оновлено]

  • зберегти всі налаштування Python (-mode) у vimrc.python-mode?
  • зберегти налаштування для утиліти Calendar для vim vimrc.calendar?
  • зберегти налаштування кольору в окремому файлі?
  • зберігати відображення (також ярлики?) в окремому файлі?

3
Зворотний бік: групування на основі розташування замість філейтипу. Дивіться vi.stackexchange.com/q/77/205
муру

Може відповідь, яку я шукаю, десь серед рядків у vi.stackexchange.com/a/3152/1963 ? Вихідні файли, які містять потрібні мені настройки для конкретних речей?
Нікос Олександріс

Видалено filetypeтег - наразі можливо? Це змушує читачів думати, що питання стосується конкретних типів файлів, що не так.
Нікос Олександріс

здавалося доречним з огляду на оригінальне питання.
муру

@muru Так, ніяких турбот. Це ми можемо також додати пізніше. Дякую.
Нікос Олександріс

Відповіді:


22

Так, це можливо і корисно і навіть вважається найкращою практикою. У мовленні Vim вони називаються плагінами філейтипу. А Vim навіть постачається з багатьма плагінами файлів (а також файлами з відступами та синтаксисами) для кількох мов.

Вам потрібно ввімкнути це .vimrcтак:

filetype plugin on

потім помістіть ваші конкретні налаштування файлів у файл (створюючи неіснуючі каталоги), що викликається ~/.vim/ftplugin/python.vimналаштуваннями python. Це також висвітлено у FAQ .

Оновлення (13.11.2015) Існує також інша можливість (якщо ви не хочете використовувати спеціальні опції для файлів): Якщо ви хочете згрупувати деякі параметри до певного файлу, ви можете скористатися командою sourceабо runtime. Наприклад, мій .vimrcмістить цей рядок:

" This script contains plugin specific settings
source ~/.vim/plugins.vim
" This script contains mappings
source ~/.vim/mapping.vim
" additional helper functions:
source ~/.vim/functions.vim
" For abbreviations read in the following file:
source ~/.vim/abbrev.vim

Приємно, я вже маю це! Але ніколи насправді пильного погляду не мали. Отже, я накачав vimrc. А як щодо налаштувань, які не стосуються певного типу файлів?
Нікос Олександріс

2
Вам може знадобитися :he autoloadі :he source? Перевірте також цю відповідь stackoverflow.com/a/805242/1821490
Алекс Кролл

@AlexKroll не для плагінів файлів.
Крістіан Брабандт

@ChristianBrabandt за все, що ви хочете. Ви можете джерелом будь-якого сценарію в .vimrc. Просто поставте source my-funy-useful-script.vimрядок у свій, .vimrcа Vim завантажує його після перезавантаження (або :so $MYVIMRCкоманди). Також :he writing-library-scriptsможе допомогти вам.
Алекс Кролл

@AlexKroll Я думаю, що це ближче до відповіді, яку я шукаю. Ви б не хотіли відредагувати поточну відповідь та розширити її? Або зробити окрему відповідь? Я шукаю не лише конкретні типи файлів. Я сподіваюся, що це ясно в моєму питанні.
Нікос Олександріс

5

Цілком можливо робити те, що ти хочеш. Деякі з інших розповіли про плагіни файлів, які добре працюють на це.

Але ви можете створити і .vim-файл у своєму vimrc, щоб ви могли розділити .vimrc на стільки файлів, скільки хочете. Просто створіть файл, і він запрацює. Як приклад, ось мої (напевно, не дуже корисні) точкові файли. https://github.com/dspecht/dotfiles/


Чи можете ви надати приклад того, що ви зробили у своїй відповіді і чому це працює?
EvergreenTree
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.