Class: Reline::GeneralIO
- Inherits:
-
Object
- Object
- Reline::GeneralIO
- Defined in:
- lib/reline/general_io.rb
Constant Summary collapse
- RESET_COLOR =
Do not send color reset sequence
''
- @@buf =
[]
- @@input =
STDIN
- @@pasting =
false
Class Method Summary collapse
- .clear_screen ⇒ Object
- .cursor_pos ⇒ Object
- .deprep(otio) ⇒ Object
- .encoding ⇒ Object
- .erase_after_cursor ⇒ Object
- .get_screen_size ⇒ Object
- .getc(_timeout_second) ⇒ Object
- .hide_cursor ⇒ Object
- .in_pasting? ⇒ Boolean
- .input=(val) ⇒ Object
- .move_cursor_column(val) ⇒ Object
- .move_cursor_down(val) ⇒ Object
- .move_cursor_up(val) ⇒ Object
- .prep ⇒ Object
- .reset(encoding: nil) ⇒ Object
- .scroll_down(val) ⇒ Object
- .set_default_key_bindings(_) ⇒ Object
- .set_screen_size(rows, columns) ⇒ Object
- .set_winch_handler(&handler) ⇒ Object
- .show_cursor ⇒ Object
- .ungetc(c) ⇒ Object
- .win? ⇒ Boolean
- .with_raw_input ⇒ Object
Class Method Details
.clear_screen ⇒ Object
90 91 |
# File 'lib/reline/general_io.rb', line 90 def self.clear_screen end |
.cursor_pos ⇒ Object
65 66 67 |
# File 'lib/reline/general_io.rb', line 65 def self.cursor_pos Reline::CursorPos.new(1, 1) end |
.deprep(otio) ⇒ Object
108 109 |
# File 'lib/reline/general_io.rb', line 108 def self.deprep(otio) end |
.encoding ⇒ Object
15 16 17 18 19 20 21 22 23 |
# File 'lib/reline/general_io.rb', line 15 def self.encoding if defined?(@@encoding) @@encoding elsif RUBY_PLATFORM =~ /mswin|mingw/ Encoding::UTF_8 else Encoding::default_external end end |
.erase_after_cursor ⇒ Object
84 85 |
# File 'lib/reline/general_io.rb', line 84 def self.erase_after_cursor end |
.get_screen_size ⇒ Object
61 62 63 |
# File 'lib/reline/general_io.rb', line 61 def self.get_screen_size [24, 80] end |
.getc(_timeout_second) ⇒ Object
43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/reline/general_io.rb', line 43 def self.getc(_timeout_second) unless @@buf.empty? return @@buf.shift end c = nil loop do result = @@input.wait_readable(0.1) next if result.nil? c = @@input.read(1) break end c&.ord end |
.hide_cursor ⇒ Object
69 70 |
# File 'lib/reline/general_io.rb', line 69 def self.hide_cursor end |
.in_pasting? ⇒ Boolean
101 102 103 |
# File 'lib/reline/general_io.rb', line 101 def self.in_pasting? @@pasting end |
.input=(val) ⇒ Object
35 36 37 |
# File 'lib/reline/general_io.rb', line 35 def self.input=(val) @@input = val end |
.move_cursor_column(val) ⇒ Object
75 76 |
# File 'lib/reline/general_io.rb', line 75 def self.move_cursor_column(val) end |
.move_cursor_down(val) ⇒ Object
81 82 |
# File 'lib/reline/general_io.rb', line 81 def self.move_cursor_down(val) end |
.move_cursor_up(val) ⇒ Object
78 79 |
# File 'lib/reline/general_io.rb', line 78 def self.move_cursor_up(val) end |
.prep ⇒ Object
105 106 |
# File 'lib/reline/general_io.rb', line 105 def self.prep end |
.reset(encoding: nil) ⇒ Object
6 7 8 9 10 11 12 13 |
# File 'lib/reline/general_io.rb', line 6 def self.reset(encoding: nil) @@pasting = false if encoding @@encoding = encoding elsif defined?(@@encoding) remove_class_variable(:@@encoding) end end |
.scroll_down(val) ⇒ Object
87 88 |
# File 'lib/reline/general_io.rb', line 87 def self.scroll_down(val) end |
.set_default_key_bindings(_) ⇒ Object
29 30 |
# File 'lib/reline/general_io.rb', line 29 def self.set_default_key_bindings(_) end |
.set_screen_size(rows, columns) ⇒ Object
93 94 |
# File 'lib/reline/general_io.rb', line 93 def self.set_screen_size(rows, columns) end |
.set_winch_handler(&handler) ⇒ Object
96 97 |
# File 'lib/reline/general_io.rb', line 96 def self.set_winch_handler(&handler) end |
.show_cursor ⇒ Object
72 73 |
# File 'lib/reline/general_io.rb', line 72 def self.show_cursor end |
.ungetc(c) ⇒ Object
57 58 59 |
# File 'lib/reline/general_io.rb', line 57 def self.ungetc(c) @@buf.unshift(c) end |
.win? ⇒ Boolean
25 26 27 |
# File 'lib/reline/general_io.rb', line 25 def self.win? false end |
.with_raw_input ⇒ Object
39 40 41 |
# File 'lib/reline/general_io.rb', line 39 def self.with_raw_input yield end |