【问题标题】:Notepad++ Function List plugin: Javascript parsing rules to support nested functionsNotepad++ 函数列表插件:支持嵌套函数的 Javascript 解析规则
【发布时间】:2009-10-27 21:15:31
【问题描述】:

[使用Notepad++ 5.5.1和函数列表插件v2.0beta]

我正在尝试添加或修改 Javascript 函数的现有规则,以便在函数列表中显示嵌套(或成员)函数。例如:

function parentA (base){
  function childA (exp){
    return Math.pow(base, exp);
  }

  alert(childA(2)); // call private function
}

parentA(4); // alerts 4^2 = 16


var parentB = function(str1){
  return {
    childB: function(str2){
      alert(str1 + str2);
    }
  };
}('foo');

parentB.childB('bar'); // alerts 'foobar'

parentAparentB 函数已列出,但 childAchildB 函数未列出 列出。这种嵌套子范式在 Javascript 库和可重用代码中很常见,并且在函数列表中完全可导航很重要。

这可以通过组和/或子组来完成吗?我已经尝试挖掘其他基于类的语言的解析规则(使用子组列出成员函数),但我似乎无法让它适用于 Javascript。

有什么建议吗?有没有人为自己使用完成这个?我可能很愚蠢,但我想弄清楚这个我会发疯 - 请帮助! ;)

【问题讨论】:

    标签: javascript notepad++


    【解决方案1】:

    去掉“body begin”和“body end”字符就可以了:

    <Group name="Functions" subgroup="" icon="" child="" autoexp="0" matchcase="0" fendtobbeg="" bbegtobend="" keywords="">
         <Rules regexbeg="^\s*function" regexfunc='\s*[&quot;\w_]+' regexend="" bodybegin="" bodyend="" sep="" />
    </Group>
    

    (此示例仅适用于您作为示例的第一类函数)

    【讨论】:

    • 谢谢!我一直在使用 SourceCookifier 插件(非常出色)而不是 FunctionList,所以我无法测试它来验证 - 但我会接受它的努力;)
    猜你喜欢
    • 1970-01-01
    • 2017-06-18
    • 1970-01-01
    • 2021-07-12
    • 2013-11-21
    • 2015-04-22
    • 2019-10-03
    • 2020-05-16
    • 1970-01-01
    相关资源
    最近更新 更多