module Toys::StandardMixins::Terminal

def ask(prompt, *styles, default: nil, trailing_text: :default)

Returns:
  • (String) -

Parameters:
  • trailing_text (:default, String, nil) -- Trailing text appended to
  • default (String, nil) -- Default value, or `nil` for no default.
  • styles (Symbol, String, Array...) -- Styles to apply to the
  • prompt (String) -- Required prompt string.

Other tags:
    See: Toys::Utils::Terminal#ask -
def ask(prompt, *styles, default: nil, trailing_text: :default)
  terminal.ask(prompt, *styles, default: default, trailing_text: trailing_text)
end

def confirm(prompt = "Proceed?", *styles, default: nil)

Returns:
  • (Boolean) -

Parameters:
  • default (Boolean, nil) -- Default value, or `nil` for no default.
  • styles (Symbol, String, Array...) -- Styles to apply to the
  • prompt (String) -- Prompt string. Defaults to `"Proceed?"`.

Other tags:
    See: Toys::Utils::Terminal#confirm -
def confirm(prompt = "Proceed?", *styles, default: nil)
  terminal.confirm(prompt, *styles, default: default)
end

def puts(str = "", *styles)

Returns:
  • (self) -

Parameters:
  • styles (Symbol, String, Array...) -- Styles to apply to the
  • str (String) -- The line to write

Other tags:
    See: Toys::Utils::Terminal#puts -
def puts(str = "", *styles)
  terminal.puts(str, *styles)
  self
end

def spinner(leading_text: "", final_text: "",

Returns:
  • (Object) - The return value of the block.

Parameters:
  • final_text (String) -- Optional final string to display when the
  • style (Symbol, Array) -- A terminal style or array of styles
  • frames (Array) -- An array of frames. Defaults to
  • frame_length (Float) -- Length of a single frame, in seconds.
  • leading_text (String) -- Optional leading string to display to the

Other tags:
    See: Toys::Utils::Terminal#spinner -
def spinner(leading_text: "", final_text: "",
            frame_length: nil, frames: nil, style: nil, &block)
  terminal.spinner(leading_text: leading_text, final_text: final_text,
                   frame_length: frame_length, frames: frames, style: style,
                   &block)
end

def terminal

Returns:
  • (Toys::Utils::Terminal) -
def terminal
  self[KEY]
end

def write(str = "", *styles)

Returns:
  • (self) -

Parameters:
  • styles (Symbol, String, Array...) -- Styles to apply to the
  • str (String) -- The line to write

Other tags:
    See: Toys::Utils::Terminal#write -
def write(str = "", *styles)
  terminal.write(str, *styles)
  self
end