On Sat, 5 May 2012, Frédéric Delanoy wrote: [...]
The msiexec conventions look sane to me: [ ] for optional and { } for mandatory parameters (*only* when a choice/list is involved). It's also what's used in other wine commands "/?" results (e.g. 'start', 'ipconfig', 'regedit', etc.).
It's no so consistent.
msiexec uses names like 'product_code' but taskkill uses 'ProcessID' (which aspell does not like) and wineconsole uses '<command>'.
regedit describes what 'filename' and 'regpath' means independently of the option that uses these, msiexec and start do not describe what things like 'package' or 'program_filename' are.
In xcopy it's 'Usage: ... Where: ...' while in wineconsole it's 'Usage: ... Options: ...' and msiexec has a totally different structure (and does not very clearly differentiate commands and options).
For ipconfig there's spaces around brackets while in dxdiag or msiexec where's no space around the brackets.
xcopy says '[/Y] [/-Y]' when it should probably be '[/Y | /-Y]', although msiexec would likely describe outside of usage line as '/{Y|-Y}'.