本文介绍了用于PL/SQL的记事本++功能列表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试为我的pl/sql源文件创建函数列表。我有spc和bdy文件(包的规范和正文)。

这就是我在functionList.xml中定义的关联(也尝试使用"。扩展前):

 <association ext="bdy" id="plsql_func"/>
 <association ext="spc" id="plsql_func"/>

现在,在<parsers>内部(与其他解析器处于同一级别):

 <parser id="plsql_func" displayName="PLSQL Function Parser" commentExp="--.*$">
    <function
       mainExpr="^[	 ]*FUNCTION[	 ]*[w]*(*"
       displayMode="$functionName">
       <functionName>
          <nameExpr expr="[w]+("/>
       </functionName>
    </function>
 </parser>

在文件内部进行搜索时,正则表达式^[ ]*FUNCTION[ ]*[w]*(*匹配所有函数名(没有问题)。

我还尝试了".*"作为名称解析器,但仍然没有成功。"函数列表"窗格保持为空。

我是否遗漏了什么?

PS:

函数头示例:

FUNCTION TEST_FUNCTION(O_error    VARCHAR2(300),
                       I_args     VARCHAR2(10))
return BOOLEAN IS

推荐答案

我的pl/sql源文件有扩展sql,所以我定义了:

        <association langID="17" id="plsql_func"/>

并稍微改进一下您的解析器。

        <parser id="plsql_func" displayName="PL/SQL" commentExpr="((/*.*?*)/|(--.**$))">
            <function
                mainExpr="^[	 ]*(FUNCTION|PROCEDURE)[s]*[w]*[s]*((|IS|AS)*"
                displayMode="$functionName">
                <functionName>
                    <nameExpr expr="[w]+[s]*((|IS|AS)"/>
                </functionName>
            </function>
        </parser>

在我的情况下,它可以工作(Notepad++v6.6.9)

这篇关于用于PL/SQL的记事本++功能列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-23 19:22