Sehen Sie sich Treesitter-Informationen direkt in Neovim an!
Dieses Plugin ist veraltet , da die Funktionalität in Neovim: Use enthalten ist
:Inspect
um die Hervorhebungsgruppen unter dem Cursor anzuzeigen:InspectTree
um den analysierten Syntaxbaum anzuzeigen („TSPlayground“):EditQuery
zum Öffnen des Live Query Editors (Nvim 0.10+) query
) Installieren Sie das Plugin (VIM-Plug abgebildet):
Plug ' nvim-treesitter/nvim-treesitter '
Plug ' nvim-treesitter/playground '
Es wird außerdem empfohlen, den query
für die Hervorhebung im Abfrageeditor zu installieren. Führen Sie dies aus, nachdem Sie die oben genannten Plugins installiert haben.
:TSInstall query
Die Konfiguration ist wie bei jedem anderen nvim-treesitter-Modul.
require " nvim-treesitter.configs " . setup {
playground = {
enable = true ,
disable = {},
updatetime = 25 , -- Debounced time for highlighting nodes in the playground from source code
persist_queries = false , -- Whether the query persists across vim sessions
keybindings = {
toggle_query_editor = ' o ' ,
toggle_hl_groups = ' i ' ,
toggle_injected_languages = ' t ' ,
toggle_anonymous_nodes = ' a ' ,
toggle_language_display = ' I ' ,
focus_language = ' f ' ,
unfocus_language = ' F ' ,
update = ' R ' ,
goto_node = ' <cr> ' ,
show_help = ' ? ' ,
},
}
}
Der Baum kann mit dem Befehl :TSPlaygroundToggle
umgeschaltet werden.
R
: Aktualisiert die Playground-Ansicht bei Fokussierung oder lädt die Abfrage neu, wenn der Abfrageeditor fokussiert ist.o
: Schaltet den Abfrageeditor um, wenn der Spielplatz fokussiert ist.a
: Schaltet die Sichtbarkeit anonymer Knoten um.i
: Schaltet die Sichtbarkeit von Hervorhebungsgruppen um.I
: Schaltet die Sichtbarkeit der Sprache um, zu der der Knoten gehört.t
: Schaltet die Sichtbarkeit der eingefügten Sprachen um.f
: Fokussiert den Sprachbaum unter dem Cursor im Playground. Der Abfrageeditor verwendet nun die fokussierte Sprache.F
: Hebt den Fokus der aktuell fokussierten Sprache auf.<cr>
: Gehe zum aktuellen Knoten im Codepuffer Drücken Sie o
um den Abfrageeditor anzuzeigen. Schreiben Sie Ihre Abfrage wie (node) @capture
und platzieren Sie den Cursor unter der Erfassung, um die Übereinstimmungen hervorzuheben.
Wenn Sie sich in einem query
befinden, können Sie mit Strg-X Strg-O eine Liste mit Vorschlägen abrufen. Siehe :h 'omnifunc'
.
Der Spielplatz kann für Sie Lint-Abfragedateien durchführen. Dazu müssen Sie das Modul query_linter
aktivieren:
require " nvim-treesitter.configs " . setup {
query_linter = {
enable = true ,
use_virtual_text = true ,
lint_events = { " BufWrite " , " CursorHold " },
},
}
Hinweis: Der Abfrage-Linter geht von einer bestimmten Verzeichnisstruktur aus, um zu identifizieren, zu welchen Sprachabfragen sie gehören. Es wird erwartet, dass sich die Abfragedateien unter ./queries/<language_name>
befinden
Der Spielplatz verfügt über :TSHighlightCapturesUnderCursor
, das alle Treesitter- oder Syntax-Highlight-Gruppen unter dem Cursor anzeigt.
Wenn Sie nur Informationen über den Knoten anzeigen möchten, auf dem sich Ihr Cursor gerade befindet (ohne den gesamten Baum öffnen zu müssen), können Sie stattdessen :TSNodeUnderCursor
verwenden. Es wird ein schwebendes Fenster mit Informationen zum Parser, Knotennamen und Zeilen-/Spaltenbereichen angezeigt.