Class TailTipWidgets


  • public class TailTipWidgets
    extends Widgets
    Creates and manages widgets for as-you-type command line suggestions.

    TailTipWidgets provides real-time command line suggestions as the user types, based on command completer data and/or positional argument descriptions. These suggestions are displayed in the terminal's status bar, helping users understand the available options and arguments for commands.

    The widgets can be configured to use different suggestion types and display styles, and can be bound to key sequences for manual invocation.

    • Constructor Detail

      • TailTipWidgets

        public TailTipWidgets​(org.jline.reader.LineReader reader,
                              java.util.Map<java.lang.String,​CmdDesc> tailTips)
        Creates tailtip widgets used in command line suggestions.

        This constructor creates widgets that use both positional argument descriptions and completer data for suggestions (TipType.COMBINED). If argument descriptions don't exist, command completer data will be used. No status bar for argument descriptions will be created (descriptionSize = 0).

        Parameters:
        reader - the LineReader instance to associate with these widgets
        tailTips - a map of command names to their descriptions, containing options and positional argument information
        Throws:
        java.lang.IllegalStateException - if widgets are already created for the LineReader
      • TailTipWidgets

        public TailTipWidgets​(org.jline.reader.LineReader reader,
                              java.util.Map<java.lang.String,​CmdDesc> tailTips,
                              TailTipWidgets.TipType tipType)
        Creates tailtip widgets used in command line suggestions with a specific tip type.

        This constructor allows specifying which data source to use for suggestions (positional argument descriptions, completer data, or both). No status bar for argument descriptions will be created (descriptionSize = 0).

        Parameters:
        reader - the LineReader instance to associate with these widgets
        tailTips - a map of command names to their descriptions, containing options and positional argument information
        tipType - defines which data will be used for suggestions (TAIL_TIP, COMPLETER, or COMBINED)
        Throws:
        java.lang.IllegalStateException - if widgets are already created for the LineReader
      • TailTipWidgets

        public TailTipWidgets​(org.jline.reader.LineReader reader,
                              java.util.Map<java.lang.String,​CmdDesc> tailTips,
                              int descriptionSize)
        Creates tailtip widgets used in command line suggestions with a status bar.

        This constructor creates widgets that use both positional argument descriptions and completer data for suggestions (TipType.COMBINED). If argument descriptions don't exist, command completer data will be used. A status bar for argument descriptions will be created with the specified size.

        Parameters:
        reader - the LineReader instance to associate with these widgets
        tailTips - a map of command names to their descriptions, containing options and positional argument information
        descriptionSize - the size of the status bar for displaying argument descriptions (0 for no status bar)
        Throws:
        java.lang.IllegalStateException - if widgets are already created for the LineReader
      • TailTipWidgets

        public TailTipWidgets​(org.jline.reader.LineReader reader,
                              java.util.Map<java.lang.String,​CmdDesc> tailTips,
                              int descriptionSize,
                              TailTipWidgets.TipType tipType)
        Creates tailtip widgets used in command line suggestions with a status bar and specific tip type.

        This constructor allows full customization of the widgets, specifying both the status bar size and which data source to use for suggestions (positional argument descriptions, completer data, or both).

        Parameters:
        reader - the LineReader instance to associate with these widgets
        tailTips - a map of command names to their descriptions, containing options and positional argument information
        descriptionSize - the size of the status bar for displaying argument descriptions (0 for no status bar)
        tipType - defines which data will be used for suggestions (TAIL_TIP, COMPLETER, or COMBINED)
        Throws:
        java.lang.IllegalStateException - if widgets are already created for the LineReader
      • TailTipWidgets

        public TailTipWidgets​(org.jline.reader.LineReader reader,
                              java.util.function.Function<CmdLine,​CmdDesc> descFun,
                              int descriptionSize,
                              TailTipWidgets.TipType tipType)
        Creates tailtip widgets used in command line suggestions.
        Parameters:
        reader - LineReader.
        descFun - Function that returns command description.
        descriptionSize - Size of the status bar.
        tipType - Defines which data will be used for suggestions.
        Throws:
        java.lang.IllegalStateException - If widgets are already created.
    • Method Detail

      • setTailTips

        public void setTailTips​(java.util.Map<java.lang.String,​CmdDesc> tailTips)
      • setDescriptionSize

        public void setDescriptionSize​(int descriptionSize)
      • getDescriptionSize

        public int getDescriptionSize()
      • isEnabled

        public boolean isEnabled()
      • disable

        public void disable()
      • enable

        public void enable()
      • setDescriptionCache

        public void setDescriptionCache​(boolean cache)
      • tailtipComplete

        public boolean tailtipComplete()
      • tailtipAcceptLine

        public boolean tailtipAcceptLine()
      • tailtipBackwardDelete

        public boolean tailtipBackwardDelete()
      • tailtipDelete

        public boolean tailtipDelete()
      • tailtipKillLine

        public boolean tailtipKillLine()
      • tailtipKillWholeLine

        public boolean tailtipKillWholeLine()
      • tailtipInsert

        public boolean tailtipInsert()
      • tailtipUpdateStatus

        public boolean tailtipUpdateStatus()
      • initDescription

        public void initDescription()
        Initialize terminal status bar
      • clearDescription

        public void clearDescription()
        Description copied from class: Widgets
        Clears terminal status bar
        Overrides:
        clearDescription in class Widgets
      • toggleWindow

        public boolean toggleWindow()
      • toggleKeyBindings

        public boolean toggleKeyBindings()