Class Ansi

  • All Implemented Interfaces:
    java.lang.Appendable

    public class Ansi
    extends java.lang.Object
    implements java.lang.Appendable
    Provides a fluent API for generating ANSI escape sequences.
    Since:
    1.0
    • Field Detail

      • DISABLE

        public static final java.lang.String DISABLE
    • Constructor Detail

      • Ansi

        public Ansi()
      • Ansi

        public Ansi​(int size)
      • Ansi

        public Ansi​(java.lang.StringBuilder builder)
    • Method Detail

      • setDetector

        public static void setDetector​(java.util.concurrent.Callable<java.lang.Boolean> detector)
      • setEnabled

        public static void setEnabled​(boolean flag)
      • isEnabled

        public static boolean isEnabled()
      • ansi

        public static Ansi ansi​(java.lang.StringBuilder builder)
      • ansi

        public static Ansi ansi​(int size)
      • fg

        public Ansi fg​(int color)
      • fgRgb

        public Ansi fgRgb​(int r,
                          int g,
                          int b)
      • bg

        public Ansi bg​(int color)
      • bgRgb

        public Ansi bgRgb​(int r,
                          int g,
                          int b)
      • cursor

        public Ansi cursor​(int row,
                           int column)
        Moves the cursor to row n, column m. The values are 1-based. Any values less than 1 are mapped to 1.
        Parameters:
        row - row (1-based) from top
        column - column (1 based) from left
        Returns:
        this Ansi instance
      • cursorToColumn

        public Ansi cursorToColumn​(int x)
        Moves the cursor to column n. The parameter n is 1-based. If n is less than 1 it is moved to the first column.
        Parameters:
        x - the index (1-based) of the column to move to
        Returns:
        this Ansi instance
      • cursorUp

        public Ansi cursorUp​(int y)
        Moves the cursor up. If the parameter y is negative it moves the cursor down.
        Parameters:
        y - the number of lines to move up
        Returns:
        this Ansi instance
      • cursorDown

        public Ansi cursorDown​(int y)
        Moves the cursor down. If the parameter y is negative it moves the cursor up.
        Parameters:
        y - the number of lines to move down
        Returns:
        this Ansi instance
      • cursorRight

        public Ansi cursorRight​(int x)
        Moves the cursor right. If the parameter x is negative it moves the cursor left.
        Parameters:
        x - the number of characters to move right
        Returns:
        this Ansi instance
      • cursorLeft

        public Ansi cursorLeft​(int x)
        Moves the cursor left. If the parameter x is negative it moves the cursor right.
        Parameters:
        x - the number of characters to move left
        Returns:
        this Ansi instance
      • cursorMove

        public Ansi cursorMove​(int x,
                               int y)
        Moves the cursor relative to the current position. The cursor is moved right if x is positive, left if negative and down if y is positive and up if negative.
        Parameters:
        x - the number of characters to move horizontally
        y - the number of lines to move vertically
        Returns:
        this Ansi instance
        Since:
        2.2
      • cursorDownLine

        public Ansi cursorDownLine()
        Moves the cursor to the beginning of the line below.
        Returns:
        this Ansi instance
      • cursorDownLine

        public Ansi cursorDownLine​(int n)
        Moves the cursor to the beginning of the n-th line below. If the parameter n is negative it moves the cursor to the beginning of the n-th line above.
        Parameters:
        n - the number of lines to move the cursor
        Returns:
        this Ansi instance
      • cursorUpLine

        public Ansi cursorUpLine()
        Moves the cursor to the beginning of the line above.
        Returns:
        this Ansi instance
      • cursorUpLine

        public Ansi cursorUpLine​(int n)
        Moves the cursor to the beginning of the n-th line above. If the parameter n is negative it moves the cursor to the beginning of the n-th line below.
        Parameters:
        n - the number of lines to move the cursor
        Returns:
        this Ansi instance
      • a

        public Ansi a​(java.lang.String value)
      • a

        public Ansi a​(boolean value)
      • a

        public Ansi a​(char value)
      • a

        public Ansi a​(char[] value,
                      int offset,
                      int len)
      • a

        public Ansi a​(char[] value)
      • a

        public Ansi a​(java.lang.CharSequence value,
                      int start,
                      int end)
      • a

        public Ansi a​(java.lang.CharSequence value)
      • a

        public Ansi a​(double value)
      • a

        public Ansi a​(float value)
      • a

        public Ansi a​(int value)
      • a

        public Ansi a​(long value)
      • a

        public Ansi a​(java.lang.Object value)
      • a

        public Ansi a​(java.lang.StringBuffer value)
      • format

        public Ansi format​(java.lang.String pattern,
                           java.lang.Object... args)
      • apply

        public Ansi apply​(Ansi.Consumer fun)
        Applies another function to this Ansi instance.
        Parameters:
        fun - the function to apply
        Returns:
        this Ansi instance
        Since:
        2.2
      • render

        public Ansi render​(java.lang.String text)
        Uses the AnsiRenderer to generate the ANSI escape sequences for the supplied text.
        Parameters:
        text - text
        Returns:
        this
        Since:
        2.2
      • render

        public Ansi render​(java.lang.String text,
                           java.lang.Object... args)
        String formats and renders the supplied arguments. Uses the AnsiRenderer to generate the ANSI escape sequences.
        Parameters:
        text - format
        args - arguments
        Returns:
        this
        Since:
        2.2
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • append

        public Ansi append​(java.lang.CharSequence csq)
        Specified by:
        append in interface java.lang.Appendable
      • append

        public Ansi append​(java.lang.CharSequence csq,
                           int start,
                           int end)
        Specified by:
        append in interface java.lang.Appendable
      • append

        public Ansi append​(char c)
        Specified by:
        append in interface java.lang.Appendable