jen*_*wan 1 emacs svn aquamacs macos
是否可以使用 Aquamacs 作为 Subversion 的编辑器。例如,如果我这样做
svn propedit svn:ignore .
Run Code Online (Sandbox Code Playgroud)
并且我将 EDITOR 变量设置为“emacs”,它将使用 GNU emacs 作为编辑器来编辑该属性。
在我的 .profile 中,我已经
alias emacs="open -a /Applications/Aquamacs.app/"
Run Code Online (Sandbox Code Playgroud)
所以打电话
emacs foo.bar
Run Code Online (Sandbox Code Playgroud)
在 Aquamacs 中打开文件。
将 EDITOR 变量设置为“emacs”无法使用 Aquamacs。将 EDITOR 设置为 '"open -a /Applications/Aquamacs.app/"' 确实会在 Aquamacs 中打开文件,但由于 open 不是阻塞命令(我猜),Subversion 会立即在终端中继续运行,就好像什么都没有进入。换句话说,它不会等待用户的编辑。
我不知道是否可以调用 open 以阻止它,或者 OSX Terminal 中是否还有另一个命令。显然,我不知道阻塞是否会起作用,因为它究竟会阻塞什么?
您应该将 EDITOR 设置为emacsclient而不是 emacs。这是 emacs 内部服务器的客户端接口。
配置(一次):
$EDITOR为 emacsclient:export EDITOR=emacsclient(server-start)你的.emacs启动文件当您运行svn commit,crontab它使用或其他命令$EDITOR,该文件将在Emacs打开。当你完成编辑,打C-x #回控制svn,crontab等等。
在emacs 服务器上的 stackoverflow和 emacs 文档中查看这个问题并调用 emacsclient。
更新:我使用标准的 emacs 构建,而不是 Aquamacs,所以我在谷歌上搜索 Aquamacs 和 emacsclient 是否需要任何特殊技巧。在 emacs wiki Aquamacs FAQ 上,我发现了这个片段:
为了使用“aquamacs”和“emacsclient”命令行工具,从Aquamacs菜单栏,Tools->Install Command Line Tools。如果您要升级 Aquamacs,您可能需要重新安装命令行工具。
我想如果你不这样做,你将使用emacsclientOS X 附带的,它可能不会向 Aquamacs 发送正确的消息。重新安装命令行工具。
| 归档时间: |
|
| 查看次数: |
1550 次 |
| 最近记录: |