branch: externals/objed commit 87cdeee440c03afcc94e46018f421c316d105d87 Author: Clemens Radermacher <clem...@posteo.net> Commit: Clemens Radermacher <clem...@posteo.net>
Improve toggle state --- objed.el | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/objed.el b/objed.el index 1a772c2..9e17e7d 100644 --- a/objed.el +++ b/objed.el @@ -1777,13 +1777,20 @@ Shrinks to inner objects on repeat if possible." (when (eq objed--object 'sexp) (save-excursion (objed-context-object))) - (let ((sdiff (abs (- (point) (objed--beg)))) - (ediff (abs (- (point) (objed--end))))) + (let ((boo (eq (point) (objed--beg))) + (eoo (eq (point) (objed--end)))) (objed--reverse) - (goto-char (cond ((> ediff sdiff) - (objed--beg)) - (t - (objed--end)))))) + (cond (boo + (goto-char (objed--beg))) + ((and eoo + (not (eq objed--object 'line))) + (goto-char (objed--end))) + ((< (point) (objed--beg)) + (goto-char (objed--beg))) + ((and + (> (point) (objed--beg)) + (> (point) (objed--end))) + (goto-char (objed--end)))))) (defun objed-backward-until-context (arg) "Goto object inner beginning and activate part moved over.