Module: CLI::UI::Terminal
- Extended by:
- T::Sig
- Defined in:
- lib/cli/ui/terminal.rb
Constant Summary collapse
- DEFAULT_WIDTH =
80
- DEFAULT_HEIGHT =
24
Class Method Summary collapse
Methods included from T::Sig
Class Method Details
.height ⇒ Object
30 31 32 |
# File 'lib/cli/ui/terminal.rb', line 30 def height winsize[0] end |
.setup_winsize_trap ⇒ Object
51 52 53 54 55 |
# File 'lib/cli/ui/terminal.rb', line 51 def setup_winsize_trap @winsize_trap ||= Signal.trap('WINCH') do @winsize = nil end end |
.width ⇒ Object
22 23 24 |
# File 'lib/cli/ui/terminal.rb', line 22 def width winsize[1] end |
.winsize ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/cli/ui/terminal.rb', line 35 def winsize @winsize ||= begin winsize = IO.console.winsize setup_winsize_trap if winsize.any?(&:zero?) [DEFAULT_HEIGHT, DEFAULT_WIDTH] else winsize end rescue [DEFAULT_HEIGHT, DEFAULT_WIDTH] end end |