我想创建一个命令行可执行文件,它将生成一个emacs窗口/应用程序。
我在互联网上搜索,发现X11窗口不支持Mac附带的emacs所以,我从http://emacsformacosx.com/下载了最新的emacs并将其安装在我的mac中。
然后我去了/ usr / bin目录并创建一个符号链接:
sudo ln /Applications/Emacs.app/Contents/MacOS/Emacs xemacs
当我用./xemacs运行这个符号链接时,它说(。表示/ usr / bin):
警告:与arch相关的数据目录 (/Users/david/src/emacs-dev/ftp-versions/emacs-24.2/nextstep/Emacs.app/Contents/MacOS//libexec/emacs/24.2/x86_64-apple-darwin/) 不存在。警告:与arch无关的数据目录 (/Users/david/src/emacs-dev/ftp-versions/emacs-24.2/nextstep/Emacs.app/Contents/Resources/share/emacs/24.2/etc/) 不存在。错误:找不到charsets目录: /Users/david/src/emacs-dev/ftp-versions/emacs-24.2/nextstep/Emacs.app/Contents/Resources/share/emacs/24.2/etc/charsets 没有字符映射文件,Emacs将无法正常运行。 请检查您的安装!
但如果我在目录/Applications/Emacs.app/Contents/MacOS/中运行Emacs二进制文件,它会启动应用程序而不会出现任何错误。
任何人都知道如何解决这个问题?
答案 0 :(得分:3)
到目前为止,我认为最好的方法是在/ usr / bin下创建一个可执行脚本,它将执行二进制文件/Applications/Emacs.app/Contents/MacOS/Emacs。我没有使用“open”命令的原因是我需要使用一些Emacs二进制参数。与“open”相比,这种方法可以产生多个emacs实例。
脚本是:
#! /bin/sh
/Applications/Emacs.app/Contents/MacOS/Emacs "$@"
然后通过执行chmod + x script.sh
使其可执行然后制作符号链接
ln -s“/usr/local/bin/script.sh”/ usr / local / bin / xemacs
答案 1 :(得分:2)
您可以使用别名:alias emacs="open -a Emacs --args <youroptions>
。
选项--args
允许您将选项直接传递给emacs(例如,-q
避免评估init脚本。)