Я дуже гортаю файли Ruby та Markdown. Чи є спосіб, який я можу set spell
автоматично встановити, коли я відкриваю *.md
файл, але не тоді, коли я відкриваю файл *.rb
?
Я дуже гортаю файли Ruby та Markdown. Чи є спосіб, який я можу set spell
автоматично встановити, коли я відкриваю *.md
файл, але не тоді, коли я відкриваю файл *.rb
?
Відповіді:
Найкращий спосіб встановити варіант для певного типу файлів - використовувати автокоманди.
Тут ви можете додати щось подібне у своєму .vimrc
:
autocmd FileType markdown setlocal spell
Цей рядок запустить команду, setlocal spell
коли тип файлу буфера встановлений як розмітка. Ви також можете використовувати автокоманду на основі розширення редагованого файлу чимось на зразок:
autocmd BufRead,BufNewFile *.md setlocal spell
Для отримання додаткової інформації ви повинні прочитати :h :autocmd
та :h autocmd-events
.
EDIT Використання автокоманд - це не найкращий спосіб зробити це.
По-перше, якщо ви використовуєте автокоманди, не забудьте поставити їх у augroup
:
augroup markdownSpell
autocmd!
autocmd FileType markdown setlocal spell
autocmd BufRead,BufNewFile *.md setlocal spell
augroup END
Таким чином, якщо ви будете джерелом свого vimrc кілька разів, автокоманди не складуться і не будуть виконані кілька разів.
Тепер кращим рішенням буде використання ftplugin. Для цього потрібно створити файл ~/.vim/after/ftplugin/markdown.vim
.
Цей файл буде розміщено, коли встановлено тип файлу буфера markdown
і після ftplugin
якого буде встановлено Vim за замовчуванням (таким чином ви не втратите вже існуючі налаштування).
У цей файл ви можете просто додати:
setlocal spell
Тут потрібно використовувати setlocal
замість того, set
щоб переконатися, що налаштування стосуватимуться лише поточного буфера, а не для всіх буферів.
Деякі цікаві довідкові теми:
autocmd FileType latex,tex,md,markdown setlocal spell