<div dir="ltr">In trying to convert eddie (<a href="http://hackage.haskell.org/package/eddie">http://hackage.haskell.org/package/eddie</a>) from CmdArgs optparse-applicative, I've run into a couple of problems.<div><br></div><div>First question: I have options whose legality depends on other options: two that can't be specified together, and a couple that require one of the two, among other things. Is there some way to specify such constraints when building the parser? Maybe a way to print just the usage message if I check these myself? Maybe a better approach?</div><div><br></div><div>It looks like if I replace main in test/Example/Hello.hs with:</div><div><div>main =  handleParseResult . Failure $ parserFailure (prefs idm) (info sample briefDesc) ShowHelpText mempty</div></div><div><br></div><div>I should just get the Usage message output, but instead I get the full help text.</div><div><br></div><div>Second, and possibly related, it's not at all clear what fullDesc does in that example program. In particular, removing it doesn't seem to change the program behavior. Is there some behavior I've missed, or is this an error?</div></div>