2013-02-25 69 views
0

有时,由文本编辑器进行语法高亮解析是不准确的。通常情况下,在ruby模式下引入heredoc会扰乱emacs上的语法高亮,如this question。我有问题,这样的情况:评论字符串修复emacs ruby​​模式突出显示

<<_ 
    some here doc content 
    ... 
    last line of the intended heredoc 
_ 
this_ruby_code_line_and_any_line_after_it_is_highlightened_as_part_of_heredoc 

我不希望在emacs的红宝石的模式下,这一个解决方法,但有某种评论串的,我一般把定界符和下面的Ruby之间代码以重置突出显示问题?当我还没有定界符,但与时髦的字符串(特别是那些包括引号),有时,把一个字符串评论像

#"'` 

在该行的最后解决问题的问题。是否有这样的事情来解决heredoc的问题,而且,有没有可以更普遍地使用的字符串?

+0

虽然我不能重现与我的emacs安装的错误,我会建议使用的东西“关闭”的符号,导致问题。在你的情况下,可能像'#_ >>'一样。 – mudasobwa 2013-02-25 06:23:33

+0

对不起,我懒惰。我喜欢阅读Ruby或PCRE中的正则表达式,但我没有足够的精力挖掘ruby-mode.el并在emacs lisp中读取正则表达式。 – sawa 2013-02-25 06:24:09

+0

@mudasobwa谢谢,但它没有奏效。 – sawa 2013-02-25 06:24:43

回答

1

在Emacs trunk构建中适合我。

尝试更新的Emacs版本(我确定它可以在即将推出的24.3版本中运行,但也许在当前版本中),并且/或者确保您使用的是与Emacs捆绑的ruby-mode,未安装通过ELPA等:

ELISP> (require 'which-func) 
which-func 
ELISP> (find-library-name "ruby-mode") 
"/home/gutov/emacs-bzr/trunk/lisp/progmodes/ruby-mode.el" 
+0

谢谢,我升级到emacs 24,问题已解决。 – sawa 2013-02-25 07:10:40