Notepad ++函数列表插件:Javascript解析规则以支持嵌套函数

时间:2009-10-27 21:15:32

标签: javascript notepad++

[使用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'

列出 parentA parentB 功能,但 childA childB 功能列出。这种嵌套子范式在Javascript库和可重用代码中很常见,对于在函数列表中完全可导航非常重要。

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

有什么建议吗?有没有人为自己的用途完成了这个?我可能是愚蠢的,但是我会疯狂地试图找出这个 - 请帮助! ;)

1 个答案:

答案 0 :(得分:2)

删除“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>

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