Dear Austin and Griatch,
I'm glad you like it! Right now I am stuck because I can't figure how to build the interface. My aim is to have the App handle in a single file multiple "docstrings"; the user could jump from one docstring to the other using a drop-down menu. So far no problems.
But then, each docstring could belong to one of the following types:
- Plain -- ie: just a plain ANSI text that the user copies to clipboard and pastes somewere else.
- Python docstring -- ie: the docstring is associated to a given Class in a given external module. This means that when the user "outputs to docstrings", all docstrings of this type will be injected in the corresponding Class as docstrings. This is useful for updating Cmds docstrings. For this type of docstring, the user will have to associate a module and a class in that module.
- Batch command docstrings -- ie: the docstring will output to an Evennia batchcommand file that will contain all the docstrings of this type in an Evennia list of "@help/append" commands (which, by the way, need trailing whitespaces converted to {_ in order not to be trimmed). For this type, the user has to associate an output batchcommand file and the custom help category and entry.
These are the main types I want to implement (to start with). What I am not yet sure about is how to handle it in the interface.
I'd definitely want to have the choice to "import" a python Cmds module, so that the user can extract all the Cmd classes into a working document, and then change them. Also, it should allow to import single Classes on existing docstring documents.
The thing is that I have to work out where and how to insert the different working field for each type--type 2 will need to offer a menu of choices based on existing Cmd classes, so they can't be arbitrary names. Type 3 need to offer two fields: help category and entry. So I guess it's better to create a separate popup window for those options, I just wanted to make something not to complicate to use.
Also, I think that "output" would mean injecting all Cmd docstrings into their modules, as well as recreating the custom help entries batchcommand.
When the app will allow to centralize control of all Cmds autohelp docstrings, as well as custom help entries, it will be very useful to handle all in-Mud documentation in an easy manner -- no matter how many modules are involved. Anything extra would be a bonus, but these two are the main purpose of the whole App.
Then I could start working on extra-formatting tags, hypenation for word-wrapping, ecc.
It's just driving me crazy that I can't visualize how the settings menu should look like... I don't want setting to be scattered in many different windows, neither I want an interface with redundant stuff. I guess I just need to sit and wait for some inspiration...
Any ideas?