Advertisement
Guest User

Notepadd++ AHK functionlist.

a guest
Mar 17th, 2017
314
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
XML 13.71 KB | None | 0 0
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!--
  3. For learning making your language parser, please check the following link:
  4. http://notepad-plus-plus.org/features/function-list.html
  5. -->
  6. <NotepadPlus>
  7.     <functionList>
  8.         <associationMap>
  9.         <!-- langID:
  10.             L_TEXT: 0     L_PHP: 1        L_C: 2        L_CPP: 3       L_CS: 4         L_OBJC: 5
  11.             L_JAVA: 6     L_RC: 7         L_HTML: 8     L_XML: 9       L_MAKEFILE: 10  L_PASCAL: 11
  12.             L_BATCH:12    L_INI: 13       L_ASCII: 14   L_USER: 15     L_ASP: 16       L_SQL: 17
  13.             L_VB: 18      L_JS: 19        L_CSS: 20     L_PERL: 21     L_PYTHON: 22    L_LUA: 23
  14.             L_TEX: 24     L_FORTRAN: 25   L_BASH: 26    L_FLASH: 27    L_NSIS: 28      L_TCL: 29
  15.             L_LISP: 30    L_SCHEME: 31    L_ASM: 32     L_DIFF: 33     L_PROPS: 34     L_PS: 35
  16.             L_RUBY: 36    L_SMALLTALK:37  L_VHDL: 38    L_KIX: 39      L_AU3: 40       L_CAML: 41
  17.             L_ADA: 42     L_VERILOG: 43   L_MATLAB: 44  L_HASKELL: 45  L_INNO: 46      L_SEARCHRESULT: 47
  18.             L_CMAKE: 48   L_YAML: 49      L_COBOL 50    L_GUI4CLI: 51  L_D: 52         L_POWERSHELL: 53
  19.             L_R: 54       L_JSP: 55
  20.         -->
  21.             <association langID="1" id="php_function"/>
  22.             <association langID="2" id="c_function"/>
  23.             <association langID="3" id="c_cpp_function"/>
  24.             <association langID="4" id="cs_function"/>
  25.             <association langID="6" id="java"/>
  26.             <association langID="9" id="xml_node"/>
  27.             <association langID="12" id="batch_label"/>
  28.             <association langID="13" id="ini_section"/>
  29.             <association langID="19" id="js_function"/>
  30.             <association langID="21" id="perl_function"/>
  31.             <association langID="22" id="python_function"/>
  32.             <association langID="26" id="bash_function"/>
  33.             <association langID="28" id="nsis_syntax"/>
  34.         <!--
  35.             if langID cannot be found above, you can still set the file extensions
  36.             <association ext=".my_passer_ext1" id="my_passer_id"/>
  37.             <association ext=".my_passer_ext2" id="my_passer_id"/>
  38.            
  39.             for User Defined Languages:
  40.             <association userDefinedLangName="my user defined language" id="my_udl_passer_id"/>
  41.             <association userDefinedLangName="Autocad" id="my_autocad_passer_id"/>
  42.            
  43.            
  44.         -->
  45.             <association ext=".ahk" id="ahk_function"/>
  46.             <association userDefinedLangName="AutoHotkey" id="ahk_function"/>
  47.  
  48.         </associationMap>
  49.         <parsers>
  50.  
  51.             <parser id="xml_node" displayName="XML Node" commentExpr="&lt;!--([^-]|-(?!-&gt;))*--&gt;">
  52.                 <!-- Only match nodes with at least one attribute -->
  53.                 <function
  54.                     mainExpr="&lt;[\w\?]+[\t ]+\w+[\t ]*=[\t ]*&quot;[^&quot;]+&quot;"
  55.                     displayMode="$functionName">
  56.                     <functionName>
  57.                         <nameExpr expr="[^&lt;]*"/>
  58.                     </functionName>
  59.                 </function>
  60.             </parser>
  61.  
  62.             <parser id="batch_label" displayName="BAT Label" commentExpr="((::.*?$)|(REM.*?$))">
  63.                 <function
  64.                     mainExpr="^[\t ]*:\w+"
  65.                     displayMode="$functionName">
  66.                     <functionName>
  67.                         <nameExpr expr="[^\t :]*"/>
  68.                     </functionName>
  69.                 </function>
  70.             </parser>
  71.  
  72.             <parser id="ini_section" displayName="INI Section" commentExpr="((#.*?$)|(;.*?$))">
  73.                 <function
  74.                     mainExpr="^[\t ]*[\[&quot;][\w_.; \(\)-]+[\]&quot;]"
  75.                     displayMode="$functionName">
  76.                     <functionName>
  77.                         <nameExpr expr="[^\[\]&quot;]*"/>
  78.                     </functionName>
  79.                 </function>
  80.             </parser>
  81.  
  82.             <parser id="java" displayName="Java" commentExpr="((/\*.*?\*)/|(//.**$))">
  83.                 <classRange mainExpr="^[\t ]*((public|protected|private|static|final|abstract|synchronized|@(\w)+)\s+)*(class|enum|interface|@interface)\s+\w+(&lt;\s*\w+(,\s*\w+)*\s*&gt;)?(\s+extends\s+\w+)?(\s+implements\s+\w+(,\s*\w+)*)?\s*\{" openSymbole="\{" closeSymbole="\}">
  84.                     <className>
  85.                         <nameExpr expr="(class|enum|interface|@interface)\s+\w+(&lt;\s*\w+(,\s*\w+)*\s*&gt;)?"></nameExpr>
  86.                         <nameExpr expr="\s+\w+(&lt;\s*\w+(,\s*\w+)*\s*&gt;)?"></nameExpr>
  87.                         <nameExpr expr="\w+(&lt;\s*\w+(,\s*\w+)*\s*&gt;)?"></nameExpr>
  88.                     </className>
  89.                     <function mainExpr="^[\t ]*((public|protected|private|static|final|abstract|synchronized|@(\w)+)\s+)*(\w*(\[\s*])*\s+)?(?!(if|while|for|switch|catch|synchronized)\b)\w+(\[\s*])*(&lt;\s*\w+(,\s*\w+)*\s*&gt;)?\s*\([^\)\(]*\)(\s+throws\s+\w+)?\s*\{">
  90.                         <functionName>
  91.                             <funcNameExpr expr="(?!(if|while|for|switch|catch|synchronized)\b)\w+(\[\s*])*(&lt;\s*\w+(,\s*\w+)*\s*&gt;)?\s*\("></funcNameExpr>
  92.                             <funcNameExpr expr="(?!(if|while|for|switch|catch|synchronized)\b)\w+(\[\s*])*(&lt;\s*\w+(,\s*\w+)*\s*&gt;)?"></funcNameExpr>
  93.                         </functionName>
  94.                     </function>
  95.                 </classRange>
  96.             </parser>
  97.  
  98.             <parser id="c_function" displayName="C source" commentExpr="((/\*.*?\*)/|(//.*?$))">
  99.                 <function
  100.                     mainExpr="^[\t ]*((static|const|virtual)[\s]+)?[\w:]+([\s]+[\w]+)?([\s]+|\*[\s]+|[\s]+\*|[\s]+\*[\s]+)([\w_]+[\s]*::)?(?!(if|while|for))[\w_]+[\s]*\([^\)\(]*\)([\s]*const[\s]*)?[\n\s]*\{"
  101.                     displayMode="$functionName">
  102.                     <functionName>
  103.                         <nameExpr expr="(?!(if|while|for))[\w_~]+[\s]*\("/>
  104.                         <nameExpr expr="(?!(if|while|for))[\w_~]+"/>
  105.                     </functionName>
  106.                 </function>
  107.             </parser>
  108.            
  109.            
  110.             <parser id="js_function" displayName="Javascript" commentExpr="((/\*.*?\*)/|(//.*?$))">
  111.                 <function
  112.                     mainExpr="((^|[\s]+|[;\}\.])([_A-Za-z][\w_]*\.)*[_A-Za-z][\w_]*[\s]*[=:]|^|[\s;\}]+)[\s]*function([\s]+[_A-Za-z]?[\w_]*\([^\)\(]*\)|\([^\)\(]*\))[\n\s]*\{"
  113.                     displayMode="$className->$functionName">
  114.                     <functionName>
  115.                         <nameExpr expr="[_A-Za-z][\w_]*[\s]*[=:]|[_A-Za-z]?[\w_]*[\s]*\("/>
  116.                         <nameExpr expr="[_A-Za-z]?[\w_]*"/>
  117.                     </functionName>
  118.                     <className>
  119.                         <nameExpr expr="([_A-Za-z][\w_]*\.)*[_A-Za-z][\w_]*\."/>
  120.                         <nameExpr expr="([_A-Za-z][\w_]*\.)*[_A-Za-z][\w_]*"/>
  121.                     </className>
  122.                 </function>
  123.             </parser>
  124.            
  125.  
  126.             <parser id="c_cpp_function" displayName="C++ Class" commentExpr="((/\*.*?\*)/|(//.*?$))">
  127.                 <classRange
  128.                     mainExpr="^[\t ]*(class|struct)[\t ]+[\w]+[\s]*(:[\s]*(public|protected|private)[\s]+[\w]+[\s]*)?\{"
  129.                     openSymbole = "\{"
  130.                     closeSymbole = "\}"
  131.                     displayMode="node">
  132.                     <className>
  133.                         <nameExpr expr="(class|struct)[\t ]+[\w]+"/>
  134.                         <nameExpr expr="[\t ]+[\w]+"/>
  135.                         <nameExpr expr="[\w]+"/>
  136.                     </className>
  137.                     <function
  138.                         mainExpr="^[\t ]*((static|const|virtual)[\s]+)?([\w]+([\s]+[\w]+)?([\s]+|\*[\s]+|[\s]+\*|[\s]+\*[\s]+))?([\w_]+[\s]*::)?(?!(if|while|for|switch))[\w_~]+[\s]*\([^\)\(]*\)([\s]*const[\s]*)?[\n\s]*\{">
  139.                         <functionName>
  140.                             <funcNameExpr expr="(?!(if|while|for|switch))[\w_~]+[\s]*\("/>
  141.                             <funcNameExpr expr="(?!(if|while|for|switch))[\w_~]+"/>
  142.                         </functionName>
  143.                     </function>
  144.                 </classRange>
  145.                 <function
  146.                     mainExpr="^[\t ]*((static|const|virtual)[\s]+)?[\w]+([\s]+[\w]+)?([\s]+|\*[\s]+|[\s]+\*|[\s]+\*[\s]+)([\w_]+[\s]*::)?(?!(if|while|for))[\w_]+[\s]*\([^\)\(]*\)([\s]*const[\s]*)?[\n\s]*\{"
  147.                     displayMode="$className->$functionName">
  148.                     <functionName>
  149.                         <nameExpr expr="(?!(if|while|for))[\w_]+[\s]*\("/>
  150.                         <nameExpr expr="(?!(if|while|for))[\w_]+"/>
  151.                     </functionName>
  152.                     <className>
  153.                         <nameExpr expr="[\w_]+(?=[\s]*::)"/>
  154.                     </className>
  155.                 </function>
  156.             </parser>
  157.            
  158.             <parser id="nsis_syntax" displayName="NSIS Syntax" commentExpr="((/\*.*?\*)/|(#.*?$)|(;.*?$))">
  159.                 <function
  160.                     mainExpr="^[\t ]*(!macro|Function|Section|SectionGroup)[\t ]+[^\r\n]*$"
  161.                     displayMode="$functionName">
  162.                     <functionName>
  163.                         <nameExpr expr="(?(?=[\t ]*!macro)[\t ]*!macro[\t ]+[^\s]+|[^\r\n]*)"/>
  164.                     </functionName>
  165.                 </function>
  166.             </parser>
  167.            
  168.             <parser id="perl_function" displayName="Perl">
  169.                 <function mainExpr="^[\s]*(?&lt;!#)[\s]*sub[\s]+[\w]+[\s]*\(?[^\)\(]*?\)?[\n\s]*\{" displayMode="$className->$functionName">
  170.                     <functionName>
  171.                         <nameExpr expr="(sub[\s]+)?\K[\w]+"/>
  172.                     </functionName>
  173.                     <className>
  174.                         <nameExpr expr="[\w]+(?=[\s]*::)"/>
  175.                     </className>
  176.                 </function>
  177.             </parser>
  178.            
  179.             <parser id="php_function" displayName="PHP" commentExpr="((/\*.*?\*)/|(//.*?$))">
  180.                 <classRange
  181.                    mainExpr="^[\s]*(class|abstract[\s]+class|final[\s]+class)[\t ]+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*([\s]*|[\s]*(extends|implements|(extends[\s]+(\\|[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*)+[\s]+implements))[\s]+(\,[\s]*|(\\|[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*))+[\s]*)?\{"
  182.                    openSymbole = "\{"
  183.                    closeSymbole = "\}"
  184.                    displayMode="node">
  185.                     <className>
  186.                         <nameExpr expr="(class|abstract[\s]+class|final[\s]+class)[\s]+[\w]+"/>
  187.                         <nameExpr expr="[\s]+[\w]+\Z"/>
  188.                         <nameExpr expr="[\w]+\Z"/>
  189.                     </className>
  190.                     <function
  191.                        mainExpr="^[\s]*((static|public|protected|private|final)*(\s+(static|public|protected|private|final))+[\s]+)?(function[\s]+)+([\w]+([\s]+[\w]+)?([\s]+|\*[\s]+|[\s]+\*|[\s]+\*[\s]+))?([\w_]+[\s]*::)?(?!(if|while|for|switch))[\w_~]+[\s]*\([^\{]*\{">
  192.                         <functionName>
  193.                             <funcNameExpr expr="(?!(if|while|for|switch))[\w_]+[\s]*\([^\{]*"/>
  194.                             <!-- comment below node if want display method with parmas -->
  195.                             <funcNameExpr expr="(?!(if|while|for|switch))[\w_]+"/>
  196.                         </functionName>
  197.                     </function>
  198.                 </classRange>
  199.                 <function
  200.                    mainExpr="^[\s]*function[\s]+\w+\("
  201.  
  202.                    displayMode="$className->$functionName">
  203.                     <functionName>
  204.                         <nameExpr expr="(?!(if|while|for))[\w_]+[\s]*\("/>
  205.                         <nameExpr expr="(?!(if|while|for))[\w_]+"/>
  206.                     </functionName>
  207.                     <className>
  208.                         <nameExpr expr="[\w_]+(?=[\s]*::)"/>
  209.                     </className>
  210.                 </function>
  211.             </parser>
  212.             <parser id="bash_function" displayName="Shell" commentExpr="(#.*?$)">
  213.                 <function
  214.                     mainExpr="^[\t ]*(function[\t\r\n ]*)?([a-zA-Z0-9_])+[\t\r\n ]*(\([^\)]*\))?[\t\r\n ]*(\{)[^(\})\r\n\t ]*"
  215.                     displayMode="$functionName">
  216.                     <functionName>
  217.                         <nameExpr expr="[^{]*"/>
  218.                     </functionName>
  219.                 </function>
  220.             </parser>
  221.             <parser id="python_function" displayName="Python class" commentExpr="(#.*?$|'''.*?('''|\Z))">
  222.                 <classRange mainExpr="(?&lt;=^class ).*?(?=\n\S|\Z)">
  223.                     <className>
  224.                         <nameExpr expr="\w+(?=[\(|:])"/>
  225.                     </className>
  226.                     <function mainExpr="(?&lt;=def ).+?(?=:)">
  227.                         <functionName>
  228.                             <funcNameExpr expr=".*"/>
  229.                         </functionName>
  230.                     </function>
  231.                 </classRange>
  232.                 <function mainExpr="(?&lt;=def ).+?(?=:)">
  233.                     <functionName>
  234.                         <funcNameExpr expr=".*"/>
  235.                     </functionName>
  236.                 </function>
  237.             </parser>
  238.            
  239.             <parser id="cs_function" displayName="C# Class" commentExpr="((/\*.*?\*)/|(//.*?$))">
  240.                 <classRange
  241.                     mainExpr="^[\t ]*((public|protected|private|internal)[\s]+)?([\w]+[\s]*)?(class|struct|interface)[\t ]+[^\{]+\{"
  242.                     openSymbole = "\{"
  243.                     closeSymbole = "\}"
  244.                     displayMode="node">
  245.                     <className>
  246.                         <nameExpr expr="(class|struct|interface)[\t ]+[\w]+"/>
  247.                         <nameExpr expr="[\t ]+[\w]+"/>
  248.                         <nameExpr expr="[\w]+"/>
  249.                     </className>
  250.                     <function
  251.                         mainExpr="^[^\S\r\n]*(?&lt;modifier1&gt;(?:public|protected|internal|private)\s*)?(?&lt;modifier2&gt;(?:new|static|virtual|sealed|override|abstract|extern)\s*)?(partial\s*)?(?&lt;type&gt;(?!(return|if|else))\w+(?&lt;genericType&gt;&lt;[\w,\s&lt;&gt;]+&gt;)?\s+)(?&lt;name&gt;\w+(?&lt;genericNameType&gt;&lt;[\w,\s&lt;&gt;]+&gt;)?\s?)\((?&lt;params&gt;[\w\s,&lt;&gt;\[\]\:=\.]*)\)(?&lt;ctorChain&gt;\s*\:\s*(?:base|this)\s*\((?&lt;ctorParams&gt;[\w\s,&lt;&gt;\[\]\:=\.]*)\))?[\w\s&lt;&gt;\:,\(\)\[\]]*(?:\{|;)">
  252.                         <functionName>
  253.                             <funcNameExpr expr="(\w+(&lt;[\w,\s&lt;&gt;]+&gt;)?\s?)\("/>
  254.                             <funcNameExpr expr="(\w+(&lt;[\w,\s&lt;&gt;]+&gt;)?\s?)"/>
  255.                         </functionName>
  256.                     </function>
  257.                 </classRange>
  258.                 <function mainExpr="">
  259.                 </function>
  260.             </parser>
  261.            
  262.             <parser id="ahk_function" displayName="AHK" commentExpr="((/\*.*?\*)/|((?<=[\s\t]);.*?$))">
  263.                 <!-- AutoHotKey Function List -->
  264.                 <classRange
  265.                     mainExpr="^[\t ]*(class|struct)[\t ]+[\w]+([\t ]+|[\t ]+(extends)[\s]+(\,[\t ]*|(\\|[\w][\w]*))+[\s]*)?([\s\t\r\n]|(/\*.*?\*)/|((?<=[\s\t]);[^\r\n]*?$))*?[\s\t]*\{"
  266.                     openSymbole = "\{"
  267.                     closeSymbole = "\}"
  268.                     displayMode="node">
  269.                     <className>
  270.                         <nameExpr expr="(class|struct)[\t ]+[\w]+"/>
  271.                         <nameExpr expr="[\t ]+[\w]+"/>
  272.                         <nameExpr expr="[\w]+"/>
  273.                     </className>
  274.                     <function
  275.                         mainExpr="^[\t ]*(?!(if\(|while\(|for\())([a-zA-Z0-9#!^+&<>*~$_])+\d*(\(|\[)[\w+:=\d\s,&quot;#.;]*(\)|\])([\s\t\r\n]|(/\*.*?\*)/|((?<=[\s\t]);[^\r\n]*?$))*?[\s\t]*\{|^[\t ]*(?!(if\(|while\(|for\())([a-zA-Z0-9#!^+&<>*~$_])+\d*:(?=([\s\t]*[\r\n]|[\s\t]+;.*[\r\n]))|^[\t ]*(?!(if\(|while\(|for\())([a-zA-Z0-9#!^+&<>*~$_: ])+\d*(?&lt;![ ])::(?=[^\r\n\t\s])?">
  276.                         <functionName>
  277.                             <funcNameExpr expr="([a-zA-Z0-9#!^+&<>*~$_])+\d*(\(|\[)[\w+:=\d\s,&quot;#.;]*(\)|\])|([a-zA-Z0-9#!^+&<>*~$_: ])+\d*::?"/>
  278.                         </functionName>
  279.                     </function>
  280.                 </classRange>
  281.                 <function
  282.                     mainExpr="^[\t ]*(?!(if\(|while\(|for\())([a-zA-Z0-9#!^+&<>*~$_])+\d*\([\w+:=\d\s,&quot;#.;]*\)([\s\t\r\n]|(/\*.*?\*)/|((?<=[\s\t]);[^\r\n]*?$))*?[\s\t]*\{|^[\t ]*(?!(if\(|while\(|for\())([a-zA-Z0-9#!^+&<>*~$_])+\d*:(?=([\s\t]*[\r\n]|[\s\t]+;.*[\r\n]))|^[\t ]*(?!(if\(|while\(|for\())([a-zA-Z0-9#!^+&<>*~$_: ])+\d*(?&lt;![ ])::(?=[^\r\n\t\s])?"
  283.                     displayMode="$className->$functionName">
  284.                     <functionName>
  285.                         <nameExpr expr="([a-zA-Z0-9#!^+&<>*~$_])+\d*\([\w+:=\d\s,&quot;#.;]*\)|([a-zA-Z0-9#!^+&<>*~$_: ])+\d*::?"/>
  286.                     </functionName>
  287.                 </function>
  288.             </parser>
  289.         </parsers>
  290.     </functionList>
  291. </NotepadPlus>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement