Fix c-ts-mode label indent
Fix indentation of the statement right under a label. * lisp/progmodes/c-ts-mode.el (c-ts-mode--indent-styles): Fix. (c-ts-mode--top-level-label-matcher): Fix.
This commit is contained in:
parent
189d976dba
commit
252b2c01af
1 changed files with 7 additions and 3 deletions
|
@ -129,8 +129,12 @@ MODE is either `c' or `cpp'."
|
||||||
c-ts-mode--comment-2nd-line-anchor
|
c-ts-mode--comment-2nd-line-anchor
|
||||||
1)
|
1)
|
||||||
((parent-is "comment") prev-adaptive-prefix 0)
|
((parent-is "comment") prev-adaptive-prefix 0)
|
||||||
|
|
||||||
|
;; Labels.
|
||||||
((node-is "labeled_statement") parent-bol 0)
|
((node-is "labeled_statement") parent-bol 0)
|
||||||
((parent-is "labeled_statement") parent-bol c-ts-mode-indent-offset)
|
((parent-is "labeled_statement")
|
||||||
|
point-min c-ts-mode--statement-offset)
|
||||||
|
|
||||||
((match "preproc_ifdef" "compound_statement") point-min 0)
|
((match "preproc_ifdef" "compound_statement") point-min 0)
|
||||||
((match "#endif" "preproc_ifdef") point-min 0)
|
((match "#endif" "preproc_ifdef") point-min 0)
|
||||||
((match "preproc_if" "compound_statement") point-min 0)
|
((match "preproc_if" "compound_statement") point-min 0)
|
||||||
|
@ -216,10 +220,10 @@ NODE should be a labeled_statement."
|
||||||
(let ((func (treesit-parent-until
|
(let ((func (treesit-parent-until
|
||||||
node (lambda (n)
|
node (lambda (n)
|
||||||
(equal (treesit-node-type n)
|
(equal (treesit-node-type n)
|
||||||
"function_definition")))))
|
"compound_statement")))))
|
||||||
(and (equal (treesit-node-type node)
|
(and (equal (treesit-node-type node)
|
||||||
"labeled_statement")
|
"labeled_statement")
|
||||||
(not (treesit-node-top-level func "function_definition")))))
|
(not (treesit-node-top-level func "compound_statement")))))
|
||||||
|
|
||||||
(defvar c-ts-mode-indent-block-type-regexp
|
(defvar c-ts-mode-indent-block-type-regexp
|
||||||
(rx (or "compound_statement"
|
(rx (or "compound_statement"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue