JPlag
JPlag copied to clipboard
CLI arguments overly complex
Currently, the CLI is a victim of feature creep. The more features are introduced, the more complex the CLI becomes. This makes the CLI confusing and hard to use. Moreover, we also have CLI arguments that arguably will not be used anyways. With the release of v4.0.0 we have the chance to remove anything we do not need. These options can still be available via the Java API.
Ideas (feel free to add or comment below):
- [x] Identify and remove unnecessary CLI arguments (e.g. do we both need
-n
and-m
?) - [x] Reduce the clustering options to a minimum
- [ ] Introduce more verbose forms of argument flags in addition to the short ones (e.g. add
--min-match-length
for-t
)
Relates to:
- #550
- #572
I played around with the clustering a bit and found out which CLI arguments definitely need to be kept:
-
--cluster-skip
-
--cluster-alg
-
--cluster-metric
Ideally, I would want advanced CLI arguments for clustering to be available but hidden. They shall not be printed in the help text. Rather, an advanced help command should be shown, which, when used, shows the advanced arguments.