anchor.diff:      let replace (pattern : string) (replacement : string) input =
           System.Text.RegularExpressions.Regex.Replace(input, pattern, replacement)
   
  -    let syntax = 
  +    let syntax =
           subParser.PrintCommandLineSyntax(usageStringCharacterWidth = width)
           |> indentBy 4
   
  
positive.code:             | CreateNewBindingFiles -> "Creates binding redirect files if needed."
              | Clean_Redirects -> "Removes all binding redirects that are not specified by Paket."
              | No_Install -> "Skips paket install process (patching of csproj, fsproj, ... files) after the generation of paket.lock file."
              | Keep_Major -> "Allows only updates that are not changing the major version of the NuGet packages."
              | Keep_Minor -> "Allows only updates that are not changing the minor version of the NuGet packages."
              | Keep_Patch -> "Allows only updates that are not changing the patch version of the NuGet packages."
              | Touch_Affected_Refs -> "Touches project files referencing packages which are affected, to help incremental build tools detecting the change."
  
  type ConfigArgs =
      | [<CustomCommandLine("add-credentials")>] AddCredentials of string
  
negative.code:             | ApiKey(_) -> "Optionally specify your API key on the command line. Otherwise uses the value of the `nugetkey` environment variable."
              | EndPoint(_) -> "Optionally specify a custom api endpoint to push to. Defaults to `/api/v2/package`."
  
  type GenerateLoadScriptsArgs =
      | [<CustomCommandLine("groups")>] Groups of groups:string list
      | [<CustomCommandLine("framework")>] Framework of target:string
      | [<CustomCommandLine("type")>] ScriptType of id:string
  with
    interface IArgParserTemplate with
        member this.Usage =
          match this with
          | Groups _ -> "Groups to generate scripts for, if none are specified then generate for all groups"
          | Framework _ -> "Framework identifier to generate scripts for, such as net45 or netstandard1.6"
          | ScriptType _ -> "Language to generate scripts for, must be one of 'fsx' or 'csx'."
  
  type WhyArgs =
      | [<CustomCommandLine("nuget")>][<Mandatory>] NuGet of package_id:string
      | [<CustomCommandLine("group")>] Group of name:string
      | Details
  with
    interface IArgParserTemplate with
        member this.Usage =
          match this with
          | NuGet _ -> "Name of the NuGet package."
          | Group _ -> "Allows to specify the dependency group."
  