【问题标题】:Ace Editor - Remove error for specific syntaxAce Editor - 删除特定语法的错误
【发布时间】:2015-02-17 16:15:53
【问题描述】:

我正在尝试使 ace 编辑器不将以下内容视为“不正确的语法”并用于模板。目前,我还没有找到任何类似的东西可以帮助我使用 ace 并对其进行编辑。我找到的最接近的是Ace editor: customizing syntax error gutter,它并没有真正为我指明方向?

我想要它,所以 ace 不会解释:

var derp = %{ (whatever can go in here) }%;

%{ 和 %{ 分别作为错误。

【问题讨论】:

    标签: javascript editor ace-editor


    【解决方案1】:

    Ace 使用 jshint 进行语法检查,这不是很可扩展。 如果您没有更好的语法检查器,可以尝试连接到 https://github.com/ajaxorg/ace/blob/v1.1.8/lib/ace/mode/javascript_worker.js#L118 并用expression/* ... */ 替换%{ ... }%

    value.replace(/%\{([^}]|}[^%])*}%/g, "window/*$1*/")
    

    需要表达式来保持 js 的有效性和注释来保持行

    【讨论】:

    • 是的,基本上因为你使用不同的语言,你需要创建一个新版本的worker。您也可以尝试在 github 上打开一个问题,以防他们同意在将其传递给 jshint 之前添加一个用于源转换的钩子
    • 这不允许我为此添加自定义代码着色,并且似乎也取消了注释代码着色。
    • 我的回答只是关于语法检查,它不会以任何方式影响着色。如果您对突出显示也有疑问,请更新您的问题,或创建一个新问题。
    • 谢谢@auser,我想要这样的html,这为我指明了正确的方向
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多