Hi Jan,
Thanks for the update.

Tested the code explorer for AutoHotKey (ftAHK):
cite:
--------------------------------------------------------------------------------
:*B:hotstring::Replacestring

F2::MsgBox, Hotkey F2
A & 9 up::MsgBox, Hotkey A & 9 on release

RealLabel: 
   MsgBox, Hotkey F2
Return

; RealLabelLineComment:    ;the semi colon is a line comment

/*   ;start block comment

http://msdn2.microsoft.com/en-us/library/ms649010.aspx               

RealLabelBlockComment:    

*/  ;end block 
comment--------------------------------------------------------------------------------

The code explorer showed as labels the "F2", "RealLabel", "http" and
"RealLabelBlockComment".

I do not know if it is by design that labels inside block comments are listed.
But the http:// is not a label.

These rules apply to AutoHotkey:
- Labels have a colon ":" after their name followed by a space, tab or newline.
NOT allowed characters for labels are \s,`%
- Hotkeys end on a double colon "::". There doesn't need to be a space after
that but can. The allowed characters for hotkeys are \w #!<>^&  Or the other way
around, not allowed characters are space and \s. They can have two hotkeys
combined with a & and can be followed with the text "up".
- Hotstring start with an colon ":" have some characters *?\w\d- an then a text
.*? and a double colon "::". There doesn't need to be a space after that but
can.

Here are some regex, maybe it helps to improve the code explorer for Autohotkey

Hotkeys:
i)^\s*(?P<Name>[^ \s]+?(?:\s+&\s+[^\s]+?)?(?:\s+up)?)::

HotStrings:
^\s*:[*?\w\d-]*:(?P<Name>.+?)::

Label with line comment
^\s*(?P<Name>[^\s,`%]+):\s*?(?:\s;.*)?$

Function definitions are rather hard to get. Here is a Regex, that does capture
function definitions and calls. To only capture definitions the same and next
lines have to be analyses for an opening brace "{". Inbetween the definition and
the opening brace only comments are allowed.
^\s*(?P<Name>[EMAIL PROTECTED])\((?P<Parameters>[EMAIL 
PROTECTED],=".\s-]*)(?P<ClosingParen>\)
\s*(?P<OpeningBrace>\{)?)?\s*?(?:\s;.*)?$

These regex were originally created by PhiLho, with modifications by myself.

-- 
<http://forum.pspad.com/read.php?6,40478,40541>
PSPad freeware editor http://www.pspad.com

Odpovedet emailem