On Thu, Mar 15, 2018 at 11:36:28AM +0000, Daniel P. Berrangé wrote:
It is nice that git has the short-hand for adding Signed-off-by, but adding other tags during reviews is kind of tedious and long winded. eg "ACK" is much shorter than typing "Reviewed-by: ...blah blah blah.." Good editors have a way to setup macros though, and so I thought I'd share the emacs approach to making life easy again... In my $HOME/.emacs.d/abbrev_defs file I have this: (define-abbrev-table 'global-abbrev-table '( ("8rev" "Reviewed-by: Daniel P. Berrangé <berrange@xxxxxxxxxx>" nil 1) ("8ack" "Acked-by: Daniel P. Berrangé <berrange@xxxxxxxxxx>" nil 1) ("8test" "Tested-by: Daniel P. Berrangé <berrange@xxxxxxxxxx>" nil 1) ("8sob" "Signed-off-by: Daniel P. Berrangé <berrange@xxxxxxxxxx>" nil 1) )) Now, if I type the "8rev" [1] and then hit space-bar or enter, emacs expands it to the full "Reviewed-by: ....blah blah blah..." line. This makes adding the full tags just as quick & easy as it was to type a traditional "ACK". Anyone have an equivalent tip for Vim ? Perhaps we could add them to the hacking file.
Since we're sharing O:-) I had a script that extracted the mail from the 'From' mail header, so that you can reply from any address and don't need to change it. It also jumps to a newline in case you are not in start of the line. It'd be trivial to modify for arbitrary tags, of course. #+begin_src emacs-lisp (defun npx/message-get-from () "Get the address from the 'From' field of the current message" (save-excursion (goto-char (point-min)) (let ((beg (search-forward "From: ")) (end (line-end-position))) (buffer-substring-no-properties beg end)))) (defun npx/insert-tag-reviewed-by () "Inserts 'Reviewed-by: Real Name <email>' in the current position in buffer" (interactive) (let ((from (npx/message-get-from))) (when (not (equalp (point) (line-beginning-position))) (move-end-of-line nil) (newline 2)) (insert "Reviewed-by: " from) (newline))) (global-set-key (kbd "C-c r") 'npx/insert-tag-reviewed-by) #+end_src HTH, Martin
Regards, Daniel [1] Why the leading "8" you might ask ? I've no idea. I just got this tip from QEMU developers - guess you just want some character seq that you're unlikely to want to type for real, to avoid accidental expansions. -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list
Attachment:
signature.asc
Description: Digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list