Module: Reline
Relationships & Source Files | |
Namespace Children | |
Modules:
| |
Classes:
| |
Exceptions:
| |
Super Chains via Extension / Inclusion / Inheritance | |
Class Chain:
self,
SingleForwardable,
Forwardable
|
|
Defined in: | lib/reline.rb, lib/reline/version.rb |
Constant Summary
-
DEFAULT_DIALOG_CONTEXT =
# File 'lib/reline.rb', line 255Array.new
-
DEFAULT_DIALOG_PROC_AUTOCOMPLETE =
# File 'lib/reline.rb', line 221->() { # autocomplete return unless config.autocompletion journey_data = completion_journey_data return unless journey_data target = journey_data.list[journey_data.pointer] result = journey_data.list.drop(1) pointer = journey_data.pointer - 1 return if target.empty? || (result == [target] && pointer < 0) target_width = Reline::Unicode.calculate_width(target) x = cursor_pos.x - target_width if x < 0 x = screen_width + x y = -1 else y = 0 end cursor_pos_to_render = Reline::CursorPos.new(x, y) if context and context.is_a?(Array) context.clear context.push(cursor_pos_to_render, result, pointer, dialog) end dialog.pointer = pointer DialogRenderInfo.new( pos: cursor_pos_to_render, contents: result, scrollbar: true, height: [15, preferred_dialog_height].min, face: :completion_dialog ) }
-
FILENAME_COMPLETION_PROC =
NOTE: For making compatible with the rb-readline gem
nil
-
HISTORY =
# File 'lib/reline.rb', line 595Reline::History.new(Reline.core.config)
-
IOGate =
# File 'lib/reline.rb', line 586if tty require 'reline/ansi' Reline::ANSI else io end
-
USERNAME_COMPLETION_PROC =
# File 'lib/reline.rb', line 16nil
-
VERSION =
# File 'lib/reline/version.rb', line 2'0.5.2'
Class Method Summary
Class Method Details
.core
[ GitHub ]# File 'lib/reline.rb', line 538
def self.core @core ||= Core.new { |core| core.config = Reline::Config.new core.key_stroke = Reline::KeyStroke.new(core.config) core.line_editor = Reline::LineEditor.new(core.config, core.encoding) core.basic_word_break_characters = " \t\n`><=;|&{(" core.completer_word_break_characters = " \t\n`><=;|&{(" core.basic_quote_characters = '"\'' core.completer_quote_characters = '"\'' core.filename_quote_characters = "" core.special_prefixes = "" core.add_dialog_proc(:autocomplete, Reline::DEFAULT_DIALOG_PROC_AUTOCOMPLETE, Reline::DEFAULT_DIALOG_CONTEXT) } end
.encoding_system_needs
[ GitHub ]# File 'lib/reline.rb', line 534
def self.encoding_system_needs self.core.encoding end
.insert_text(*args, &block)
[ GitHub ]# File 'lib/reline.rb', line 515
def self.insert_text(*args, &block) line_editor.insert_text(*args, &block) self end
.line_editor
[ GitHub ]# File 'lib/reline.rb', line 558
def self.line_editor core.line_editor end
.ungetc(c)
[ GitHub ]# File 'lib/reline.rb', line 554
def self.ungetc(c) core.io_gate.ungetc(c) end
.update_iogate
[ GitHub ]# File 'lib/reline.rb', line 562
def self.update_iogate return if core.config.test_mode # Need to change IOGate when `$stdout.tty?` change from false to true by `$stdout.reopen` # Example: rails/spring boot the application in non-tty, then run console in tty. if ENV['TERM'] != 'dumb' && core.io_gate == Reline::GeneralIO && $stdout.tty? require 'reline/ansi' remove_const(:IOGate) const_set(:IOGate, Reline::ANSI) end end