summaryrefslogtreecommitdiffstats
path: root/2022/talks/treesitter.md
blob: f62caddae20b310d0ed0451b0a19b6edb626b7bc (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
[[!meta title="Tree-sitter beyond syntax highlighting"]]
[[!meta copyright="Copyright © 2022 Abin Simon"]]
[[!inline pages="internal(2022/info/treesitter-nav)" raw="yes"]]

<!-- Initially generated with emacsconf-generate-talk-page and then left alone for manual editing -->
<!-- You can manually edit this file to update the abstract, add links, etc. --->


# Tree-sitter beyond syntax highlighting
Abin Simon

[[!inline pages="internal(2022/info/treesitter-before)" raw="yes"]]

Tree sitter has seen a lot of development recently, but more often
than not folks are only aware of its use for syntax highliting. The
idea of this talk is to introduce some other usecases where they could
benefit from tree-sitter.

This talk will be an overview of the kind of things that they will be
able to do with tree-sitter with demos but won't go in depth into how
they would all of them. The presentation will link to the resources
mentioned during the talk where folks can learn more about each of
them.

This session will introduce them to things like (not final list):

-   textobjects using tree-sitter: <https://github.com/meain/evil-textobj-tree-sitter/>
-   Folding using tree-sitter: <https://github.com/emacs-tree-sitter/ts-fold>
-   Navigating config headings: <https://blog.meain.io/2022/navigating-config-files-using-tree-sitter/>
-   Using tree-sitter for narrowing: <https://blog.meain.io/2022/more-treesitter-emacs/#narrow-to-language-level-constructs>
-   Intelligent snippets using tree-sitter: <https://blog.meain.io/2021/intelligent-snippets-treesitter/>
-   Using tree-sitter to get which-func like functionality: <https://blog.meain.io/2022/more-treesitter-emacs/#show-current-class%2Ffunction-name-in-modeline>
-   Some useful tree-sitter functions: tree-sitter-save-excursion



[[!inline pages="internal(2022/info/treesitter-after)" raw="yes"]]

[[!inline pages="internal(2022/info/treesitter-nav)" raw="yes"]]

[[!taglink CategoryTreeSitter]]