emacs 不能与 xdg-open 一起使用

RCV*_*RCV 4 emacs xdg-open 15.04

我在 ubuntu 15.04 上使用 emacs 24.4.1。不知何故,如果我从 emacs 运行 xdg-open,它就不起作用。例如,如果我在 eshell 中运行“xdg-open 1.pdf”或“gvfs-open 1.pdf”,它们将不起作用。同时,“evince 1.pdf”运行完美。

小智 6

前两个答案对我不起作用:

  • (setq process-connection-type nil)坏了org-plot/gnuplot
  • setsid xdg-open ...工作了一段时间,但后来由于某种原因停止了。

现在我使用setsid -w,据说它会setsid等待被调用的程序完成。

如果有人需要它,我将其与 AUCTeX 一起使用(我在尝试修复 Arch linux 上的 AUCTeX 行为时发现了这个问题),并且我的TeX-command-list设置为

(quote
 ( 
  ;; ...
  ("View" "setsid -w xdg-open %s.pdf" TeX-run-command t t :help "Run Text viewer")
  ;; ...
  )
Run Code Online (Sandbox Code Playgroud)

目前看来效果还不错...


小智 5

使用setsid xdg-open 1.pdf对我有用。问题似乎在于,他们在孩子完成工作之前就回来了gvfs-openxdg-open当这种情况发生时,Emacs 可能会杀死它们的控制终端,杀死子进程,并停止evince正常打开。setsid设置 emacs 不会关闭的新控制终端。