implement generic tool and command (preset) definition
We need a generic way to define tools:
- name
- UUID
- executable
- search paths (user may override or extend them)
- available for OS (Windows, Linux, Mac OS X etc.)
- supported command types (Open, Run, Explore etc.)
- available for resources (files, folders or both)
- available for number of resources (mostly for one resource, but may be in case of compare tools 2 or 3 resources must be selected or stored before, see #41 )
Presets or commands can re-use tools defined above:
- name
- UUID
- used tool (by name or UUID)
- used tool command type
- used tool number of ressources
- ...
More to be defined later...
To clarify, would this include being able to rename the menu options?
e.g. Renaming "Run with Windows Git-Bash" to "Gradle Build (Bash)" if I had the command set up to run a gradle script
Yes, for menu names you can select from predefined name patterns like:
"${easyshell:command_type} with ${easyshell:command_name}" that is fixed in v1.5 test build and expanded to your example "Run with Windows Git-Bash"
"${easyshell:command_type}: ${easyshell:command_name}" that is default in v2.0 beta 1 build and expanded to your example "Run: Windows Git-Bash"
etc. or you enter your own name like "Gradle Build (Bash)" directly.
@josh-bridge Please see already implemented features described in issue #53 that addresses your request.
This issue #49 is to make the tool definitions also more generic, because at different PCs and OSes users have the same tools in different folders etc. We need a way to just have the command/preset definitions and menus independent of tool locations. For this i have a prototype to just describe a tool in generic way and allow user to override some parameters or just add other search locations or let EasyShell search for the locations during first start or by wizard. This is more for future 2.x releases --> may be 2.1...