branch: externals/matlab-mode
commit 89faf5369a7701c9e6956bf9327d585d2ad93f87
Author: John Ciolfi <[email protected]>
Commit: John Ciolfi <[email protected]>

    matlab-ts-mode--ei: fix issue with trailing comments in multi-line matrices
---
 matlab-ts-mode--ei.el                                        | 10 +++++-----
 .../electric_indent_m_matrix_trailing_comment.m              |  7 +++++++
 .../electric_indent_m_matrix_trailing_comment.m              |  7 +++++++
 .../electric_indent_m_matrix_trailing_comment_expected.txt   | 12 ++++++++++++
 4 files changed, 31 insertions(+), 5 deletions(-)

diff --git a/matlab-ts-mode--ei.el b/matlab-ts-mode--ei.el
index c103910bc1..db3e780a0c 100644
--- a/matlab-ts-mode--ei.el
+++ b/matlab-ts-mode--ei.el
@@ -1208,11 +1208,11 @@ See `matlab-ts-mode--ei-get-new-line' for EI-INFO 
contents."
 See `matlab-ts-mode--ei-get-new-line' for EI-INFO contents."
   (let ((matrix-node (matlab-ts-mode--ei-point-in-m-matrix ei-info)))
     (if matrix-node
-        (setq ei-info (matlab-ts-mode--ei-align-line-in-m-matrix matrix-node 
ei-info)))
-    ;; else do single-line alignments
-    (setq ei-info (matlab-ts-mode--ei-align-assignments ei-info))
-    (setq ei-info (matlab-ts-mode--ei-align-properties ei-info))
-    (setq ei-info (matlab-ts-mode--ei-align-trailing-comments ei-info)))
+        (setq ei-info (matlab-ts-mode--ei-align-line-in-m-matrix matrix-node 
ei-info))
+      ;; else do single-line alignments
+      (setq ei-info (matlab-ts-mode--ei-align-assignments ei-info))
+      (setq ei-info (matlab-ts-mode--ei-align-properties ei-info))
+      (setq ei-info (matlab-ts-mode--ei-align-trailing-comments ei-info))))
   ei-info)
 
 (defun matlab-ts-mode--ei-get-start-info ()
diff --git 
a/tests/test-matlab-ts-mode-electric-indent-files/electric_indent_m_matrix_trailing_comment.m
 
b/tests/test-matlab-ts-mode-electric-indent-files/electric_indent_m_matrix_trailing_comment.m
new file mode 100644
index 0000000000..dfdeeeaaa1
--- /dev/null
+++ 
b/tests/test-matlab-ts-mode-electric-indent-files/electric_indent_m_matrix_trailing_comment.m
@@ -0,0 +1,7 @@
+% -*- matlab-ts -*-
+
+% t-utils-test-indent: no-line-by-line-indent - line-by-line typing results in 
error nodes
+
+NumberVar=  [10; % comment 1
+          9;     % comment2
+                  7]; % foo
diff --git 
a/tests/test-matlab-ts-mode-parser-files/copy-of-test-matlab-ts-mode-electric-indent-files/electric_indent_m_matrix_trailing_comment.m
 
b/tests/test-matlab-ts-mode-parser-files/copy-of-test-matlab-ts-mode-electric-indent-files/electric_indent_m_matrix_trailing_comment.m
new file mode 100644
index 0000000000..dfdeeeaaa1
--- /dev/null
+++ 
b/tests/test-matlab-ts-mode-parser-files/copy-of-test-matlab-ts-mode-electric-indent-files/electric_indent_m_matrix_trailing_comment.m
@@ -0,0 +1,7 @@
+% -*- matlab-ts -*-
+
+% t-utils-test-indent: no-line-by-line-indent - line-by-line typing results in 
error nodes
+
+NumberVar=  [10; % comment 1
+          9;     % comment2
+                  7]; % foo
diff --git 
a/tests/test-matlab-ts-mode-parser-files/copy-of-test-matlab-ts-mode-electric-indent-files/electric_indent_m_matrix_trailing_comment_expected.txt
 
b/tests/test-matlab-ts-mode-parser-files/copy-of-test-matlab-ts-mode-electric-indent-files/electric_indent_m_matrix_trailing_comment_expected.txt
new file mode 100644
index 0000000000..5858265735
--- /dev/null
+++ 
b/tests/test-matlab-ts-mode-parser-files/copy-of-test-matlab-ts-mode-electric-indent-files/electric_indent_m_matrix_trailing_comment_expected.txt
@@ -0,0 +1,12 @@
+# -*- t-utils-ts-parse-tree -*-
+(source_file<1,199> (comment[1,20]@{% -*- matlab-ts -*-}@) (comment[22,112]@{% 
t-utils-test-indent: no-line-by-line-indent - li...}@)
+ (assignment<114,191> left: (identifier[114,123]@{NumberVar}@) =[123,124]
+  right: 
+   (matrix<126,191> [[126,127]
+    (row<127,129> (number[127,129]@{10}@))
+    (comment[131,142]@{% comment 1}@)
+    (row<153,154> (number[153,154]@{9}@))
+    (comment[160,170]@{% comment2}@)
+    (row<189,190> (number[189,190]@{7}@))
+    ][190,191]))
+ ;[191,192] (comment[193,198]@{% foo}@) \n[198,199])

Reply via email to