branch: externals/objed
commit 87cdeee440c03afcc94e46018f421c316d105d87
Author: Clemens Radermacher <[email protected]>
Commit: Clemens Radermacher <[email protected]>
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.