autocmd
Это специальные команды, запускаемые для определенных событий или для определенных типов файлов. Они часто используются для установки параметров или определения отображений, которые имеют смысл на одном языке, но не на других.
Поскольку autocmd
s широко используются для конкретных типов файлов, if has("autocmd")
это способ проверить, autocmd
доступна ли эта функция, и что мы можем идти дальше без особого риска.
Правильное расположение для хранения настроек, относящихся к типу файла ~/.vim/after/ftplugin/<filetype>.vim
, так что вы должны записать свои настройки в:
~/.vim/after/ftplugin/sml.vim
Этот файл поставляется Vim после установленного по умолчанию ftplugin, поэтому вы можете, например, изменить только значение tabstop
и сохранить другие настройки.
Однако, глядя на мою собственную среду выполнения Vim ( /usr/share/vim/vim73
), похоже, что нет ftplugin для sml
. Это означает, что ~/.vim/ftplugin/sml.vim
будет одинаково правильный выбор места. Выберите тот, который вам нравится.
В этом файле просто добавьте нужные вам строки:
setlocal tabstop=8 setlocal shiftwidth=8 setlocal expandtab
и вы настроены