Различные настройки отступа vim для определенного типа файла

1892
Jeffrey04

Drupal предоставляет некоторую справку о том, как настроить VIM для разработки на Drupal, но я хочу, чтобы эти настройки отступов применялись только к файлам, связанным с drupal, а не ко всем файлам.

set expandtab set tabstop=2 set shiftwidth=2 set autoindent set smartindent 

Можно ли установить эти настройки только для файлов .module и .inc?

Не уверен, что это уместно, но чтобы обеспечить подсветку синтаксиса для файлов drupal, я знаю, что предоставленная конфигурация будет работать

if has("autocmd") " Drupal *.module and *.install files. augroup module autocmd BufRead,BufNewFile *.module set filetype=php autocmd BufRead,BufNewFile *.install set filetype=php autocmd BufRead,BufNewFile *.test set filetype=php augroup END endif 

Можно ли поместить вышеуказанные настройки в этот блок конфигурации?

3
Вы можете использовать `setlocal` для локальных настроек буфера juanpablo 12 лет назад 0

1 ответ на вопрос

3
Pharaun

Да, это возможно, вы сказали, что хотите, чтобы эти настройки применялись только к файлам * .module и * .inc, тогда я бы изменил ваш блок конфигурации так:

if has("autocmd") " Drupal *.module and *.install files. augroup module autocmd BufRead,BufNewFile *.module set filetype=php autocmd BufRead,BufNewFile *.install set filetype=php autocmd BufRead,BufNewFile *.test set filetype=php  autocmd BufRead,BufNewFile *.module set expandtab autocmd BufRead,BufNewFile *.module set tabstop=2 autocmd BufRead,BufNewFile *.module set shiftwidth=2 autocmd BufRead,BufNewFile *.module set autoindent autocmd BufRead,BufNewFile *.module set smartindent  autocmd BufRead,BufNewFile *.inc set expandtab autocmd BufRead,BufNewFile *.inc set tabstop=2 autocmd BufRead,BufNewFile *.inc set shiftwidth=2 autocmd BufRead,BufNewFile *.inc set autoindent autocmd BufRead,BufNewFile *.inc set smartindent  augroup END endif 

В основном из моего понимания VIM является то, что почти все, что вы можете сделать в файле .vimrc, может быть выполнено с помощью приглашения: vim, например : set smartindent .