From 9024d831f826f2a7d70b83b10f9be1417e79e413 Mon Sep 17 00:00:00 2001 From: Henrik Lissner Date: Tue, 14 May 2019 15:02:42 -0400 Subject: [PATCH] Fix void-variable error in yaml-mode when folding --- modules/editor/fold/autoload/fold.el | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/modules/editor/fold/autoload/fold.el b/modules/editor/fold/autoload/fold.el index e631c31c5..70d4ea362 100644 --- a/modules/editor/fold/autoload/fold.el +++ b/modules/editor/fold/autoload/fold.el @@ -42,16 +42,18 @@ ;; ;; Indentation detection -(defun +fold--hideshow-empty-line-p () +(defun +fold--hideshow-empty-line-p (_) (string= "" (string-trim (thing-at-point 'line)))) -(defun +fold--hideshow-geq-or-empty-p () - (or (+fold--hideshow-empty-line-p) (>= (current-indentation) base))) +(defun +fold--hideshow-geq-or-empty-p (base-indent) + (or (+fold--hideshow-empty-line-p) + (>= (current-indentation) base-indent))) -(defun +fold--hideshow-g-or-empty-p () - (or (+fold--hideshow-empty-line-p) (> (current-indentation) base))) +(defun +fold--hideshow-g-or-empty-p (base-indent) + (or (+fold--hideshow-empty-line-p) + (> (current-indentation) base-indent))) -(defun +fold--hideshow-seek (start direction before skip predicate) +(defun +fold--hideshow-seek (start direction before skip predicate base-indent) "Seeks forward (if direction is 1) or backward (if direction is -1) from start, until predicate fails. If before is nil, it will return the first line where predicate fails, otherwise it returns the last line where predicate holds." @@ -63,7 +65,7 @@ the last line where predicate holds." (point-max))) (pt (point))) (when skip (forward-line direction)) - (cl-loop while (and (/= (point) bnd) (funcall predicate)) + (cl-loop while (and (/= (point) bnd) (funcall predicate base-indent)) do (progn (when before (setq pt (point-at-bol))) (forward-line direction) @@ -77,11 +79,11 @@ begin and end of the block surrounding point." (save-excursion (when point (goto-char point)) - (let ((base (current-indentation)) + (let ((base-indent (current-indentation)) (begin (point)) (end (point))) - (setq begin (+fold--hideshow-seek begin -1 t nil #'+fold--hideshow-geq-or-empty-p) - begin (+fold--hideshow-seek begin 1 nil nil #'+fold--hideshow-g-or-empty-p) - end (+fold--hideshow-seek end 1 t nil #'+fold--hideshow-geq-or-empty-p) - end (+fold--hideshow-seek end -1 nil nil #'+fold--hideshow-empty-line-p)) + (setq begin (+fold--hideshow-seek begin -1 t nil #'+fold--hideshow-geq-or-empty-p base-indent) + begin (+fold--hideshow-seek begin 1 nil nil #'+fold--hideshow-g-or-empty-p base-indent) + end (+fold--hideshow-seek end 1 t nil #'+fold--hideshow-geq-or-empty-p base-indent) + end (+fold--hideshow-seek end -1 nil nil #'+fold--hideshow-empty-line-p base-indent)) (list begin end base))))