branch: externals/objed
commit 65823e0bf117790caa97845b748e2ba509dd5e20
Author: Clemens Radermacher <clem...@posteo.net>
Commit: Clemens Radermacher <clem...@posteo.net>

    Improve context fallback
---
 objed.el | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/objed.el b/objed.el
index e8d7f41..9ecb8f8 100644
--- a/objed.el
+++ b/objed.el
@@ -1802,8 +1802,13 @@ to an object containing the current one."
                  (force-mode-line-update)
                  (goto-char (objed--beg)))
         ;; fallback if nothing else found
-        (or (objed--switch-to 'defun 'inner)
-            (objed--switch-to 'line 'inner))))))
+        (let ((fallback (objed--get-object 'defun 'whole)))
+          (if (and fallback
+                   (< (objed--alt-beg fallback)
+                      (objed--beg)))
+              (objed--switch-to 'defun 'inner)
+            (or (objed--switch-to 'defun 'whole)
+                (objed--switch-to 'line 'inner))))))))
 
 
 (defun objed--sexp-fallback (&optional pos)

Reply via email to