]> git.eshelyaron.com Git - emacs.git/commitdiff
Add indent rules to js/typescript/tsx-ts-mode (bug#60074)
authorTheodor Thornhill <theo@thornhill.no>
Wed, 14 Dec 2022 20:23:33 +0000 (21:23 +0100)
committerYuan Fu <casouri@gmail.com>
Wed, 14 Dec 2022 22:39:29 +0000 (14:39 -0800)
* lisp/progmodes/typescript-ts-mode.el
(typescript-ts-mode--indent-rules): Add in binary_expression and
jsx_fragment.
* lisp/progmodes/js.el (js--treesit-indent-rules): Add the same rules.

lisp/progmodes/js.el
lisp/progmodes/typescript-ts-mode.el

index 02990813ef43eded12c08b767c7152820a1c27a7..8ec14cf7ad1924eaeb4b2f793b6636a43c8592d7 100644 (file)
@@ -3445,12 +3445,15 @@ This function is intended for use in `after-change-functions'."
        ((parent-is "pair") parent-bol js-indent-level)
        ((parent-is "arrow_function") parent-bol js-indent-level)
        ((parent-is "parenthesized_expression") parent-bol js-indent-level)
+       ((parent-is "binary_expression") parent-bol js-indent-level)
        ((parent-is "class_body") parent-bol js-indent-level)
        ((parent-is ,switch-case) parent-bol js-indent-level)
        ((parent-is "statement_block") parent-bol js-indent-level)
 
        ;; JSX
        ((parent-is "jsx_opening_element") parent js-indent-level)
+       ((match "<" "jsx_fragment") parent 0)
+       ((parent-is "jsx_fragment") parent js-indent-level)
        ((node-is "jsx_closing_element") parent 0)
        ((node-is "jsx_text") parent js-indent-level)
        ((parent-is "jsx_element") parent js-indent-level)
index b8a921e9c246ac532ce3751520e9b5106974c146..e7bd65c5e2fd061df2b5af7af57ae65ebfec8dd4 100644 (file)
@@ -92,9 +92,12 @@ Argument LANGUAGE is either `typescript' or `tsx'."
      ((parent-is "class_body") parent-bol typescript-ts-mode-indent-offset)
      ((parent-is "arrow_function") parent-bol typescript-ts-mode-indent-offset)
      ((parent-is "parenthesized_expression") parent-bol typescript-ts-mode-indent-offset)
+     ((parent-is "binary_expression") parent-bol typescript-ts-mode-indent-offset)
 
      ,@(when (eq language 'tsx)
          `(((parent-is "jsx_opening_element") parent typescript-ts-mode-indent-offset)
+           ((match "<" "jsx_fragment") parent 0)
+           ((parent-is "jsx_fragment") parent typescript-ts-mode-indent-offset)
            ((node-is "jsx_closing_element") parent 0)
            ((parent-is "jsx_element") parent typescript-ts-mode-indent-offset)
            ((node-is "/") parent 0)