Enum Device.TerminalType

java.lang.Object
java.lang.Enum<Device.TerminalType>
org.aesh.terminal.Device.TerminalType
All Implemented Interfaces:
Serializable, Comparable<Device.TerminalType>, java.lang.constant.Constable
Enclosing interface:
Device

public static enum Device.TerminalType extends Enum<Device.TerminalType>
Known terminal types and their capabilities.

Each terminal type includes:

  • An identifier string
  • Supported OSC codes
  • Default/native color depth
  • Enum Constant Details

    • JETBRAINS

      public static final Device.TerminalType JETBRAINS
      JetBrains IDEs (IntelliJ, etc.) using JediTerm
    • VSCODE

      public static final Device.TerminalType VSCODE
      Visual Studio Code integrated terminal
    • APPLE_TERMINAL

      public static final Device.TerminalType APPLE_TERMINAL
      Apple Terminal
    • ITERM2

      public static final Device.TerminalType ITERM2
      iTerm2
    • KITTY

      public static final Device.TerminalType KITTY
      Kitty terminal - GPU-accelerated, uses Kitty graphics protocol
    • GHOSTTY

      public static final Device.TerminalType GHOSTTY
      Ghostty - Fast GPU-accelerated terminal, uses Kitty graphics protocol
    • ALACRITTY

      public static final Device.TerminalType ALACRITTY
      Alacritty - GPU-accelerated terminal
    • WEZTERM

      public static final Device.TerminalType WEZTERM
      WezTerm - GPU-accelerated terminal with multiplexing
    • CONTOUR

      public static final Device.TerminalType CONTOUR
      Contour - Modern terminal emulator
    • RIO

      public static final Device.TerminalType RIO
      Rio - Hardware-accelerated GPU terminal
    • WARP

      public static final Device.TerminalType WARP
      Warp - Modern terminal with AI features
    • WAVE

      public static final Device.TerminalType WAVE
      Wave - Modern terminal
    • HYPER

      public static final Device.TerminalType HYPER
      Hyper - Electron-based terminal
    • TABBY

      public static final Device.TerminalType TABBY
      Terminus/Tabby - Electron-based terminal
    • EXTRATERM

      public static final Device.TerminalType EXTRATERM
      Extraterm - Electron-based terminal
    • GNOME_TERMINAL

      public static final Device.TerminalType GNOME_TERMINAL
      GNOME Terminal and other VTE-based terminals
    • KONSOLE

      public static final Device.TerminalType KONSOLE
      Konsole - KDE terminal emulator
    • RXVT

      public static final Device.TerminalType RXVT
      rxvt and urxvt
    • WINDOWS_TERMINAL

      public static final Device.TerminalType WINDOWS_TERMINAL
      Windows Terminal
    • MINTTY

      public static final Device.TerminalType MINTTY
      Mintty - Default terminal for Git Bash, Cygwin, MSYS2
    • CONEMU

      public static final Device.TerminalType CONEMU
      ConEmu/Cmder - Windows console emulator
    • TMUX

      public static final Device.TerminalType TMUX
      tmux - Terminal multiplexer (no OSC passthrough by default)
    • SCREEN

      public static final Device.TerminalType SCREEN
      GNU Screen - Terminal multiplexer (no OSC passthrough by default)
    • XTERM

      public static final Device.TerminalType XTERM
      xterm and compatible
    • LINUX_CONSOLE

      public static final Device.TerminalType LINUX_CONSOLE
      Linux console (no OSC query support)
    • UNKNOWN

      public static final Device.TerminalType UNKNOWN
      Unknown terminal - assume basic support
  • Method Details

    • values

      public static Device.TerminalType[] 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 Device.TerminalType 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
    • getIdentifier

      public String getIdentifier()
    • getSupportedCodes

      public Set<Device.OscCode> getSupportedCodes()
    • supports

      public boolean supports(Device.OscCode code)
    • getDefaultColorDepth

      public ColorDepth getDefaultColorDepth()
      Get the default/native color depth for this terminal type.

      This is the terminal's native capability. The actual color depth may be different depending on TERM/COLORTERM settings.

      Returns:
      the default color depth
    • supportsTrueColor

      public boolean supportsTrueColor()
      Check if this terminal natively supports true color (24-bit).
      Returns:
      true if the terminal supports true color
    • getExpectedFeatures

      public Set<DeviceAttributes.Feature> getExpectedFeatures()
      Get the expected DA1 features for this terminal type.

      This returns the features that this terminal type is expected to report when queried via DA1. This can be used to validate DA1 responses or to infer capabilities without querying.

      Note: Actual features may vary based on terminal version and configuration.

      Returns:
      set of expected features, never null
    • expectsSixel

      public boolean expectsSixel()
      Check if this terminal type is expected to support Sixel graphics.
      Returns:
      true if Sixel is expected to be supported
    • expectsMouse

      public boolean expectsMouse()
      Check if this terminal type is expected to support mouse input.
      Returns:
      true if mouse support is expected