如何在Windows 10右键菜单添加带指定参数的EmacsClient选项以打开文件
如何在Windows 10右键菜单添加带指定参数的EmacsClient选项以打开文件
我太懂你这种情况了——用EmacsClient配合后台服务来提速,但Windows自带的「打开方式」根本没法带上-c和-a ""这些关键参数,折腾注册表踩坑太正常了。下面给你一套亲测有效的步骤,一步步来就能搞定:
一、给单个文件添加右键选项(点击文件时显示)
- 按下Win+R,输入
regedit回车打开注册表编辑器; - 导航到路径:
HKEY_CLASSES_ROOT\*\shell; - 右键点击
shell项,选择「新建→项」,把新项命名为Open with EmacsClient(这个名称会直接显示在右键菜单里,你可以改成自己喜欢的名字); - 在刚建好的这个项里,右键「新建→字符串值」,命名为
Icon,双击它把值设为EmacsClient的路径:"C:\Program Files\Emacs\emacs-29.4\bin\emacsclientw.exe"(这样右键菜单会显示Emacs的图标,辨识度更高); - 再右键点击刚才的Open with EmacsClient项,新建一个名为
command的子项; - 选中
command项,双击右侧的(默认)值,把它改成:
这里的"C:\Program Files\Emacs\emacs-29.4\bin\emacsclientw.exe" -c -a "" "%1"%1是关键,它会把你右键点击的文件路径传递给EmacsClient,没它的话程序不知道要打开哪个文件。
二、给文件夹空白处添加右键选项(打开当前目录)
如果需要在文件夹空白处右键也能快速打开EmacsClient并定位到当前目录,可以接着做这些:
- 在注册表编辑器里导航到:
HKEY_CLASSES_ROOT\Directory\Background\shell; - 同样新建一个项,命名为Open EmacsClient Here,再添加
Icon字符串值(路径和上面一样); - 新建
command子项,把(默认)值改成:
这里的"C:\Program Files\Emacs\emacs-29.4\bin\emacsclientw.exe" -c -a "" "%V"%V代表当前文件夹的路径,能让EmacsClient直接定位到该目录。
三、验证效果
修改完不用重启注册表编辑器,直接右键点击一个文件或者文件夹空白处,就能看到你添加的选项了。点击后就会用带参数的EmacsClient打开目标文件或目录,完美适配你的后台服务模式。
要是你之前的注册表修改没生效,大概率是这两个问题:要么没加%1/%V参数,要么是路径或参数的引号没配对好——记得有空格的路径必须用双引号括起来,参数部分也要保持格式正确。
备注:内容来源于stack exchange,提问作者Celdor
相关产品推荐
相关产品推荐

