Class Status

java.lang.Object
org.jline.utils.Status

public class Status extends Object
Manages a status bar at the bottom of the terminal.

The Status class provides functionality for displaying and managing a status bar at the bottom of the terminal. It allows applications to show persistent status information to the user while still using the rest of the terminal for normal input and output.

Key features include:

  • Support for multiple status lines
  • Styled text with ANSI colors and attributes
  • Automatic resizing based on terminal dimensions
  • Optional border between main display and status area
  • Ability to temporarily suspend the status display

The status bar is particularly useful for displaying persistent information such as:

  • Application mode or state
  • Current file or context
  • Key bindings or available commands
  • Error messages or notifications

This class is used by various JLine components to provide status information to the user without disrupting the main terminal interaction.

  • Field Details

    • terminal

      protected final Terminal terminal
    • supported

      protected final boolean supported
    • suspended

      protected boolean suspended
    • borderString

      protected AttributedString borderString
    • border

      protected int border
    • display

      protected Display display
    • lines

      protected List<AttributedString> lines
    • scrollRegion

      protected int scrollRegion
  • Constructor Details

    • Status

      public Status(Terminal terminal)
  • Method Details

    • getStatus

      public static Status getStatus(Terminal terminal)
    • getExistingStatus

      public static Optional<Status> getExistingStatus(Terminal terminal)
    • getStatus

      public static Status getStatus(Terminal terminal, boolean create)
    • close

      public void close()
    • setBorder

      public void setBorder(boolean border)
    • resize

      public void resize()
    • resize

      public void resize(Size size)
    • reset

      public void reset()
    • redraw

      public void redraw()
    • hide

      public void hide()
    • update

      public void update(List<AttributedString> lines)
    • update

      public void update(List<AttributedString> lines, boolean flush)
      Returns true if the cursor may be misplaced and should be updated.
    • suspend

      public void suspend()
      The suspend method is used when a full-screen. If the status was not already suspended, the lines used by the status are cleared during this call.
    • restore

      public void restore()
      The restore() call is the opposite of suspend() and will make the status bar be updated again. If the status was suspended, the lines used by the status will be drawn during this call.
    • size

      public int size()
    • toString

      public String toString()
      Overrides:
      toString in class Object