]> git.eshelyaron.com Git - emacs.git/commitdiff
New command 'world-clock-copy-time-as-kill'
authorStefan Kangas <stefankangas@gmail.com>
Wed, 5 Oct 2022 14:33:18 +0000 (16:33 +0200)
committerStefan Kangas <stefankangas@gmail.com>
Wed, 5 Oct 2022 14:33:23 +0000 (16:33 +0200)
* lisp/time.el (world-clock-copy-time-as-kill): New command.
(world-clock-mode-map): Bind above new command to "w".

etc/NEWS
lisp/time.el

index 916abbc4363294005418c707464643d36170e7cd..b616c5382ca7df18cd53cf21d9d4b4c88b100539 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -2699,6 +2699,10 @@ remote host are shown.  Alternatively, the user option
 *** 'outlineify-sticky' command is renamed to 'allout-outlinify-sticky'.
 The old name is still available as an obsolete function alias.
 
+---
+*** New command 'world-clock-copy-time-as-kill' for 'M-x world-clock'.
+It copies the current line into the kill ring.
+
 ---
 *** 'edit-abbrevs' now uses font-locking.
 The new face 'abbrev-table-name' is used to display the abbrev table
index e7066cae7a5b4e286e4411cd010645170f8749df..247d715ab66be8a9314496419c4b14fa757cd9e8 100644 (file)
@@ -528,7 +528,15 @@ If the value is t instead of an alist, use the value of
 
 (defvar-keymap world-clock-mode-map
   "n" #'next-line
-  "p" #'previous-line)
+  "p" #'previous-line
+  "w" #'world-clock-copy-time-as-kill)
+
+(defun world-clock-copy-time-as-kill ()
+  "Copy current line into the kill ring."
+  (interactive nil world-clock-mode)
+  (when-let ((str (buffer-substring-no-properties (pos-bol) (pos-eol))))
+    (kill-new str)
+    (message str)))
 
 (define-derived-mode world-clock-mode special-mode "World clock"
   "Major mode for buffer that displays times in various time zones.