Package picocli

Enum CommandLine.Help.Ansi

java.lang.Object
java.lang.Enum<CommandLine.Help.Ansi>
picocli.CommandLine.Help.Ansi
All Implemented Interfaces:
Serializable, Comparable<CommandLine.Help.Ansi>, java.lang.constant.Constable
Enclosing class:
CommandLine.Help

public static enum CommandLine.Help.Ansi extends Enum<CommandLine.Help.Ansi>
Provides methods and inner classes to support using ANSI escape codes in usage help messages.
  • Enum Constant Details

    • AUTO

      public static final CommandLine.Help.Ansi AUTO
      Only emit ANSI escape codes if the platform supports it and system property "picocli.ansi" is not set to any value other than "true" (case insensitive).
    • ON

      public static final CommandLine.Help.Ansi ON
      Forced ON: always emit ANSI escape code regardless of the platform.
    • OFF

      public static final CommandLine.Help.Ansi OFF
      Forced OFF: never emit ANSI escape code regardless of the platform.
  • Method Details

    • values

      public static CommandLine.Help.Ansi[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static CommandLine.Help.Ansi valueOf(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null
    • enabled

      public boolean enabled()
      Returns true if ANSI escape codes should be emitted, false otherwise.
      Returns:
      ON: true, OFF: false, AUTO: if system property "picocli.ansi" has value "tty" (case-insensitive), then return true if either System.console() != null or picocli guesses the application is running in a pseudo-terminal pty on a Linux emulator in Windows. If system property "picocli.ansi" has value "true" (case-sensitive) then return true. Otherwise use picocli's Heuristics for Enabling ANSI to determine whether the platform supports ANSI escape codes.
    • text

      public CommandLine.Help.Ansi.Text text(String stringWithMarkup)
      Returns a new Text object for this Ansi mode, encapsulating the specified string which may contain markup like @|bg(red),white,underline some text|@.

      Calling toString() on the returned Text will either include ANSI escape codes (if this Ansi mode is ON), or suppress ANSI escape codes (if this Ansi mode is OFF).

      Equivalent to this.new Text(stringWithMarkup).

      Since:
      3.4
      See Also:
    • string

      public String string(String stringWithMarkup)
      Returns a String where any markup like @|bg(red),white,underline some text|@ is converted to ANSI escape codes if this Ansi is ON, or suppressed if this Ansi is OFF.

      Equivalent to this.new Text(stringWithMarkup).toString().

      Since:
      3.4
      See Also:
    • valueOf

      public static CommandLine.Help.Ansi valueOf(boolean enabled)
      Returns Ansi.ON if the specified enabled flag is true, Ansi.OFF otherwise.
      Since:
      3.4
    • apply