VIM помещает линию вверху (или внизу) плитки для установки атрибутов? не работает для меня - PullRequest
2 голосов
/ 06 декабря 2010

Я прочитал в "Vim book OPL.pdf", что вы можете поместить строку вверху файла, например, в файл .txt, и это изменит то, как Vim обрабатывает этот отдельный файл.например vim: tw = 78

, однако он ничего не делает для меня, и мне интересно, так ли это до сих пор для vim7.0?

Ответы [ 4 ]

3 голосов
/ 06 декабря 2010

Моделин по умолчанию часто отключается из-за соображений безопасности (последние, как я понимаю, отменены в Vim 7.3); это в Debian, например. Это будет в вашем случае (см. :set modeline?).

Добавьте set modeline к вашему vimrc, если вы хотите включить поддержку моделинов.

3 голосов
/ 06 декабря 2010

Это называется "modeline", и вы можете получить больше информации, набрав:
:help modeline

Из описания в справке, я думаю, правильный формат должен быть vim: tw=78

Кажется, в вашем примере пропущены пробелы.

Добавление из комментария elwoode:
Добавление модельной строки не будет автоматически переформатировать существующий текст.Если вы хотите переформатировать, вы должны выбрать область и использовать gq.См. :help gq

Чтобы переформатировать весь файл в соответствии с модельной линией, используйте:
gggqG (gg означает переход на первую строку, gq применение форматирования к движению, G переход кпоследняя строка)

Убедитесь, что в .vimrc у вас есть formatoptions+=t для учета форматирования в соответствии с шириной текста.Похоже, что на моей установке t является частью по умолчанию formatoptions.

1 голос
/ 06 декабря 2010

Вы пытаетесь установить modeline .

Синтаксис будет:

vim:set textwidth=78:
0 голосов
/ 06 декабря 2010

Просто опция, вы можете использовать ваш .vimrc, если хотите:

autocmd FileType .txt set textwidth=78
...