#vim: установить только вид работы

Я имею .zsh-theme файлы (из oh-my-zsh), но они не выделены синтаксисом. Я смог сделать это довольно легко с

autocmd BufEnter *.zsh-theme set filetype=sh

Однако, прежде чем я это сделал, я попытался добавить мета-комментарий VIM для конкретного файла

#vim: set filetype=sh

Дополнение # видимо заставляет vim обнаруживать файл как conf файл, но кажется, что эта команда игнорируется (т.е. она не определяется как sh файл несмотря на комментарий). Есть ли причина, по которой это может происходить?

2 ответа

Решение

Избавьтесь от набора слов (и добавьте пробел после символа комментария)

# vim: filetype=sh

Это соответствует с первой формой модели

There are two forms of modelines.  The first form:
        [text]{white}{vi:|vim:|ex:}[white]{options}

[text]                  any text or empty
{white}                 at least one blank character (<Space> or <Tab>)
{vi:|vim:|ex:}          the string "vi:", "vim:" or "ex:"
[white]                 optional white space
{options}               a list of option settings, separated with white space
                        or ':', where each part between ':' is the argument
                        for a ":set" command (can be empty)

Синтаксис для этого типа моделин:

[text]{white}{vi:|vim:|ex:}[white]se[t] {options}:[text]

То есть попробуйте добавить пробел перед vim: и завершающий двоеточие:

# vim: set filetype=sh:

Вы можете найти все о моделин в

  • :h modeline
  • :h 'modeline'
Другие вопросы по тегам