更好的 JavaScript
对 Sublime Text 的 JavaScript 符号列表的修复
详细信息
安装
- 总计 33K
- Win 18K
- Mac 10K
- Linux 6K
8 月 6 日 | 8 月 5 日 | 8 月 4 日 | 8 月 3 日 | 8 月 2 日 | 8 月 1 日 | 7 月 31 日 | 7 月 30 日 | 7 月 29 日 | 7 月 28 日 | 7 月 27 日 | 7 月 26 日 | 7 月 25 日 | 7 月 24 日 | 7 月 23 日 | 7 月 22 日 | 7 月 21 日 | 7 月 20 日 | 7 月 19 日 | 7 月 18 日 | 7 月 17 日 | 7 月 16 日 | 7 月 15 日 | 7 月 14 日 | 7 月 13 日 | 7 月 12 日 | 7 月 11 日 | 7 月 10 日 | 7 月 9 日 | 7 月 8 日 | 7 月 7 日 | 7 月 6 日 | 7 月 5 日 | 7 月 4 日 | 7 月 3 日 | 7 月 2 日 | 7 月 1 日 | 6 月 30 日 | 6 月 29 日 | 6 月 28 日 | 6 月 27 日 | 6 月 26 日 | 6 月 25 日 | 6 月 24 日 | 6 月 23 日 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Windows | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 2 | 0 | 1 | 0 | 1 | 2 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 1 | 2 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 2 | 3 | 0 | 0 | 0 | 0 | 0 |
Mac | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 2 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
Linux | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
说明文件
Sublime Better Javascript
此包是 Sublime Text 的 JavaScript 包的改进版本,主要侧重于改进符号导航。
Sublime Text 中默认的 JavaScript 语言定义具有古怪的符号识别,并将匿名函数、对象实例化甚至对 console.log() 的调用等噪音填充到符号列表中。
该项目修复了 Sublime,使只有命名的函数定义和函数原型属性出现在符号列表中。同时它还修复了这些符号在符号列表中的显示方式,仅显示函数名。
该包已在 Sublime Text 2 和 3 上进行了测试。
安装
通过 package control 安装(搜索“Better JavaScript”)。
或者,将 cd
命令切换到您 Sublime 的包目录,然后
git clone [email protected]:int3h/sublime-better-javascript.git 'Sublime Better JavaScript'
刷新现有文件的符号
在一些情况下,尤其是在 Sublime Text 3 中,先前已打开的文件的符号列表可能不会与改进的符号刷新。
我找到的最可靠的方法是关闭所有打开的 JavaScript 文件并退出 Sublime(重要的是在 Sublime 退出时所有 JS 文件都已关闭。)然后删除您 Sublime 用户数据目录(位于“Packages”目录的父目录中)中的 Index
和 Cache
子目录。在 Mac OS X 上,我还必须删除 ~/Library/Caches/com.sublimetext.3(或 com.sublimetext.2)。
卸载
在卸载 Better JavaScript 之前,请确保关闭所有打开的 JavaScript/JSON 文件,并在您的 Sublime 用户设置中删除“JavaScript”以从“ignored_packages”列表中删除。现在您可以安全地卸载 Better JavaScript 包。
在 Sublime 中看到一些关于无法找到语法文件的错误是正常的。只需退出 Sublime 并重新打开它,然后一切应会修复。
详细信息
默认的 JavaScript.tmLanguage 在将某些令牌放入命名空间方面做出了一些……不寻常的决定。具体来说,它将大量令牌放入 entity.name.* 命名空间中,这些令牌可能不应该在那些命名空间中。
JavaScript包中存在一个文件,Symbol List Banned.tmPreferences
,看似是用来从符号列表中过滤掉一些特定的子命名空间的,但实际上并没有起作用。我已经修改了Symbol List Banned.tmPreferences
,使其专门匹配对象实例化和console.log调用,并将它们设置不在符号列表中显示。
我还修改了Symbol List Function.tmPreferences
,通过正则表达式进行额外的函数名称处理,显示在符号列表之前移除多余的字符(如“function”和“= function()”)。另外还增加了一个文件,Symbol List Prototype.tmPreferences
,将其添加到符号列表中以包含函数原型属性。