--- NOTES
- Working on Path env variable remember to change values for both installer and uninstaller!
--- QUAIL
-
BUGS
- Not dangerous. COMPARESEARCH::ArrayPartFirstMatchVector inside
open\open.hppreads outside it's memory. Still within my program scope. When we're checking against a string with a key that has more characters we are bypassing the EOS sign and reading outside of the variable memory (possibly, ... its std::vector). - Not dangerous. Configuration files (main, global, include, +project files) being still in use. Its an edge case but it happens sometimes. Making uninstaller not uninstalling everything properly.
- include space in path bug fix via "" or `` or ''.
- queue
,bug fix.
- Not dangerous. COMPARESEARCH::ArrayPartFirstMatchVector inside
-
Have a better look at: Making projects in global.txt. There might be potential bugs and unchecked errors.
-
Differentiate between "topConfigsFolder" and "installedBinaryFolder". This will help in making top-level-configs located outside Quail directory.
-
Make it so global config values can be overridden by normal config values.
-
Customizable styling for command display -> registry keys and values.
-
Adding Quail configuration data using --add command: like
quail -a module key "value". -
Edit Quail configuration data using --edit command: like
quail -e module key "value". -
--optimize,-xto test the memory allocations, the amount of required data that is needed Store that in Windows Registry and we reuse it as the first allocation size the open buffer. -
Replace std::vector's with one buffer only.
-
Quail setting - coloring.
-
Quail setting - spacing - registry value.
-
Quail setting - spacing - 0 means no limiting.
-
???. Maybe directory as
-dor--directoryto open directory of a defined project. -
Replace "IsForceC8Display" with flags variable.
-
Add a
--show,-swith an allias. It prints the WHOLE command-value in one line just like version is. -
Add HIDDEN - new feature 'tags' now befors '=' sign a tag can be created. Tags can be defined by quail itself or by the user (but thats a far future).
!cmd HIDDEN = start "" "something". HIDDEN tag makes the command or queue not visible in view. -
Add GROUP, MODULE, VARIABLE, SPECIAL - new feature 'tags' for module syntax. This highlights text according to tag.
-
? Quail HotKey via RegisterHotKey() with either MOD_ALT or MOD_CONTROL. This would run the quail -o <rest_of_the_command>. However an input box app would be neccessery for providing the rest_of_the_command.
-
.qtf - quail text file, give an option to use such extension reqistring in as openable via notepad/++. This would allow an easier way of identifing quail files maybe even support creating syntax highlight for them in future.
--- INSTALLER
- Move created window objects outside WM_PAINT.
- Last, Browse, Path, Components windows use loses focus of main window. making use of arrows impossible. Fix it.
- Make the download and installing run on a separate Threat so that GUI wont lag.
- Make installer display centered.
- Give an option in installer to rename the batch file.
- Distinguish data and view layer.
- Double check for folder creation.
- BUG. Directory path that is being displayed at confirmation sometimes goes off screen.
- Shared icon for installer and uninstaller with a pc in the back.
--- UNINSTALLER
- When folder is being opened during deinstalation it wont remove itself.
- Shared icon for installer and uninstaller with a pc in the back.
--- GITHUB
- More info on Global files.
- Give info on shell changing and that by default it is batch
- Add a new build to github with "--settings" feature.
- Provide information on how to build quail without quail.
--- OTHER
- Make script for automatic releases.
- Examples:
- gimp
- blender
- Git tag and rebuild and release
- Create a roadmap
- DEBUG_FLAG_POSTLOGGING implementation - file/buffer logging
- New type Secrets / Defines - How to tell the new user what specific constant he is missing?
Instead provide a system for dimming highlight meaning that a constant is missing. This also means that no error have to be thrown during that operation as it is doing now.
- New feature 'groups' e.g. "cmake_remove" -> make it so user can match with "cma rem".
Instead provide new feature
tags. tagging a module will force displaying it in a different color. Tags are: GROUP, MODULE, VARIABLE. Syntax:^-name GROUP = location.