在 .tern_project 文件中找出 JavaScript 用于 Vim 自动补全的库
Figuring out JavaScript libraries for Vim autocompletion with TernJS in .tern_project file
我喜欢 vim 并希望继续使用它进行 Web 开发,尽管我正在努力使用正确的库设置我的 .tern_project 文件,我需要进行自动完成。我对 JavaScript 比较陌生,但到目前为止我所拥有的东西使它更容易学习。
我能找到的示例不多,我已经尝试阅读 documentation,但我对它的了解还不足以提供帮助。到目前为止,我的 .tern_project 文件如下所示:
{
"libs": [
"browser",
"ecma6"
],
"plugins": {
"requirejs": {
"baseURL": "./",
"paths": {}
}
}
}
我真的不知道插件的作用,但我暂时把它们留在里面,在库中,ecma6 确实帮助我处理了所有数组方法(即 forEach 等)。现在我的问题是如何将 console.table() 之类的内容添加到自动完成中?
我需要将哪个库添加到 .tern_project 文件?
此外,我乐于接受有关更好的 Web 开发环境的建议。
此时你得到的只是tern的默认补全!!!你的 .tern_project 对 tern 建议的完成没有任何影响,因为 tern 配置文件是 .tern-project;它是 Dash 而不是 underscore。所以先重命名它。
.tern-project 是一个 json 配置文件,它告诉 tern 它应该通过两个 属性: libs 建议完成什么 和 插件.
plugins 与 libs 没有太大区别,它们告诉 tern 还建议您另外指定这些补全到库。
例如,在您的 .tern-project 文件中,您选择使用 requirejs 插件。所以如果你使用 requirejs library 这是一个模块加载器并帮助编写客户端模块化代码,那么它会完成来自其他模块的变量、函数和方法。
console是一个节点的全局。并完成节点的东西你应该添加 node 插件。所以你的 .tern-project 文件应该是这样的:
{
"libs": [
"browser",
"ecmascript"
],
"plugins": {
"node": {}
}
}
注意 我用 ecmascript
代替了 ecma6
。在以前的版本中,tern 有 ecma5
和 ecma6
库,但在最新版本中,这两个库合并在一个库中,名为:ecmascript
.
可用燕鸥列表libs:
- 浏览器
- 柴
- ecmascript
- jquery
- 反应
- 下划线
您始终可以从 tern js repository defs directory
获取更新的库列表
可用的 tern 列表 插件 :
- angular
- commonjs
- complete_strings
- doc_comment
- es_modules
- 节点
- 需要
- webpack
您随时可以从 tern js repository plugin directory
获得更新的插件列表
随着您的 javascript 技能的提高,请添加并使用库和插件,看看您能完成什么。另请注意,您可以有多个 .tern-project 文件。 Tern 将始终向上搜索到根目录并使用最近的目录。所以你可以在项目的基础上配置完成。
我喜欢 vim 并希望继续使用它进行 Web 开发,尽管我正在努力使用正确的库设置我的 .tern_project 文件,我需要进行自动完成。我对 JavaScript 比较陌生,但到目前为止我所拥有的东西使它更容易学习。
我能找到的示例不多,我已经尝试阅读 documentation,但我对它的了解还不足以提供帮助。到目前为止,我的 .tern_project 文件如下所示:
{
"libs": [
"browser",
"ecma6"
],
"plugins": {
"requirejs": {
"baseURL": "./",
"paths": {}
}
}
}
我真的不知道插件的作用,但我暂时把它们留在里面,在库中,ecma6 确实帮助我处理了所有数组方法(即 forEach 等)。现在我的问题是如何将 console.table() 之类的内容添加到自动完成中?
我需要将哪个库添加到 .tern_project 文件?
此外,我乐于接受有关更好的 Web 开发环境的建议。
此时你得到的只是tern的默认补全!!!你的 .tern_project 对 tern 建议的完成没有任何影响,因为 tern 配置文件是 .tern-project;它是 Dash 而不是 underscore。所以先重命名它。
.tern-project 是一个 json 配置文件,它告诉 tern 它应该通过两个 属性: libs 建议完成什么 和 插件.
plugins 与 libs 没有太大区别,它们告诉 tern 还建议您另外指定这些补全到库。
例如,在您的 .tern-project 文件中,您选择使用 requirejs 插件。所以如果你使用 requirejs library 这是一个模块加载器并帮助编写客户端模块化代码,那么它会完成来自其他模块的变量、函数和方法。
console是一个节点的全局。并完成节点的东西你应该添加 node 插件。所以你的 .tern-project 文件应该是这样的:
{ "libs": [ "browser", "ecmascript" ], "plugins": { "node": {} } }
注意 我用
ecmascript
代替了ecma6
。在以前的版本中,tern 有ecma5
和ecma6
库,但在最新版本中,这两个库合并在一个库中,名为:ecmascript
.
可用燕鸥列表libs:
- 浏览器
- 柴
- ecmascript
- jquery
- 反应
- 下划线
您始终可以从 tern js repository defs directory
获取更新的库列表可用的 tern 列表 插件 :
- angular
- commonjs
- complete_strings
- doc_comment
- es_modules
- 节点
- 需要
- webpack
您随时可以从 tern js repository plugin directory
获得更新的插件列表随着您的 javascript 技能的提高,请添加并使用库和插件,看看您能完成什么。另请注意,您可以有多个 .tern-project 文件。 Tern 将始终向上搜索到根目录并使用最近的目录。所以你可以在项目的基础上配置完成。