From cfb180329b567d907c11fc9f2bd24728729ec689 Mon Sep 17 00:00:00 2001 From: Dmitry Gutov Date: Wed, 25 Jan 2023 17:21:49 +0200 Subject: [PATCH] ruby-ts-mode: Don't reindent when "class" or "def" is under "ERROR" * lisp/progmodes/ruby-ts-mode.el (ruby-ts--indent-rules): Don't reindent when "class" or "def" is under "ERROR" (bug#61017). --- lisp/progmodes/ruby-ts-mode.el | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lisp/progmodes/ruby-ts-mode.el b/lisp/progmodes/ruby-ts-mode.el index eff846f8585..60215978176 100644 --- a/lisp/progmodes/ruby-ts-mode.el +++ b/lisp/progmodes/ruby-ts-mode.el @@ -566,6 +566,12 @@ a statement container is a node that matches ((n-p-gp nil nil "regex") no-indent 0) ((parent-is "regex") no-indent 0) + ;; Incomplete buffer state, better not reindent (bug#61017). + ((and (parent-is "ERROR") + (or (node-is ,ruby-ts--class-or-module-regex) + (node-is "\\`def\\'"))) + no-indent 0) + ;; if then else elseif notes: ;; ;; 1. The "then" starts at the end of the line that ends -- 2.39.5