Improve flag & option name quoting in completion generation for all 3 shells #767
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Improve flag & option name quoting in completion generation for all 3 shells.
Improve zsh quoting.
Many quoting issues remain.
To fix them, there should first be enforced & documented limits on the acceptable characters in various values throughout SAP to avoid unnecessary quoting (see #768).
Otherwise, there's a massive rabbit hole of quoting issues. Given the way that tests are currently setup, adding tests for a fixed issue in one shell requires the same issue to be fixed in all 3 shells, which is cumbersome.
e.g., I haven't ensured that fish's
argparse
function will work with shell characters that this PR now quotes. Beforehand, they would just break the whole script by causing syntax errors. Now, they might just mess up an option spec forargparse
, which, while it could mess up argument parsing, will not cause syntax errors.It will be a process of iterative improvement, rather than fixing everything at once.
Resolve #761
Checklist