Cross-compatibility between projectsFor that, I'd cut loose the idea of a mirror image of the file structure, and just put the files for a script into a directory of the same name as the script, and make sure to use the appropriate environment variables instead of absolute paths when relating to the target dirs.
If you really want cross-compatibility between projects, I think you're going to have to make it clear that the API has variables to handle the proper locations of files. Otherwise, you'll surely have folk like me explicitly defining a full path to the file, worrying only about my project.
Environment VariablesIt seems like there should be a clear distinction between Local and Build Environment variables.
I think following a structure like this makes sense for doing that:
%Local*%=%*%
%Build*%=#$p*#$p
Just replace * with whatever environment variable is applicable to the architecture.
SystemDrive, SystemRoot, ProgramFiles, ALLUSERSPROFILE, etc.
Intuitive Function SyntaxI think it would be a good idea to use the usual function syntax: Func(Arg1, Arg2, Arg3)
That would make it more readable, and more intuitive for those of us familiar with just about any programming language. It would also make it easy to get the SciTE engine to let us know what arguments the functions take.
Similarly, I think it would be a good idea to change the way the custom GUI (Nice work, by the way (IMG:
../forums/style_emoticons/default/smile.gif) ) keeps track of its objects to something more like: ItemName(Index, Caption, Value, X, Y, Width, Height)
"The API Reference Wiki Page"I think there should be a page which is very apparent in this community, which shows all of the available API functions and variables, and how to make use of them.
It could start off as a single page, which mentions all of the API functions and variables, then it could grow from there. To help it grow, making it prominent everywhere would likely help.
Eventually, for every API item, there ought to be a(n):
* Example function declaration: FuncName(Arg1, Arg2, Arg3)
* Definition of Argument Values: Arg1 = A string which specifies the output directory, Arg2 = ...
* List of external variables the API is dependent upon: %x% = Used all over the damn place, ...
* Placemark to report bugs
"The Feature Request Wiki Page"People can search through the list of topics which have already come up, and if its been brought up before: There could be a "Working on it!" or a "Screw this! Too much work!" to let it be known where things stand.
And, pretty much everything on the Forums right now seems like it would make more sense to be on a wiki.
The social part ought to be delegated to the chat room. Meebo Rooms is better for that, in that it works on mozilla and opera, as well as IE.
By the wayWhy am I seeing not only AddShortcut, but also Add-Shortcut, Add_Shortcut, and Add_Shortcut-old?