]> git.eshelyaron.com Git - emacs.git/commit
Fix tree-sitter comment indentation for C-like languages
authorYuan Fu <casouri@gmail.com>
Sun, 20 Nov 2022 01:59:14 +0000 (17:59 -0800)
committerYuan Fu <casouri@gmail.com>
Sun, 20 Nov 2022 02:36:08 +0000 (18:36 -0800)
commitac9bc819bc438f21bd38a995812d756727ed8e2a
tree94bc9c6242de9a72b7768512388714f08bc3d783
parent7d7e9ef46a1b310fb3f481cdf8023082f5ec1618
Fix tree-sitter comment indentation for C-like languages

The goal is to indent like this:

/* comment
   comment  --> This line aligns with the beginning of the first line
 */         --> This line aligns with the opening comment token

* lisp/treesit.el (treesit-comment-start)
(treesit-comment-end): New variables.
(treesit-simple-indent-presets): New preset comment-end,
comment-start, comment-start-skip

* lisp/progmodes/c-ts-mode.el (c-ts-mode--indent-styles)
(c-ts-mode)
* lisp/progmodes/java-ts-mode.el (java-ts-mode--indent-rules)
(java-ts-mode)
* lisp/progmodes/js.el (js--treesit-indent-rules)
(js-ts-mode)
* lisp/progmodes/ts-mode.el (ts-mode--indent-rules)
(ts-mode): Add identical indent rules to each mode, and set identical
treesit-comment-start/end's.

* doc/lispref/modes.texi (Parser-based Indentation)
* doc/lispref/parsing.texi (Tree-sitter major modes): Update manual.
doc/lispref/modes.texi
doc/lispref/parsing.texi
lisp/progmodes/c-ts-mode.el
lisp/progmodes/java-ts-mode.el
lisp/progmodes/js.el
lisp/progmodes/ts-mode.el
lisp/treesit.el