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

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

[elpa] externals/objed b5e68c9 33/59: Add objed insert command


From: Clemens Radermacher
Subject: [elpa] externals/objed b5e68c9 33/59: Add objed insert command
Date: Sun, 24 Mar 2019 06:06:40 -0400 (EDT)

branch: externals/objed
commit b5e68c9777ec49a35d5df440e2b40bdb9df4eb55
Author: Clemens Radermacher <address@hidden>
Commit: Clemens Radermacher <address@hidden>

    Add objed insert command
---
 objed.el | 30 ++++++++++++++++++++++++++----
 1 file changed, 26 insertions(+), 4 deletions(-)

diff --git a/objed.el b/objed.el
index 37969ea..6139d49 100644
--- a/objed.el
+++ b/objed.el
@@ -2434,19 +2434,41 @@ to the `kill-ring'."
   (if objed-append-mode
       (setq objed--append-do-append nil)))
 
+(defun objed-insert (&optional read)
+  "Insert stuff.
+
+When READ is non-nil read insert action, otherwise default to
+inserting objed-register (see `objed-copy')."
+  (interactive "P")
+  (let ((action
+         (or (and read
+                  (read-char-choice
+                   "[f]ile, [r]egsiter, [o]bjed register " '(?f ?r ?o)))
+             ?o)))
+    (cl-case action
+      (?f
+       (call-interactively 'insert-file))
+      (?r
+       (insert-register
+        (register-read-with-preview "Inser register: ")))
+      (?o
+       (insert-register :objed-register)))))
+
+
 (defun objed-copy ()
   "Copy objects.
 
-On repeat ask for copy object text to register."
+On repeat ask for copy object text to objed register."
   (interactive)
   (when (and objed-append-mode
              objed--append-do-append)
     ;; append on repeat
     (setq last-command 'kill-region))
-  (objed--do #'copy-region-as-kill)
+  (objed--do #'copy-region-as-kill 'keep)
   (if (eq real-last-command real-this-command)
-      (set-register (register-read-with-preview "Copy object to register: ")
-                    (objed--object-string))
+      (progn (set-register :objed-register
+                           (objed--object-string))
+             (message "Copied to objed register"))
     (message (if (and objed-append-mode
                       objed--append-do-append)
                  "Appended to `kill-ring'"



reply via email to

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