问题标签 [tern]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
node.js - 无法在 Emacs 中启动 Tern 服务器
我有最新版本的 Emacs 和Tern,但我在使用插件时遇到了问题。当我使用任何与 Tern 相关的命令时,我会从编辑器中获取此命令:
据我所知,Tern 使用 NodeJs 来完成它的工作,我也有最新版本的 NodeJs,但我不知道为什么会出现这个错误。
javascript - tern_for_vim (ternjs) 返回 403 拒绝访问
尝试使用YouCompleteMe + TernJS在 MacVim 中完成 JavaScript 完成。
我遵循了两个插件的安装说明(我使用 Vundle 来管理 vim 插件),其中包括./install.sh
在 YCM 插件文件夹和npm install
TernJS 插件文件夹内的运行脚本。两者的安装似乎都已成功完成。
但是,当我键入时,我没有得到任何 JS 完成;如果我尝试手动触发 TernJS 中的某些内容(例如:TernDef
),我会从本地 TernJS 服务器返回一个 HTML 错误页面,指示 403 Access Denied 错误。
如果我使用 sudo 启动 MacVim(例如。sudo mvim
);一切似乎都很好。
此外,没有 sudo,我可以手动将 JSON 文档发布到 TernJS 服务器(在 vim 之外)并获得有效的响应。
我正在运行 MacVim 7.4.71(通过 Homebrew 安装;使用 python 支持编译)和节点 0.10.21(也通过 Homebrew 安装)。
关于我可以检查什么的任何想法,这样我就可以完成 TernJS 而无需使用 sudo 来启动 MacVim?
emacs - Tern auto-complete won't start automatically
When I enter "pars" in Emacs js-mode buffer and type tern-ac-complete
, I get the desired result: list of completion candidates + the documentation next to the candidate.
However, I cannot get Tern completion to be triggered automatically. The ac-auto-start
is set to 3
and the auto-complete works as expected for other cases (my dictionary file, the words I already typed in, jquery-doc, etc.)
emacs - Symbol 作为变量的值是 void:ac-source-tern-completion
在 Emacs 中升级包和删除过时的包之前,我可以正常使用点补全和 tern-ac-complete。现在每次我尝试使用这两个命令时,我都会收到错误消息
Symbol 作为变量的值是 void:ac-source-tern-completion
先感谢您!
javascript - 如何在 sublime 3 中为 tern-js 设置跳转到方法定义键绑定
我已经为 sublime 3 安装了tern-js插件,但是由于某种原因,根据文档,我无法使其命令与 sublime 的键绑定(我是 sublime nube btw)一起工作。ternjs_jump_to_definition
应该是一个有效的命令。
所以我把它放在默认(OSX).sublime-keymap
文件中:
我也把这个..仍然没有工作:
知道出了什么问题吗?我知道安装了 tern-js .. 因为键入代码完成实际上有效:Ctrl+Space
知道我做错了什么吗?我只想输入 command+ctrl+j 跳转到方法定义。
我还查看了默认的 sublime 3 跳转到方法定义(即 alt+command+down),即使我将库添加到项目中,它也仅适用于同一个文件。(我正在使用mapbox ,它在leaflet之上工作)。
javascript - 如何在命令行上运行 Tern?
我想试验一下Tern 项目,包括它的AngularJS 扩展。我正在尝试在命令行上运行 Tern,但它只是失败了,如下所示:
module.js:340 抛出错误;^ 错误:在 Function.Module._resolveFilename (module.js:338:15) 在 Function.Module._load (module.js: 280:25) 在 Function.Module.runMain (module.js:497:10) 在启动时 (node.js:119:16) 在 node.js:902:3
我觉得从 Cygwin 执行此操作可能存在问题。更明确地说,我将“tern/bin”目录放入我的路径并从新的 shell 运行“tern”。我已经更新了上面的错误信息,只是将我的用户 ID 更改为“myuid”。“C:\c\users...”的路径看起来很时髦。某些东西没有从 cygwin 路径正确转换为 Windows 路径。
请注意,我使用相同的 Node 安装来运行基于 Karma 的 javascript 单元测试,无论是从命令行进行交互式调试,还是从 Maven 构建脚本,都在 Cygwin shell 中。
javascript - CodeMirror with Tern - 使用 Javascript Intellisense 自定义“类型”
我tern
用来为运行 的窗口提供一些增强的智能感知CodeMirror
,它工作正常,但我有一个问题,我想添加一些自定义“ types
”,可以这么说,以便它们旁边可以有图标在下拉菜单中。我已经把代码缩小了一点......
在.json
定义文件中,类型似乎是使用!type
指令声明的,如下所示;
这些与 , 有点对应CSS
,像这样。
好吧,这一切都很好。我可以设计那些,没问题。但是我想添加一些我自己的,并且很难做到这一点。例如,如果我只是这样做...
它只是导致整个事情不起作用;就像tern
只是说nope nope nope
什么,什么都不做。我已经尝试了几个小时,并且已经真正挖掘了源代码,但无法真正找到一种方法来组成我自己的类型。我想简单地给这个特定代码编辑器的用户(它不会是“完全”的 javascript,它将是 javascript,但有一些愚蠢的文字,因为它们不是编码器)一些简单的标志,使其更容易在他们。
欢迎任何建议!感谢您的时间。
更新
根据用户的要求,我发布了更多代码以尝试获得更多帮助。这就是我要的; 我有一个.json
定义对象布局的文件。该对象将镜像一个实际的 C# 对象/数据库对象。(那部分不重要,只知道我有一个特定的模型)
我也在使用默认的 ternecma5.json
和jquery.json
def 文件。在这里可以找到它们;
https://github.com/marijnh/tern/blob/master/defs/ecma5.json https://github.com/marijnh/tern/blob/master/defs/jquery.json
所以当用户点击CTRL+SPACE
并看到时CHARACTER
,我希望它CHARACTER
旁边有一个 [] 类型。所以我认为第一步是指定字符作为类型。
character.json
发生了什么是以下屏幕。
现在我试图追查这一点,我发现了一个typeToIcon
在addons/tern.js
(不是实际的 tern 文件,插入 codemirror 的插件文件)中调用的函数
所以我虽然AHA! This is it!!
,所以我想我可以在这里添加我的类型。
我添加console.log(type);
到函数中以查看输出是什么样的。虽然这从未触发,即使我点击CTRL+SPACE
,我也从未看到控制台输出,所以它告诉我没有到达此代码。我不得不走得更远。
我找到了一个名为TypeParser
in的函数def.js
,它是实际 tern 下载的一部分。
将控制台日志放在这里给了我一些结果,它们看起来像许多可用的类型,并且在jquery.json
和中定义ecma5.json
。
据我所知,我完全不知道如何进行。
vim - 在 HTML 文件中使用 tern_for_vim 插件
我正在尝试设置tern_for_vim插件以在 JavaScript 中具有很好的自动完成功能。在编辑“.js”文件时,“Ctrl+X Ctrl+O”给出了很好的语义结果,拿起了“backbone.js”和其他库。但是,当我在 HTML 文件中编辑 JS 块时,这不起作用,我只看到基于缓冲区的标准完成。我不知道有什么问题。如何解决这个问题?
codemirror - CodeMirror - styling Tern intellisense labels
I'm using the Tern plugin for CodeMirror, which adds intellisense features to the editor (i.e. pops up inline hint-labels).
I want to change the hint-labels style, how to do so?