[emacs-w3m:11055] allow one to still choose xpdf instead of doc-view
| Newsgroups | gmane.emacs.w3m,gmane.emacs.pretest.bugs |
|---|---|
| Message-ID | <[email protected]> |
My god, that's tons and tons of lisp to add to one's .emacs file, just to say "I wish to have emacs still call xpdf when encountering a .pdf file, like back before they introduced doc-view". I'm filing an emacs-pretest-bug so they will make it easier to allow one to choose if one wants doc-view, or stick with xpdf. >>>>> "KY" == Katsumi Yamaoka <[email protected]> writes: >>>>> [email protected] wrote: >> The only way to get xpdf called on them is via dired-do-shell-command, >> which knows about xpdf. KY> Is what you want the one like this? KY> (defadvice dired-view-file (around use-xpdf activate) KY> "Use xpdf to view a pdf file." KY> (unless (let ((file (dired-get-file-for-visit))) KY> (and (not (file-directory-p file)) KY> (let ((case-fold-search t)) KY> (string-match "\\.pdf\\'" file)) KY> (prog1 KY> t KY> (call-process "xpdf" nil nil nil file)))) KY> ad-do-it)) KY> The `v' key in the dired buffer uses xpdf to display a file iff KY> its extension is ".pdf". KY> Otherwise, KY> (autoload 'mailcap-parse-mailcaps "mailcap" nil t) KY> (autoload 'mm-mailcap-command "mm-decode") KY> (defadvice dired-view-file (around use-mailcap-mime-data activate) KY> "Use an external viewer to view a file according to `mailcap-mime-data'." KY> (unless (let ((file (dired-get-file-for-visit)) KY> extension type command) KY> (and (not (file-directory-p file)) KY> (progn KY> (mailcap-parse-mailcaps) KY> (setq extension (file-name-extension file))) KY> (setq type (mailcap-extension-to-mime extension)) KY> (setq command (mailcap-mime-info type)) KY> (setq command (mm-mailcap-command command file nil)) KY> (prog1 KY> t KY> (shell-command command)))) KY> ad-do-it)) KY> There will be other ELisp packages that use external viewers. KY> `gnus-dired-find-file-mailcap' is it, though it may not be your KY> taste.