anchor.diff:      );
   ----
   
  +.Kotlin
  +[source,kotlin,role="secondary"]
  +----
  +val commandLine = CommandLine(MainCommand())
  +    .addSubcommand("cmd1",             ChildCommand1())
  +    .addSubcommand("cmd2",             ChildCommand2())
  +    .addSubcommand("cmd3", CommandLine(ChildCommand3())
  +        .addSubcommand("cmd3sub1",             GrandChild3Command1())
  +        .addSubcommand("cmd3sub2",             GrandChild3Command2())
  +        .addSubcommand("cmd3sub3", CommandLine(GrandChild3Command3())
  +            .addSubcommand("cmd3sub3sub1", GreatGrandChild3Command3_1())
  +            .addSubcommand("cmd3sub3sub2", GreatGrandChild3Command3_2())
  +        )
  +    )
  +----
  +
   By default, the usage help message only shows the subcommands of the specified command,
   and not the nested sub-subcommands. This can be customized by specifying your own <<Reordering Sections,`IHelpSectionRenderer`>> for the command list section.
   The `picocli-examples` module has an https://github.com/remkop/picocli/blob/master/picocli-examples/src/main/java/picocli/examples/customhelp/ShowCommandHierarchy.java[example] that shows how to accomplish this.
  
positive.code: 
  From picocli 4.0, boolean options can be `negatable`.
  
  ```java
  @Command(name = "negatable-options-demo")
  class NegatableOptionsDemo {
      @Option(names = "--verbose",           negatable = true) boolean verbose;
      @Option(names = "-XX:+PrintGCDetails", negatable = true) boolean printGCDetails;
      @Option(names = "-XX:-UseG1GC",        negatable = true) boolean useG1GC = true;
  }
  ```
  
  When an option is negatable, picocli will recognize negative aliases of the option on the command line.
  
  
negative.code:         commandListHeading = "%nCommands:%n%nThe most commonly used git commands are:%n")
  class Git {
  
      @Option(names = "--git-dir", description = "Set the path to the repository.")
      private File gitDir;
  }
  ----
  
  .Kotlin
  [source,kotlin,role="secondary"]
  ----
  @Command(name = "git", mixinStandardHelpOptions = true,
          version = ["subcommand demo - picocli 4.0"],
          subcommands = [HelpCommand::class],
          description = ["Git is a fast, scalable, distributed revision control " +
                         "system with an unusually rich command set that provides both " +
                         "high-level operations and full access to internals."],
          commandListHeading = "%nCommands:%n%nThe most commonly used git commands are:%n")
  class Git : Runnable {
  
      @Option(names = ["--git-dir"], description = ["Set the path to the repository."])
      lateinit var gitDir : File
  }
  ----
  
  