Modeline funktioniert nicht in Vim

Modeline funktioniert nicht in Vim

Ich habe eine Datei namens .aliasesbash und zsh, ich habe diese Zeile eingefügt

# vim: set filetype=bash: 

aber wenn ich

: echo &ft

Ich bekommeconf

Antwort1

Das sollte funktionieren. Ich habe diese Zeile selbst ausprobiert und sie hat funktioniert. Es könnte sein, dass Ihre Option „Modeline“ auf „NoModeline“ gesetzt wurde. Versuchen Sie, dies auszuführen und sehen Sie, was Sie bekommen.

:verbose set modeline?

Dadurch erfahren Sie den Wert der Option „Modeline“ und, falls es sich nicht um den Standardwert handelt, wo er zuletzt festgelegt wurde.

Einige Linux-Distributionen setzen als Sicherheitsmaßnahme „nomodeline“ in /etc/vimrc oder /usr/share/vim/vimrc, obwohl die Sicherheitsprobleme mit „modeline“ längst behoben sind.

Antwort2

Ich beschreibe einevollständige Debug-Checkliste in dieser anderen Antwort.

Ich war wirklich ratlos, denndie DokumentationIstNicht komplettWAHR.

Es stellt sich heraus, dass Sie in Version 8 (und möglicherweise früher) das Wort nicht setin Ihrer Modeline verwenden können. Die Dokumentation beschreibt „die zweite Form“, /* vim: set ai tw=75: */aber das funktioniert nicht. Sie müssen „die erste Form“ verwenden.// vim: ai tw=75

Hinweis: Sie können eine dieser Arten von Kommentarindikatoren verwenden. Oder gar keine.

Antwort3

set modelines=1(oder ein beliebiger Wert ungleich 0) in meiner ~/.vimrc hat es bei mir zum Laufen gebracht.

Antwort4

~/.vimrcAuf meiner Funtoo-Linux-Box hat es bei mir funktioniert, indem ich einfach Folgendes hinzugefügt habe :

set modeline

verwandte Informationen