The script file with the 2 functions was updated on 2009-02-10.
I have changed slightly all variable names by adding a prefix letter for the type of the variable. Advantages of using a type prefix letter:
- The type of a variable is always visible which is a great help.
- No problem anymore with variable names similar common words used in comments or strings, especially for searching/replacing such variables. For example sDirectory as variable name is much better than just Directory because word Directory can also exist in comments and strings.
- It is easy to search for all string, number or boolean variables if using a type prefix letter (always lowercase) and the variable name starts with an uppercase character. For example the case sensitive regular expression search string s[A-Z][A-Za-z]+ with option Match Whole Word Only finds all string variables in the script file.
- Using type prefix letters makes the selection of an existing variable of type string, number or boolean easier in the auto-complete dialog.
Additionally the global variable used is now named
g_nDebugMessage.
g_ as additional prefix defines that this variable is a global variable not defined inside the function. Variables with a non standard type don't have a prefix, but have a very special name like
WorkingFile.
The standard prefixes I use are:
an ... array of numbers (doesn't exist in FindSelectInnerOuter.js)
as ... array of strings (doesn't exist in FindSelectInnerOuter.js)
b ... boolean
n ... number
s ... string
Further I have added a workaround for a bug of UltraEdit (currently v14.20.1.1008 and confirmend by IDM) in both functions.
currentLineNum returns wrong line number if a find was executed before and the found string ends with a line ending character and therefore the cursor is at start of the line below the line(s) with found and selected string (block).
Last I have added a code for demonstrating the usage of the 2 functions. So it is now possible to simply run the script to see the functions in action on a temporarily created new file with example content written into this temp file by the script.