emacs: use def instead of initial-input for notmuch-show-browse-urls

This is the non-deprecated way to use completing-read. Additionally
the old use was broken when using ivy for completing-read. For user's
using completing-read-default they won't see the default URL now, but
if they hit enter it will be visited. Alternatively they can select
it with M-n.

From the completing-read documentation for initial-input:

 This feature is deprecated--it is best to pass nil for INITIAL-INPUT
 and supply the default value DEF instead.  The user can yank the
 default value into the minibuffer easily using M-n.

Additionally collection is now all urls, rather than all but the
first. I'm not sure why "(cdr urls)" was previously done.
This commit is contained in:
Keegan Carruthers-Smith 2020-04-13 21:58:19 +02:00 committed by David Bremner
parent f28e0a9337
commit e083987338

View file

@ -2559,7 +2559,7 @@ browsing."
(prompt (if kill "Copy URL to kill ring: " "Browse URL: ")) (prompt (if kill "Copy URL to kill ring: " "Browse URL: "))
(fn (if kill #'kill-new #'browse-url))) (fn (if kill #'kill-new #'browse-url)))
(if urls (if urls
(funcall fn (completing-read prompt (cdr urls) nil nil (car urls))) (funcall fn (completing-read prompt urls nil nil nil nil (car urls)))
(message "No URLs found.")))) (message "No URLs found."))))
(provide 'notmuch-show) (provide 'notmuch-show)