2010-11-19 79 views
2

Drupal模塊與.module文件擴展名的PHP文件。要生成這些文件我運行ctags的標籤有以下langmap設置:使用的ctags,並與新的文件擴展名映射VIM

ctags -R --langmap=php:+.module . 

此命令產生tags文件,屬於.module文件的幾個標籤。但是,當我打開標記列表窗口TlistToggle標記都沒有顯示。然而,隨着.php擴展打開PHP文件時,標記列表窗口顯示在導航樹中的所有標籤。

我需要以某種方式指定Vim的標記列表插件,.module文件擴展名屬於PHP語言?

更新: 我運行taglist's faq描述的以下診斷命令:

ctags -f - --format=2 --excmd=pattern --fields=nks test_module.module 

回答是什麼。但是,當我運行一個PHP文件,該命令將顯示的標籤列表:

ctags -f - --format=2 --excmd=pattern --fields=nks test_module.php 

回答

1

同時針對vim和Emacs將讀取該文件在「編輯提示」:文本,通常嵌入在一個評論,它包含的命令或編輯器在打開文件時遵守的設置。你可以用它來告訴編輯器做什麼用的文件,無論文件名。

對於暗示,將與兩個Emacs和Vim工作,把註釋塊在文件的結尾:

# Local variables: 
# coding: utf-8 
# mode: php 
# End: 
# vim: fileencoding=utf-8 filetype=php : 

(你的問題並不意味着需要指定字符編碼,但這個節目如何在一個註釋塊結合多種設置。)

0

你可以看到ctags --verbose

Drupal的擴展可能不包括默認情況下,默認語言的映射。你可能會看到這樣的事情爲PHP:PHP: .php .php3 .phtml

有時長文件可以創建錯誤,所以我通常排除往往有縮小的輸出擴展。 Drupal也經常使用「.inc」。這個命令應該工作:

ctags -R --langmap=PHP:+.inc.module --exclude='*.js' --exclude='*.html' --exclude='*.css' * 

在〜/ .vimrc中確保添加::set tags=/path/to/your/tags

那麼你應該能夠使用按Ctrl +]跳到類/函數的定義。