2013-12-17 54 views
1

呼叫我有涉及的ctags索引使用python大型目錄的命令。它是這樣的:的Python的ctags子在Mac OSX上

cmd = ['ctags', '-R', '-f', 'tagfile', 'my_large_dir'] 
subprocess.call(cmd) 
#wait for ctags to finish then go on 

這適用於Win 7和Ubuntu,但不適用於Mac OSX Mavericks。

我再嘗試運行實際的ctags從終端命令,它工作正常。

然後我嘗試從蟒蛇運行觸摸命令來查看是否Python有一些反感我的目錄中創建的文件,並且工作正常。

然而,當我運行上面的命令,它只是掛在子調用。

任何想法?我很爲難,我需要在週五之前想出解決辦法:(

更新:

我忘了提,我已經安裝了自制的ctags的正確版本爲已任指出,不過,當我。使用brew install ctags(注意不要使用sudo),它被放置到時,我一直在尋找在/ usr/bin中/ CTAGS,它仍然有錯誤的版本,我相信在/ usr/local/bin目錄/ CTAGS。出於某種原因,在/ usr版本/斌/只掛喜歡的地方了一個無限循環......奇怪。

不管怎麼說,我指着命令正確的道路和它的工作。

回答

0

你可能嘗試運行自帶的Xcode中CTAGS。

要使用你正在尋找實際的ctags:

1)如果你沒有安裝醞釀已安裝 - >http://brew.sh/

2)如果您尚未安裝你是CTAGS實際上在尋找:

brew install ctags

3)然後嘗試運行此C標籤爲:/usr/local/bin/ctags,而不是隻寫ctags

櫃面你找不到的ctags在我寫的目錄,嘗試這樣運行它 - >

`brew --prefix`/bin/ctags

(是用引號)的

+1

整點和存在的理由Homebrew是你**不必**必須使用sudo。 –

+0

我已經這樣做了,但我使用了錯誤的ctags。我使用的是/ usr/bin目錄中的錯誤。感謝您的更正。一旦我指定/ usr/local/bin/ctags它就像一個魅力:) – onetwopunch

1

這很可能是因爲GNU ctags和OSX/BSD ctags之間的不兼容。例如,OSX/BSD ctags不接受-R命令行參數。

如果你絕對需要遞歸的能力(你可能會這樣做),我建議你通過Homebrew安裝GNU或exuberant ctags。