From: Stefan Kangas Date: Wed, 5 Oct 2022 14:33:18 +0000 (+0200) Subject: New command 'world-clock-copy-time-as-kill' X-Git-Tag: emacs-29.0.90~1856^2~3 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=10ec1a4d7e940bb6d67108aeb4316bc1f53403a9;p=emacs.git New command 'world-clock-copy-time-as-kill' * lisp/time.el (world-clock-copy-time-as-kill): New command. (world-clock-mode-map): Bind above new command to "w". --- diff --git a/etc/NEWS b/etc/NEWS index 916abbc4363..b616c5382ca 100644 --- 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 diff --git a/lisp/time.el b/lisp/time.el index e7066cae7a5..247d715ab66 100644 --- a/lisp/time.el +++ b/lisp/time.el @@ -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.