使用的ctags,并与新的文件扩展名映射VIM
问题描述:
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
答
同时针对vim和Emacs将读取该文件在“编辑提示”:文本,通常嵌入在一个评论,它包含的命令或编辑器在打开文件时遵守的设置。你可以用它来告诉编辑器做什么用的文件,无论文件名。
对于暗示,将与两个Emacs和Vim工作,把注释块在文件的结尾:
# Local variables:
# coding: utf-8
# mode: php
# End:
# vim: fileencoding=utf-8 filetype=php :
(你的问题并不意味着需要指定字符编码,但这个节目如何在一个注释块结合多种设置。)
答
你可以看到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 +]跳到类/函数的定义。