【问题标题】:Setting up .emacs file for mac ruby development为 mac ruby​​ 开发设置 .emacs 文件
【发布时间】:2011-01-05 21:23:31
【问题描述】:

我很难在我的 mac 上的 emacs 中加载 ruby​​-mode。

.emacs 文件位于 ~/.emacs 我已经向它添加了几个命令(许多从这个站点粘贴),但似乎没有一个被加载。有什么建议吗?我不确定是文件没有加载还是我的命令语法错误。

我只需要以下内容

  • 4 个空格缩进(自动缩进也很好)
  • 为 .rb 文件加载了 ruby​​ 模式。

谢谢!

【问题讨论】:

    标签: ruby linux macos emacs


    【解决方案1】:

    这就是 emacs 查找 .emacs 文件的方式。

    57.6.4 Emacs 如何找到您的初始化文件

    通常 Emacs 使用环境变量 HOME(参见 HOME)来查找 .emacs;这就是“~”在文件名中的含义。如果在 ~/(也不是 .emacs.el)中找不到 .emacs,Emacs 会查找 ~/.emacs.d/init.el(它和 ~/.emacs.el 一样,可以进行字节编译)。

    但是,如果您从 su 启动的 shell 运行 Emacs,Emacs 会尝试查找您自己的 .emacs,而不是您当前假装的用户。这个想法是,即使您以超级用户身份运行,您也应该获得自己的编辑器自定义。

    更准确地说,Emacs 首先确定要使用哪个用户的 init 文件。它从环境变量 LOGNAME 和 USER 中获取您的用户名;如果这些都不存在,则它使用有效的用户 ID。如果该用户名与真实用户 ID 匹配,则 Emacs 使用 HOME;否则,在系统的用户数据库中查找该用户名对应的主目录。

    来自http://www.gnu.org/software/emacs/manual/html_node/emacs/Find-Init.html#Find-Init

    【讨论】:

    • poulh$ echo $HOME /Users/poulh poulh$ ls $HOME/.emacs /Users/poulh/.emacs 感谢您的评论。从阅读看来,我的 .emacs 似乎在正确的位置......我错了吗?谢谢。
    【解决方案2】:

    (warn "Loading .emacs") 行作为.emacs 的第一行。当您启动 emacs 时,它会在警告缓冲区中显示该消息吗?如果是这样,它至少开始加载文件。

    如果这不起作用,请尝试在 emacs 中打开文件,然后运行 ​​M-x eval-buffer

    此外,在启动时,Messages 缓冲区是否指示 .emacs 中的任何错误?这是 .emacs 不生效的最常见原因。

    【讨论】:

    • 成功了!我看到了警告。谢谢。所以......现在看来我的语法不正确。您(或其他任何人)是否知道我需要添加什么才能默认加载 ruby​​ 模式(我的意思是语法高亮和缩进帮助)?再次感谢。
    • (add-to-list 'load-path "/path/to/ruby/mode") (require 'ruby-mode) 这两行就足够了。将 /path/to/ruby/mode 更改为包含 ruby​​-mode.el 的实际目录 此外,在运行时通过“Mx customize-group ruby​​”设置缩进级别等内容可能更容易,没有安装 ruby​​ 模式,并且不是 ruby​​ 程序员,不知道 ruby​​ 模式提供的具体选项
    • 谢谢贾斯汀。我让它工作了。这是我的做法。我去了这个站点并下载了 rdoc-mode.el 文件并将其放在 ~/:svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/misc/… 我将以下行添加到我的 .emacs 文件(也位于 ~/)(add-to-list ' load-path "~/rdoc-mode.el") (需要 'ruby-mode) 当我加载一个 .rb 文件时,它被正确地点亮了。作为说明,我有 emacs 21,从这个站点看来这个文件包含在 emacs 23 中:emacswiki.org/emacs/RubyMode
    • 您可以将 (add-to-list 'load-path "~/rdoc-mode.el") 换成 (add-to-list 'load-path "~/")加载路径只需要指向目录即可,不需要指定文件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多