[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#4377: allow one to still choose xpdf instead of doc-view

From: jidanni
Subject: bug#4377: allow one to still choose xpdf instead of doc-view
Date: Wed, 09 Sep 2009 02:28:42 +0800

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 <address@hidden> writes:

>>>>> address@hidden 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.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]