You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add support for escaping inputs that may be interpreted as flags/options (for Unix, arguments starting with - or -- appearing before an argument that is exactly --). This may be necessary as using a flag can change the behavior of a command unintentionally - for example, consider being able to add the --force flag to certain commands.
Proposal
To be decided (suggestions welcome)
The text was updated successfully, but these errors were encountered:
Since flags/options are a convention rather than a shell requirement it will be hard to properly support this. On Unix systems flags/options nearly always start with - or --1 (I think this is a POSIX standard). On Windows systems / is used historically (from DOS), but many CLI tools accept - or -- nowadays. Thus, it seems the best approach is to "escape" leading - on Unix systems and leading / and - on Windows systems and allow users of Shescape to change the set of flag/option characters in case their tool does something else.
From my testing (and based on my understanding) "escaping" these characters (e.g. - as \- for Bash) won't work because the CLI program will receive the escaped characters (in this case just -). So, to "escape" flags/options, leading - (and / for Windows) will have to be removed entirely.
For the purposes of v1, this should be opt-in behavior since this really seems like a breaking change. In v2 the default behavior should be to "escape" flags/options, with an option to opt-out.
Footnotes
Interestingly a string like ' --xyz' (flag with leading space that's preserved due to quoting) is rejected by all CLI tools I tested. But this is strictly an implementation detail, so even such strings should be "escaped". ↩
Feature Request
Description
Add support for escaping inputs that may be interpreted as flags/options (for Unix, arguments starting with
-
or--
appearing before an argument that is exactly--
). This may be necessary as using a flag can change the behavior of a command unintentionally - for example, consider being able to add the--force
flag to certain commands.Proposal
To be decided (suggestions welcome)
The text was updated successfully, but these errors were encountered: