<association ext = ".lsp" id="autolisp_function"/>
<parser id="autolisp_function" displayname="AutoLisp">
<function
mainExpr="mainExpr="/([(defun])\w+$/ig"
displayMode="$functionName">
<functionName>
<nameExpr expr="/[_]\w+/igm"/>
</functionName>
</function>
</parser>
Looks to be the "stock" functionList.xml file?
..
<parser id="lisp_function" displayName="Lisp">
<function
mainExpr="[ \t]*\([ \t]*defun[ \t][a-zA-Z0-9_+\-*/<>=:.!?@%&|]+"
displayMode="$className->$functionName">
</function>
</parser>
<association langID="30" id="lisp_function"/>
<parser id="lisp_function" displayName="Lisp">
<function
mainExpr="[ \t]*\([ \t]*defun[ \t]+[a-zA-Z0-9_+\-*/<>=:.!?@%&|]+[ \t]+\([a-zA-Z0-9_+\-*/<>=:.!?@%&| \t]*\)"
displayMode="$className->$functionName">
</function>
</parser>
(?s);\|.*?\|;
will find multiple lines comments, ;.*$
will find single-line comment. <parser id="lisp_function" displayName="Lisp">
<function
mainExpr="\(defun.*?\)"
displayMode="$functionName">
</function>
</parser>
Single Line Comments in Autolisp: | ;.*$ |
Multiple Lines Comments Autolisp: | (?s);\|.*?\|; |
Comments Single or Multilines: | (((?s);\|.*?\|;)|(;.*$)) |
Function Name with Parameters: | \(defun.*?\) |
Function Name without (defun : | (?<=defun).*?\) |
Within Double or Single Quotes: | (["'])(\\?.)*?\1 |
Within Balanced Parentheses: | \((?>[^()]|(?R))*\) |
New version no function list plug-in ,I still use old versionIn the latest version V6.7.8.2 the function list works just fine.
New version no function list plug-in ,I still use old versionIn the latest version V6.7.8.2 the function list works just fine.
@ 77077: Can you post your functionList.xml?
But that's the default file. You have to edit the file. That is what this topic is about...
But that's the default file. You have to edit the file. That is what this topic is about...Hi roy ,Where has the edited file ?
<parser id="lisp_function" displayName="lsp" commentExpr="((;\|.*?\|;)|(;.*?$))">
<function
mainExpr="(?<=[\s\(]defun\s)\s*[^\s\(]*"
displayMode="$functionName">
</function>
</parser>
Hi royYou should start a new topic for this problem. But IMO your request is strange. Tags are not restricted to the "TAG?" format. Except for quick tests I would never use "TAG1", "TAG2" etc.
Here is simple routine...
That works pretty smoothly Roy, thanks!Thanks. Note that if you want the list to also contain the arguments then you should study ymg's suggestions.
roy ,I have a new question .The info you need is in the file...
set language ----> L--->LISP , ok, function list is ok
set language ----> user define language---> function list not ok .
roy ,I have a new question .The info you need is in the file...
set language ----> L--->LISP , ok, function list is ok
set language ----> user define language---> function list not ok .
for User Defined Languages:
<association userDefinedLangName="my user defined language" id="my_udl_passer_id"/>
<association userDefinedLangName="Autocad" id="my_autocad_passer_id"/>
<association langID="30" id="lisp_function"/>
Insert:<association userDefinedLangName="LSP" id="lisp_function"/>
Change "LSP" to match your name.
Info in the file:Code: [Select]for User Defined Languages:
<association userDefinedLangName="my user defined language" id="my_udl_passer_id"/>
<association userDefinedLangName="Autocad" id="my_autocad_passer_id"/>
So after:Code: [Select]<association langID="30" id="lisp_function"/>
Insert:Code: [Select]<association userDefinedLangName="LSP" id="lisp_function"/>
Change "LSP" to match your name.