[英]doctorjs(aka jsctags) not work with vim+tagbar
我使用的是Windows 7 64bit ...
我已經通過MSI安裝程序安裝了nodejs 0.6.11,安裝路徑為“C:\\ Program Files(x86)\\ nodejs”,安裝程序自動將其添加到我的%PATH%,我按照以下步驟安裝了doctorjs:
讓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_AUTHOR Patrick Walton /pwalton@mozilla.com/!_TAG_PROGRAM_NAME jsctags //!_TAG_PROGRAM_URL http://github.com/pcwalton / jsctags / GitHub repository /!_TAG_PROGRAM_VERSION 0.1 //
當我在vim中運行:tagbaropen時,它沒有為當前的js文件顯示任何內容。
請指導我做錯的地方,謝謝!
你的問題可能與你為醫生克隆的水仙的提交有關。 進入doctorjs文件夾中的narcissus文件夾並運行
git checkout 4ae5aff8b3
這應該將頭部切換到文件的正確版本。
由於您獲得了一些輸出,看起來您已正確實現了要點。 但也許你對如何在命令行使用它的期望與它真正起作用的方式不同?
僅供參考: 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
將讓您看到命令從tagbar調用時的樣子。
BTW:你正在使用的要點是我的...我想知道我是否沒有充分測試這個批處理文件與其中有空格的文件夾。 在包含和不包含空格的兩個文件夾中進行一些測試,看看是否存在差異。 如果您能更深入地了解它的工作原理/不工作原因,請告訴我,我可以進一步調查。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.