[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
allow one to still choose xpdf instead of doc-view
- From: jidanni@xxxxxxxxxxx
- Date: Wed, 09 Sep 2009 02:28:42 +0800
- X-ml-name: emacs-w3m
- X-mail-count: 11055
- References: <b4md4632pdu.fsf@xxxxxxx>
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 <yamaoka@xxxxxxx> writes:
>>>>> jidanni@xxxxxxxxxxx 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.