Deaktivieren Sie "Filetype Indent" von vim für einen bestimmten Dateityp

1905
Antonis Christofides

In meinem .vimrchabe ich

filetype indent on 

Die Art und Weise, wie yamlDateien automatisch eingerückt werden, ist für mich sehr verwirrend. Daher möchte ich sie deaktivieren filetype indent, aber nur für yamlDateien, nicht für andere Dateien.

Wie erzähle ich das so in meinem .vimrc?

3

2 Antworten auf die Frage

4
Ingo Karkat

@ maikis Antwort liefert die richtige Lösung; Wenn Sie dies beibehalten müssen ~/.vimrc, ist Folgendes gleichwertig:

autocmd FileType yaml let b:did_indent = 1 

Wenn dies nicht funktioniert, können Sie auch versuchen, die Einrückungsmethode anschließend zu löschen:

autocmd FileType yaml setlocal indentexpr= 

Ich empfehle Ihnen dennoch, Ihr Setup zu ändern, sodass mehr als nur Ihre .vimrcSynchronisierung problemlos möglich ist. Beachten Sie, dass Sie ~/.gitconfigin Zukunft möglicherweise Plugins oder andere Konfigurationen (wie ) verwenden möchten . Es gibt viele Ansätze, um die Benutzerkonfiguration systemübergreifend zu synchronisieren. Viele Benutzer haben sie in einem zentralen Repository (Git) und verwenden zur Installation symbolische Links.

Das hat bei mir nicht funktioniert; `setlocal indentexpr = 'statt` let b: did_indent = 1` hat jedoch funktioniert. Antonis Christofides vor 9 Jahren 1
Haben Sie das eingegeben oder tatsächlich .vimrc eingegeben? Es ist wichtig, dass dieser Autocmd zuerst definiert wird. Nun, du hast trotzdem eine Lösung gefunden! Ich habe das zu meiner Antwort hinzugefügt. Ingo Karkat vor 9 Jahren 0
Dasselbe gilt, wenn Sie "let b: did_indent = 1" in "~ / .vimrc" eingeben. Ich habe es vor und nach dem "filetype plugin indent on" versucht, es funktionierte nicht. `Autocmd FileType yaml setlocal indentexpr =` hat jedoch funktioniert. Es muss nach dem 'filetype plugin indent on' hinzugefügt werden. wisbucky vor 5 Jahren 0
3
maiki

Das sollte den Trick tun

echo 'let b:did_indent = 1' > ~/.vim/indent/yaml.vim 

Quelle

Ich weiß nicht, ob dies funktioniert, aber ich müsste dies auf all meinen Maschinen tun und daran denken, es jedes Mal zu tun, wenn ich eine neue Maschine habe. Nicht gut. Es sollte genügen, nur meine .vimrc zu kopieren. Antonis Christofides vor 9 Jahren 0