Frage

Ich bin mit dem closetag.vim Plugin, aber es scheint nicht für alle Tags zu arbeiten. Im Plugin-Code gibt es die ignoriert Tags var, dass jemand enthält, die ich bemerkt wurden nicht ex dd dl zu schließen, aber es gibt viele andere, die nicht in der Liste enthalten sind, die nicht berufstätig sind (p, ul, li).

Nichts schien nach der Aktualisierung der Liste der ignorierten Tags zu geschehen.

Dieses Plugin, um zu arbeiten Sie einfach den Tag-Text eingeben und Tab klicken, nicht wahr? dh div

Bin ich etwas fehlt?

War es hilfreich?

Lösung

Wie haben Sie das Plugin installieren?

Ich hatte Probleme mit closetag.vim, wenn ich es in ~/.vim/plugins installiert. Dann zog ich es in ~/.vim/scripts statt und hat folgende meiner .vimrc:

:let g:closetag_html_style=1
:source ~/.vim/scripts/closetag.vim

und jetzt funktioniert es für mich in Ordnung. Ich finde, dass es alle Tags (einschließlich der in der ‚ignorieren‘ -Liste) schließt, aber nicht diejenigen, die selbstschließ sind (z <img/>).

In der Version des Skripts, das ich verwende (0.9.1) definiert es <C-_> als Auslöser für die Tags abgeschlossen. Wenn Sie den Befehl <tab> zugeordnet haben, dann sollte das auch funktionieren.

Andere Tipps

Ich kann auch nicht bekommen dieses Plugin, aber in meinem Fall zu arbeiten, was es sie, bevor sie schließlich arbeiten eine Reihe von Fehlermeldungen nicht wegzuwerfen. Zum Beispiel, wenn ich versuche, einen H1-Tag zu schließen ich den Fehler Error Detected while processing function GetCloseTag erhalten werde, und der Fehler ist ein undefined variable b:UnaryTagsStack.

Es scheint, als sei es ein nützliches Plugin sein würde, aber es will einfach nicht kooperieren.

Ich hatte das gleiche Problem und nelstrom Antwort oben hätte löst es nicht für mich. Was für mich gearbeitet wurde die folgenden Zeilen zu meinem .vimrc hinzufügen:

if !exists("b:unaryTagsStack") || exists("b:closetag_html_style")
    if &filetype == "html" || exists("b:closetag_html_style")
        let b:unaryTagsStacktack="area base br dd dt hr img input link meta param"
    else " for xml and xsl
        let b:unaryTagsStack=""
    endif
endif

if !exists("b:unaryTagsStack")
    let b:unaryTagsStack=""
endif

Ich weiß nicht, warum das Hinzufügen nur let b:unaryTagsStack="" nicht den Trick tat, aber die Kombination scheint oben, um es in allen Dateitypen für mich zu beheben.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top