emacsclient -t <somefile> 导致“*错误*:无法打开文件:/dev/tty4”

问题描述

我希望能够调用在 X 中运行的 Emacs 会话以在我的虚拟控制台上打开框架。为了让您了解我已采取的步骤:

  1. 使用 startx 命令启动 X,该命令会启动 Emacs(运行 EXWM)。

  2. 使用函数 (server-start) 启动 Emacs 服务器。

  3. Ctrl + Alt + F4 打开虚拟控制台。

  4. 使用与正在运行的 Emacs 服务器相同的用户帐户登录

  5. 运行 emacsclient -t <somefile> 以打开一个新的 Emacs 控制台框架,该框架将充当启动服务器的 X 会话 Emacs 的客户端。

但是当我运行 emacsclient -t <somefile> 命令时,我在此线程的标题中收到错误消息:*ERROR*: Could not open file: /dev/tty4

如果我只运行 emacsclient <somefile>,该文件会在启动服务器的 Emacs 的 X 会话中打开并按预期运行。


编辑


当我 ls -l /dev/ 时,我可以看到 /dev/tty4,它似乎对所有人都拥有 w 权限,尽管与 /dev/tty{1|2|3} 不同,后者归我的用户所有,/dev/tty4 归 root 所有。

然后我尝试在 tty2 中运行命令 emacsclient -t <somefile>,瞧,它奏效了。

所以我想现在的问题是,为什么 tty4 归 root 所有,为什么这会阻止 emacsclient 在 tty4 上运行。我相信有些人会问为什么这很重要,我应该在其他 tty 之一上运行它,但是我直接从 tty 运行了很多程序,而不是从 X 终端仿真器,作为我的窗口管理器,EXWM 是有点不稳定。另外,这只是我想理解的一个谜题。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)