我有一个 javascript 对象,如下所示:
var myObj = {
prop1 : 'abc',
prop2: function(){
return true;
},
prop3: function(){},
... // and so on
};
emacs 中有没有办法查看 myObj 拥有的所有属性的列表?我可以单击该属性,它会将我带到 javascript 文件中出现的位置。 M-x 发生
行中的某些内容,显示新缓冲区中出现的“可点击”事件。
我可以执行M-x list-js-props myObj
,它会打开上述缓冲区。
最佳答案
我不知道有什么可以完全满足您的要求,但是您可以尝试以下一些操作:
The speedbar应该向您显示函数(尽管它不显示其他属性)。
使用
M-x speedbar
启动它,然后通过单击“+”图标展开节点。单击函数名称应将您带到缓冲区中的匹配项。如果您使用 Emacs 的 GUI 版本,Speedbar 效果最佳,因为它会启动一个新框架。如果您在控制台中工作,请查看 SrSpeedbar .
您可以使用独立的 JavaScript 分析器,例如 Tern with Auto Complete (或 with Company )快速获取建议,例如
var myObj = { foo = // Hrm, what do I want? }; otherObj. // See completions of otherObj here, find the one you want, // and complete.
完成其他对象后,您可以使用
tern-find-definition
(默认绑定(bind)到M-.
)转到属性的定义,并且tern-pop-find-definition
(默认绑定(bind)到M-,
)返回。注意:几周前我通过 MELPA 安装 Tern 的运气并不好。相反,我关注了 these instructions from the Tern website .
最后,
js2-mode
可能会提供一些帮助,尽管我找不到任何明显的东西。不过,使用 elisp 来修改您的需求可能是最容易的。
``Speedbar 在 Ubuntu 上的 Emacs 24.3.50.1 上显示我的 JavaScript 函数,开箱即用。
关于javascript - Emacs 在缓冲区中打印 javascript 对象属性或对象轮廓,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23542546/