Subject: Re: bug#18132: Time for a smarter dired-guess-shell-alist-default? (dired-x.el)

From: Juri Linkov <[email-masked]>
Date: Wed, 30 Jul 2014 19:32:58 +0300

>> run-mailcap is fully supported by shell-command and async-shell-command where
>> the list of available commands can be accessed using M-n in its minibuffer.
>
> I can't see any mention of run-mailcap in the Emacs source; do you mean
> simply that it's possible to add it to the list of commands used?

grep -nH mailcap *.el
./dired-aux.el:558:(declare-function mailcap-file-default-commands "mailcap" (files))
./dired-aux.el:562:This function is used to add all related commands retrieved by `mailcap'
./dired-aux.el:565:  (let ((commands (and (boundp 'files) (require 'mailcap nil t)
./dired-aux.el:566:		       (mailcap-file-default-commands files))))
./simple.el:2743:(declare-function mailcap-file-default-commands "mailcap" (files))
./simple.el:2748:This function is used to add all related commands retrieved by `mailcap'
./simple.el:2754:	 (commands (and filename (require 'mailcap nil t)
./simple.el:2755:			(mailcap-file-default-commands (list filename)))))

> My original point is that they're not currently used; instead there is a
> custom list that has to be configured separately by the user from either of
> these.

We could leave the original list intact, and add xdg-open/w32-shell-execute
to the top of the list, so it would be the first suggestion that the user
will get after the first M-n.

There is a good example how to check its availability in
`browse-url-can-use-xdg-open' that could be moved
to a more general file like simple.el.