Veja informações do treeitter diretamente no Neovim!
Este plugin está obsoleto porque a funcionalidade está incluída no Neovim: Use
:Inspect
para mostrar os grupos de destaque sob o cursor:InspectTree
para mostrar a árvore de sintaxe analisada ("TSPlayground"):EditQuery
para abrir o Live Query Editor (Nvim 0.10+) query
instalada) Instale o plugin (plug-vim mostrado):
Plug ' nvim-treesitter/nvim-treesitter '
Plug ' nvim-treesitter/playground '
Também é recomendado que você instale o analisador query
para realçar o editor de consultas. Execute isto depois de instalar os plugins acima.
:TSInstall query
A configuração é como qualquer outro módulo nvim-treesitter.
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 = ' ? ' ,
},
}
}
A árvore pode ser alternada usando o comando :TSPlaygroundToggle
.
R
: atualiza a visualização do playground quando o foco ou recarrega a consulta quando o editor de consultas está em foco.o
: Alterna o editor de consultas quando o playground está em foco.a
: Alterna a visibilidade de nós anônimos.i
: Alterna a visibilidade dos grupos de destaque.I
: Alterna a visibilidade do idioma ao qual o nó pertence.t
: Alterna a visibilidade dos idiomas injetados.f
: Foca a árvore de idiomas sob o cursor no playground. O editor de consultas agora usará a linguagem em foco.F
: Desfoca o idioma atualmente em foco.<cr>
: Vai para o nó atual no buffer de código Pressione o
para mostrar o editor de consultas. Escreva sua consulta como (node) @capture
, coloque o cursor sob a captura para destacar as correspondências.
Quando você está em um buffer query
, pode obter uma lista de sugestões com Ctrl-X Ctrl-O . Veja :h 'omnifunc'
.
O playground pode criar arquivos de consulta para você. Para isso, é necessário ativar o módulo query_linter
:
require " nvim-treesitter.configs " . setup {
query_linter = {
enable = true ,
use_virtual_text = true ,
lint_events = { " BufWrite " , " CursorHold " },
},
}
Nota: O Query linter assume determinada estrutura de diretório para identificar a qual idioma as consultas pertencem. Ele espera que os arquivos de consulta estejam em ./queries/<language_name>
O playground vem com :TSHighlightCapturesUnderCursor
que mostra qualquer treeitter ou grupos de realce de sintaxe sob o cursor.
Se você deseja apenas visualizar informações sobre o nó em que seu cursor está atualmente (sem precisar abrir a árvore completa), você pode usar :TSNodeUnderCursor
. Uma janela flutuante contendo informações sobre o analisador, nome do nó e intervalos de linhas/colunas será mostrada.