代码之家  ›  专栏  ›  技术社区  ›  hatmatrix

为Aquamacs shell定义bash别名

  •  0
  • hatmatrix  · 技术社区  · 14 年前

    对于Emacs,您可以在.Emacs.d/init中定义shell模式别名_bash.sh,但是Aquamacs(在osx10.5上是2.0)似乎没有使用这个。有没有其他地方可以定义这些?

    2 回复  |  直到 14 年前
        1
  •  1
  •   Nils Fagerburg    14 年前

    从shell.el:

    如果一个文件 ~/.emacs_SHELLNAME' exists, or 作为初始输入(但是 shell在返回时丢弃输入 启动)。缓冲器放在壳里 模式,发出发送命令 输入和控制 贝壳。看到了吗 shell-mode'. See also the variable “shell提示模式”。

    所以你可以试试看 ~/.emacs\u bash 作品。

        2
  •  1
  •   christopherbalz    13 年前

    为我解决:我做了两个改变,似乎做到了这一点(我以前做过Aquamacs->工具->安装命令行工具)。更改是:a)删除我创建的“~/.emacs\u bash”符号链接;b) 创建一个“~/.bashrc”文件,其中包含对我的别名设置脚本的调用;c) 从“~/.bash\u profile”调用“~/.bashrc”(将导出的环境变量保留在~/.bash\u profile”中它们所属的位置)。

    Aquamacs似乎将“/usr/bin:/bin:/usr/sbin:/sbin:/usr/texbin”附加到它从“~/.bash\u profile”获得的路径上,但这似乎不是问题。

        • 我以前的回答和问题:

    从“~/.emacs\u bash”到“~/.bash\u profile”的符号链接成功地使“~/.bash\u profile”在Aquamacs上执行,因此shell缓冲区具有一些所需的设置(别名)。

    但是,需要配置Aquamacs,以便每个Aquamacs会话执行一次“~/.bash\u profile”,每个Aquamacs shell执行一次“~/.bashrc”?否则,例如使用从“~/.emacs\u bash”到“~/.bash\u profile”的链接,串联的shell变量(通常是$PATH)会在其中获得大量冗余值。

    在*nix和Cygwin On NT上,GNU Emacs与“.bash\u profile”和“.bashrc”一起开箱工作,按预期方式:“.bash\u profile”在*nix系统上执行一次,所有shell(包括Emacs shell缓冲区)都从中获取变量。类似地,“.bashrc”每个*nix shell执行一次,包括Emacs shell缓冲区。

    有没有人对如何让Aquamacs也这么做有什么建议?