我喜欢vim,并希望继续使用它来进行Web开发,尽管我正在努力设置我的.tern_project文件,其中包含我需要自动完成的正确库。我对JavaScript比较陌生,但到目前为止我所做的更容易学习。
我找不到很多例子,我试图阅读documentation,但我不知道它是否有用。到目前为止,我的.tern_project文件如下所示:
{
"libs": [
"browser",
"ecma6"
],
"plugins": {
"requirejs": {
"baseURL": "./",
"paths": {}
}
}
}
我真的不知道插件是做什么的,但是现在我把它们留在了,在库中,ecma6真的帮助了我所有的数组方法(即forForach等)。现在我的问题是如何将console.table()之类的内容添加到自动填充功能中?
我需要将哪个库添加到.tern_project文件中?
此外,我愿意接受有关更好的Web开发环境的建议。
答案 0 :(得分:34)
此时你所拥有的只是默认完成!您的 .tern_project 对tern建议的完成没有任何影响,因为tern配置文件是 .tern-project ;它的短划线不是下划线。所以先重新命名。
.tern-project 是一个json配置文件,通过两个属性告诉它应该建议什么样的完成: libs 和插件。 / p>
插件与 libs 大不相同,他们告诉tern除了lib之外还建议您指定这些完成。
例如,在您的 .tern-project 文件中,您已选择使用 requirejs 插件。因此,如果您使用requirejs library作为模块加载器并帮助编写客户端模块化代码,那么它将完成其他模块中的变量,函数和方法。
控制台是节点的全局。要完成节点内容,您应该添加 node 插件。所以你的 .tern-project 文件应该是这样的:
{
"libs": [
"browser",
"ecmascript"
],
"plugins": {
"node": {}
}
}
注意我已使用ecmascript
代替ecma6
。在以前的版本中,tern有ecma5
和ecma6
个库,但在最新版本中,这两个文件合并在一个名为ecmascript
的库中。
可用燕鸥列表图书馆:
您始终可以从tern js repository defs directory
获取更新的库列表可用的燕鸥插件列表:
您始终可以从tern js repository plugin directory
获取更新的插件列表随着你的javascript技能的增长,你可以添加和使用libs和插件来查看你得到的完成情况。另请注意,您可以拥有多个 .tern-project 文件。 Tern将始终向上搜索根目录并使用最近的目录。所以你可以在项目的基础上配置完成。