emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/objed 7ba5cb2 088/216: New until beg/end of buffer beha


From: Stefan Monnier
Subject: [elpa] externals/objed 7ba5cb2 088/216: New until beg/end of buffer behavior
Date: Tue, 8 Jan 2019 12:29:17 -0500 (EST)

branch: externals/objed
commit 7ba5cb2fc212ef5c409967c149befac5fa3ce34d
Author: Clemera <address@hidden>
Commit: Clemera <address@hidden>

    New until beg/end of buffer behavior
---
 objed.el | 18 ++++++++++++++++--
 1 file changed, 16 insertions(+), 2 deletions(-)

diff --git a/objed.el b/objed.el
index f12d1ce..3ad3e0c 100644
--- a/objed.el
+++ b/objed.el
@@ -286,8 +286,8 @@ See also `objed-disabled-p'"
     (move-end-of-line . line)
     (previous-line . line)
     (next-line . line)
-    (beginning-of-buffer . line)
-    (end-of-buffer . char)
+    (beginning-of-buffer . buffer)
+    (end-of-buffer . buffer)
     (scroll-up-command . line)
     (scroll-down-command . line)
     (xref-find-definitions . line)
@@ -486,6 +486,8 @@ exit function is called after execution of the operation.")
 (defvar objed--after-init-alist
   '((move-end-of-line . objed--object-trailing-line)
     (org-end-of-line . objed--object-trailing-line)
+    (beginning-of-buffer . objed--until-start)
+    (end-of-buffer . objed--until-end)
     (backward-sentence . objed--goto-start))
   "Maps commands which need special initialization to init functions.
 
@@ -1073,6 +1075,18 @@ See `objed-cmd-alist'."
     (objed--reverse))
   (objed--change-to :beg pos :ibeg pos))
 
+(defun objed--until-start (pos)
+  "Activate from part from POS until start."
+  (objed--change-to :end pos :iend pos))
+
+(defun objed--until-end (pos)
+  "Activate part from POS until end."
+  ;; workaround: end-of-buffer behaves weird opoint is wrong
+  ;; use the mark instead
+  (if (eq this-command #'end-of-buffer)
+      (objed--change-to :beg (mark) :ibeg (mark))
+      (objed--change-to :beg pos :ibeg pos)))
+
 (defun objed--init (&optional sym)
   "Initialize `objed'.
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]