anchor.diff:  }
   ----
   
  -Files will be copied to below `${outputDir}/${backend}` (or just `${outputDir}` if `separateOutputDirs=false`)
  +Files will be copied to below `+${outputDir}/${backend}+` (or just `+${outputDir}+` if `separateOutputDirs=false`)
   
   Unlike `sourceDir` files can be copied from anywhere in the filesystem.
   
  
positive.code: link:http://asciidoctor.org/docs/user-manual/#attribute-assignment-precedence[Attribute assignment precedence, window="_blank"]
  for more information.
  
  == Compatibility With Previous Releases
  
  === Task Properties
  
  The following properties have been marked as deprecated. Developers are encouraged to migrate ASAP to the alternate
  properties.
  
  [horizontal]
  sourceDocumentNames:: an override to process multiple source files, which are relative to `sourceDir`.
    Use `sources { include 'name' }` instead.
  sourceDocumentName:: an override to process a single source file. Use `sources { include 'name' }` instead.
  backend:: the backend to use. Use `backends` instead.
  
  === Behavior
  
  * The default value for `sourceDir` has changed from `src/asciidoc` to `src/docs/asciidoc`.
  * Files specified in `sourceDocumentNames` must be relative to `sourceDir` and fully contained in `sourceDir`, in other words,
  it's no longer possible to process documents placed outside of the project's sources. Attempts will be made to convert absolute paths
  to relative paths  but conversion will not be guaranteed. Do not pass FileCollections as they will not convert correctly.
  * Source files that are not reachable from `sourceDir`, will no longer cause a build exception, they will just be silently ignored.
  * For backwards compatibility with older version, embedding `attributes` within `options` are still allowed, including legacy forms.
  * Non-source files are no longer automatically copied, unless they are in the `images` folder and `resources` was never
  called.
  * Each backend will now write to a separate subfolder under `outputDir`. To have the old behaviour use
  `separateOutputDirs = false`.
  
  === Options & Attributes
  
  [source,groovy]
  .build.gradle
  ----
  // Map notation
  attributes: toc: 'right',
              'source-highlighter': 'coderay',
              'toc-title': 'Table of Contents'
  
  // List notation
  attributes: [
      'toc=right',
      'source-highlighter=coderay',
      'toc-title=Table of Contents'
  ]
  
  // String notation
  attributes: 'toc=right source-highlighter=coderay toc-title=Table\\ of\\ Contents'
  ----
  
  IMPORTANT: Do not forget to transform Groovy strings into Strings (by explicitly invoking `.toString()` on them) when
  used as option values, otherwise the Ruby runtime will throw an exception.
  
  Notice how spaces are escaped in the last key/value pair.
  
  == Configuration
  
  This plugin uses `asciidoctorj-1.5.3.2` by default, however, you can change this by
  defining a value on the +asciidoctorj+ extension, like so
  
  [source,groovy]
  .build.gradle
  
negative.code: attributes:: a Map specifying various document attributes that can be sent to Asciidoctor
    Use `attributes` to append, Use `setAttributes` or `attributes=` to overwrite.
  
  === Defining Sources
  
  By default the plugin will search for sources under `sourceDir`. Sources may have any of the following extensions in
  order to be discovered:
  