Unterschiedliche vim-Einzugseinstellungen für bestimmte Dateitypen

1968
Jeffrey04

Drupal enthält einige Hinweise zum Einrichten von VIM für die Drupal-Entwicklung. Ich möchte jedoch, dass diese Einstellungen zum Einzug nur auf Drupal-bezogene Dateien und nicht auf alle Dateien angewendet werden

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

Ist es möglich, diese Einstellungen nur auf .module- und .inc-Dateien festzulegen?

Nicht sicher, ob dies relevant ist, aber um die Drupal-Dateien mit Syntax hervorzuheben, weiß ich, dass die bereitgestellte Konfiguration funktionieren würde

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 

Ist es möglich, die obigen Einstellungen in diesen Konfigurationsblock zu übernehmen?

3
Sie können setlocal für lokale Puffereinstellungen verwenden juanpablo vor 12 Jahren 0

1 Antwort auf die Frage

3
Pharaun

Ja, es wäre möglich. Sie sagten, Sie möchten, dass diese Einstellungen nur für die * .module- und * .inc-Datei gelten. Dann würde ich Ihren Konfigurationsblock so ändern, dass er wie folgt aussieht:

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 

Grundsätzlich geht mein Verständnis von VIM dahingehend aus, dass fast alles, was Sie in der .vimrc-Datei tun können, über die Eingabeaufforderung: in vim ausgeführt werden kann, wie beispielsweise : set smartindent .