anchor.diff:                                                                 {bare, false},
                                                                  {deps, ?DEPS},
                                                                  {example, "rebar dialyzer"},
  -                                                               {short_desc, "Run the Dialyzer analyzer on the project."},
  -                                                               {desc, ""},
  +                                                               {short_desc, short_desc()},
  +                                                               {desc, desc()},
                                                                  {opts, Opts}])),
       {ok, State1}.
  +
  +desc() ->
  +    short_desc() ++ "\n"
  +    "\n"
  +    "This command will build, and keep up-to-date, a suitable PLT and will use "
  +    "it to carry out success typing analysis on the current project.\n"
  +    "\n"
  +    "The following (optional) configurations can be added to a rebar.config:\n"
  +    "`dialyzer_warnings` - a list of dialyzer warnings\n"
  +    "`dialyzer_plt` - the PLT file to use\n"
  +    "`dialyzer_plt_apps` - a list of applications to include in the PLT file*\n"
  +    "\n"
  +    "*If this configuration is not present a selection of applications will be "
  +    "used based on the `applications` and `included_applications` fields in "
  +    "the relevant .app files.\n"
  +    "\n"
  +    "Note that it may take a long time to build the initial PLT file. Once a "
  +    "PLT file (defaults to `.rebar.plt`) has been created for a project it can "
  +    "safely be copied and reused in another project. If a PLT file has been "
  +    "copied from another project this command will do the minimial alterations "
  +    "to the PLT file for use in the new project. This will likely be faster "
  +    "than building a new PLT file from scratch.".
  +
  +short_desc() ->
  +    "Run the Dialyzer analyzer on the project.".
   
   -spec do(rebar_state:t()) -> {ok, rebar_state:t()} | {error, string()}.
   do(State) ->
  
positive.code:     end.
  
  read_plt(State) ->
      Plt = rebar_state:get(State, plt),
      case dialyzer:plt_info(Plt) of
          {ok, Info} ->
              Files = proplists:get_value(files, Info, []),
  
negative.code: do_succ_typings(State, Apps) ->
      ?INFO("Doing success typing analysis...", []),
      Files = apps_to_files(Apps),
      Plt = rebar_state:get(State, dialyzer_plt),
      Opts = [{analysis_type, succ_typings},
              {from, byte_code},
              {files, Files},
  