From aef01ee7890bf6b2349c4c87548460ce9534dfb0 Mon Sep 17 00:00:00 2001 From: nobu Date: Wed, 18 May 2011 13:45:29 +0000 Subject: * ext/io/console/lib/console/size.rb (IO#console_size): new method. (EXPERIMENTAL) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31628 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ext/io/console/lib/console/size.rb | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 ext/io/console/lib/console/size.rb (limited to 'ext/io') diff --git a/ext/io/console/lib/console/size.rb b/ext/io/console/lib/console/size.rb new file mode 100644 index 0000000000..e9d8a1fbb6 --- /dev/null +++ b/ext/io/console/lib/console/size.rb @@ -0,0 +1,20 @@ +def IO.default_console_size + [ + ENV["LINES"].to_i.nonzero? || 25, + ENV["COLUMNS"].to_i.nonzero? || 80, + ] +end + +begin + require 'io/console' +rescue LoadError + class IO + alias console_size default_console_size + end +else + def IO.console_size + console.winsize + rescue NoMethodError + default_console_size + end +end -- cgit v1.2.3