在Vim中是否有用于浏览/导航XSLT代码的Ctags工具?
发布时间:2020-12-15 17:01:04 所属栏目:安全 来源:网络整理
导读:需要一种使用Vim轻松导航/浏览XSLT文件的方法. 类似于ctags可以与C/C++源代码一起使用的方式. 一个好的解决方案是允许只为自己安装脚本等或直接从Vim内部运行它们.仇恨不得不走出 vim只是为了搜索功能定义或“文本”搜索. 搜索了几个小时,想出了一些像’ack
需要一种使用Vim轻松导航/浏览XSLT文件的方法.
类似于ctags可以与C/C++源代码一起使用的方式. 一个好的解决方案是允许只为自己安装脚本等或直接从Vim内部运行它们.仇恨不得不走出 vim只是为了搜索功能定义或“文本”搜索. 搜索了几个小时,想出了一些像’ack’这样的优秀线索. 基本上我应该能够浏览包含其他.xsl文件的.xsl文件的迷宫,并使用函数,模板.有什么建议?
我发现kipelovets’和GuruM的答案很有用,并找出了结合他们建议的解决方案:
.ctags文件: --langdef=xslt --langmap=xslt:.xsl --regex-xslt=/<xsl:template[^>]+name="([-a-zA-Z0-9_:]+)"( +mode="([^"]+)")?/1 2/n,namedtemplate/i --regex-xslt=/<xsl:template[^>]+match="([^"]+)"( +mode="([^"]+)")?/1 2/m,matchedtemplate/i --regex-xslt=/<xsl:apply-templates +select="([^"]{2,})"( +mode="([^"]+)")?/1 2/a,applytemplate/i --regex-xslt=/<xsl:call-template +select="([^"]+)"( +mode="([^"]+)")?/1 2/c,calltemplate/i --regex-xslt=/<xsl:variable[^>]+name="([-a-zA-Z0-9_]+)"/1/v,variable/i --regex-xslt=/<xsl:function[^>]+name="([-a-zA-Z0-9_:]+)"/1/f,function/i --regex-xslt=/<xsl:param[^>]+name="([-a-zA-Z0-9_:]+)"/1/p,parameter/i vim标签栏设置(有些人可能觉得有用): let g:tagbar_type_xslt = { 'ctagstype' : 'xslt', 'kinds' : [ 'n:templates (named)', 'm:templates (matched)', 'a:applied templates', 'c:called templates', 'f:functions', 'p:parameters', 'v:variables' ] } 它更好,但我仍然遇到的一些问题包括: >按模式分组模板 >因此,如果您有多个具有相同名称但在不同模板中的变量, >评论模板,函数,变量和参数 未来尝试的更好方法: >用于解析来自xslt的信息的正则表达式可以正确地执行此操作 >这是jsctags对javascript的作用 >见Tag File Format (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |