Можно ли изменить длину вкладки в зависимости от расширения файла?

Возможный дубликат:
Изменение поведения отступа Vim по типу файла

Здравствуйте. Поэтому я часто переключаюсь между "2" и "4" для вкладок. Обычно я использую 2 пробела для вкладки для файлов HTML и 4 пробела для вкладки для программирования. Есть ли способ настроить VIM, поэтому он будет автоматически настраиваться в зависимости от расширения файла? Кроме того, как VIM иногда откладывает 8 пробелов, например, после ввода открытой фигурной скобки? Я установил 4 пробела. Спасибо.

Ответ 1

set sw=4 ts=4 sts=4                             " Defaults: four spaces per tab "
autocmd FileType html :setlocal sw=2 ts=2 sts=2 " Two spaces for HTML files "

Вот три разных варианта: "shiftwidth" ( "sw" ) контролирует количество пробелов для автоматического отступа и некоторые команды переключения (например, << в нормальном режиме), "tabstop" ( "ts" ) контролирует визуальную длину реальный символ табуляции, вы можете оставить по умолчанию (8 визуальных ячеек), "softtabstop" ( "sts" ) управляет тем, что вставляется/удаляется при нажатии <Tab> и <CR>. Я предлагаю вам либо установить его значение "tabstop", либо установить его вместе с "expandtab", потому что в других случаях он будет вызывать уродливые вкладки + пробелы в пробелах.

Ответ 2

Введите :help syntax в vim. Это откроет файл справки, в котором дается обзор с последующими страницами/файлами, в которых показано, как привязывать расширения файлов к файлам синтаксиса, где вы можете :set shiftwidth=2 и :set tabstop=2 для e. г. HTML файлы. Я думаю, что синтаксические файлы вашей установки несут ответственность за симптом отпечатка скобки.