使用 emacs 服务器模式

启用 emacs 服务器模式

有几种方法可以达到目的,不过最简单的是用 systemd 启动。

systemctl --user enable emacs
systemctl --user start emacs

将 emacsclient 设为默认的编辑器

将以下内容保存为~/.local/share/applications/emacsclient.desktop:

[Desktop Entry]
Name=Emacs (Client)
GenericName=Text Editor
Comment=Edit text
MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
Exec=emacsclient -c -a "emacs" %F
Icon=emacs
Type=Application
Terminal=false
Categories=Development;TextEditor;Utility;
StartupWMClass=Emacs

系统主菜单里会出现 “Emacs (Client)” 条目。

然后进入所使用的桌面环境的设置中心,将 “Emacs (Client)”设为默认的编辑器。以我正在用的 Linux Mint 为例:

系统设置 -> 首选应用程序

将 “纯文本” 和 “源代码” 的默认程序都改为 "Emacs(Client)"。

解决在 Emacs Client 中无法切换 fcitx 输入中文的问题

cd ~/.config/systemd/user/default.target.wants/

rm -rf emacs.service

cp /usr/lib/systemd/user/emacs.service .

emacs emacs.service

[Service] 下面添加一行:

Environment="LC_CTYPE=zh_CN.UTF-8" "XMODIFIERS=@im=fcitx"

C-x C-s
C-x C-c

systemctl --user daemon-reload
systemctl --user restart emacs

随便找个文本文件双击试试看?

上一篇:Redis 源码简洁剖析 16 - 客户端


下一篇:jBridge让AI算力落地的桥联框架技术