Hi all,
just a question about something that's errrr...- logic?
No fear i will not ask to release sourcode nor to rip a piece out of the commander
I would like the multifunctionality of the commander implemented to customize my
favourite texteditor to use it for managing all about projects using my
favourite scripting language - when I see what you developed and when i look on what RJ - the developer of the texteditor - created then i think it would be win/win for all. His "Texted" provides the environment for your scripting- and plugIn-System and even if both programs will not merge into the same window - they could dock, share the same desktop and one is for the editing and correctness in text while the other will securely will keep track on the locations where the documents are stored.
And of course it were cool to use the features like search in files to bring documents into the view and it were certainly no big deal to create syntax-highlighting and intellisense-driven autocomplete for multiscriptand if i take a look at the document viewer and look to the commanders interface i can see clearly what to develop is more fun and more important to you
- - -
And mentioning that, i miss urgently some string functions that can work based on the count of chars and repeatedly search for matches starting from a given position again or to TrimCharsLeft or TrimCharsRight by a number that says how many to cut.
Intentionally "TrimChars" and not "String"but without a keyword as operation that could be doable by operator signs to a string As well as AddChars
If this means left < and this means right > and this $s1 &= $s2 is regular append $s2 to $s1 in an LTR-language then it would be =& in RTL/systems. Where also the characters are in opposite direction then.
$s1<& $s2 pads $s1 with $s2 in front, equal to $s1 = $s2 & $s1
$s1>& $s2 does the same as $s1 = $s1 & $s2 or s1 &= $s2
operator & as a symbol for concatenation
this one / a symbol to divide / cut /separate
TrimCharsLeft : $string</ $number $s1 </ 7 truncate 7 characters on the left of $s1
TrimCharsRight: $string >/ $number $s2 >/ 5 cut 5 from the right.
kind of a reverse operating Right$() and Left$()-functions while the Mid$() already exists - even it has only the length of 1 char but $string[4...9] were like chars "456789" : anyone instantly understands this
$string[4(9)] says somehow we had 9 chars and start at position 4... doesnt it?
Improving StrFind to StrFindNext that had 1 additional parameter to determine where to start search and return relative from starting position that were about the simple string-handling without to add more keywords.
Left$, Mid$ or Right$ read all really so like 1984 ... but i am not done yet.
i also miss a way to iterate trough a string step by stepand i imagine like a "When-loop" - not really a counter-functional to "For" nor "While" working loop that keeps repeating as long as a variable remains in a certain state and modifies a second variable as a reaction to each additional begin of iteration.
the initial execution were to remember the value of the conditional variable and to do the operation to the second variable with the third expression not necessary math operation but appending a char. i hope this is understandeable:
@var $text = LoadStringFromFile(...somewhere...);
@var $verb = "Find Me!";
@var $position = 0;
@var $matchcount = 0;
when( $position++; matchcount += 1 )
{
$position += StrFindNext( $text, $verb, $position );
# do something and repeat when $position increasesd
}
# goes out of scope when $position was not increased (++), decremented (--) or changed (==)
Q: could there be global constants that are valid in all scopes of a script?
for example
@permanent -1 ->$_NOTHING_$;
a "real const" that looks different from variables, maybe mandatory ucase,
special way of assignment or leading/trailing underscore,additional trailing $...
Or would it be better to develop enumerations derived from a class that will only accept one assignment to each property
- if no destructor they would be perfect. eachh of the enumeration/classes were a unique object that can not be copied using "new" and the delaration of it would already give it a name. thinkeable also predefined (built-in) enumerations alike for the Messagebox-styles
@enum $_mbStyle_ {
{
@var $OK=0;
@var $OKCancel=1;
# etc.
I still have a couple of ideas but its getting to much for a first post. Anyway, happy coding you're doing great