DocViewモードの代わりにevinceを使用してPDFを開きたい。 'evince'のような特定のコマンドでファイルを開く可能性はありますか?
はい。ファイルに対してShellコマンドを実行するには、dired中に!
を使用します。
evince
の場合、コマンドを非同期で実行する&
を使用する方が賢明です。したがって、PDF開いた。
それを行う方法は複数あります。 OpenWith ライブラリをお勧めします。ケースの設定は次のようになります。
(add-to-list 'load-path "/path/to/downloaded/openwith.el")
(require 'openwith)
(setq openwith-associations '(("\\.pdf\\'" "evince" (file))))
(openwith-mode t)
dired
とfind-file
の両方から機能するファイルハンドラーを設定します。
これを試して。
(defun dired-open-file ()
"In dired, open the file named on this line."
(interactive)
(let* ((file (dired-get-filename nil t)))
(message "Opening %s..." file)
(call-process "gnome-open" nil 0 nil file)
(message "Opening %s done" file)))
!
を使用してファイルを開き、コマンドを指定できます。
Windowsではよく使っています!そして「エクスプローラー」コマンドでPDF/Word/Excelを開きます。
(defun dired-open()
(interactive)
(setq file (dired-get-file-for-visit))
(setq ext (file-name-extension file))
(cond ((string= ext "pdf")
;; Shell-quote-argument escapes white spaces on the file name
(async-Shell-command (concat "zathura " (Shell-quote-argument file))))
((string= ext "epub")
(async-Shell-command (concat "zathura " (Shell-quote-argument file))))
((string= ext "rar")
(async-Shell-command (concat "file-roller " (Shell-quote-argument file))))
((string= ext "Zip")
(async-Shell-command (concat "file-roller " (Shell-quote-argument file))))
(t (dired-find-file))))