doctorjs(又名jsctags)不适用于vim+tagbar
doctorjs(aka jsctags) not work with vim+tagbar
我使用的是windows 7 64位。。。
我已经通过MSI安装程序安装了nodejs 0.6.11,安装路径是"C:''Program Files(x86)''nodejs",它被安装程序自动添加到我的%path%中,我通过以下步骤安装了doctorjs:
- 我在"C:''Program files(x86)''nodejs''doctorjs"下复制了doctorjs文件
- 我创建了jsctags.cmd,其中填充了从https://gist.github.com/1438882
- 我在_vimrc中添加了以下行:
设g:tagbar_type_javascript={''"ctagsbin":"C:''Program Files(x86)''nodejs''jsctags.cmd"''}
问题是,当我运行jsctags.cmd"{My js folder}"时,它生成的标签文件只包含以下内容:
_TAG_FILE_FORMAT 2/扩展格式/_TAG_FILE_SORTED 0/0=未排序,1=已排序,2=文件夹/_TAG_PROGRAM_作者Patrick Walton/pwalton@mozilla.com/_TAG_PROGRAM_NAME jsctags//_标签_程序_ URLhttp://github.com/pcwalton/jsctags/GitHub存储库/_TAG_PROGRAM_VERSION 0.1//
当我在vim中运行:tagbaropen时,它不会显示当前js文件的任何内容。。
请指导我哪里做错了,谢谢!
由于您得到了一些输出,所以看起来您已经正确地实现了要点。但也许你对如何在命令行中使用它的期望与它的实际工作方式不同?
仅供参考:jsctags.cmd "{my js folder}"
在我的机器上也返回了一个空标签文件。我认为命令界面还不是很成熟。。。所以看起来创建一个完整文件夹的标签文件是不可能的——但是。。。
尝试jsctags.cmd "{file}"
。这将创建一个已填充的tag
文件。
还要注意,tagbar调用jsctags的方式如下:jsctags -f - {file}
。这将输出流式传输到stdout。所以,若您正在调试,请尝试这种形式的命令。
另一个调试技巧是,修改批处理文件以输出调试信息。即:添加这样的行:
echo "%~dp0"'"node.exe" "D:'opt'node'doctorjs'bin'jsctags.js" %* > d:'debug.txt
查看d:'debug.txt
可以看到从标签栏调用命令时的样子。
BTW:你使用的要点是我的。。。我想知道我是否没有用有空间的文件夹很好地测试这个批处理文件。在有空格和没有空格的两个文件夹中进行一些测试,看看是否有区别。如果你对它的作用/不作用有更多的了解,请告诉我,我可以进一步调查。
您的问题可能与您为doctorjs克隆的水仙的提交有关。进入doctorjs文件夹中的水仙文件夹并运行
git checkout 4ae5aff8b3
这应该会将头切换到文件的正确版本。
- html5 drawImage适用于firefox,而不是chrome
- Jquery Ajax POST不工作.适用于GET
- 如何调试遗留的javascript代码(适用于IE,但在Google Chrome中不正常)
- .load()适用于window,而不是ID
- 使用Jquery更改css样式适用于id's、 不在课堂上
- 提交按钮不会;不适用于Chrome或Firefox,但适用于Internet Explorer
- 为什么 javascript 中的“btoa”编码适用于 20 位字符串而不是 20 位整数
- Javascript String to Date适用于Chrome,而不是FF或Safari
- Onchange,向上,向下箭头键适用于FF和Chrome,但在IE中不起作用
- .load() 适用于 IE 和 dreamweaver 预览版,但不能使用 opera 和 chrome
- 找不到适用于 Highcharts 的 JSON 数组语法
- 为什么在jQuery中使用focusout适用于Firefox,而使用addEventListener则不适用;t
- jQuery选择菜单验证器适用于FF和Chrome,但不适用IE
- 单选按钮'onclick'适用于Chrome和Firefox,但不适用IE
- JQuery ScrollTop适用于chrome,但不适用firefox
- window.opener.location.href适用于IE,但不适用Chrome或Safari
- Frame Busting buster不完全适用于IE
- Jquery touch punch适用于Chrome和Firefox,但不适用IE
- 背景更改仅适用于chrome+$.预加载不适用;不起作用
- JavaScript window.location.replace适用于Firefox,但不适用IE或Chrome