summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTodd Gamblin <tgamblin@llnl.gov>2014-11-23 17:53:21 -0600
committerTodd Gamblin <tgamblin@llnl.gov>2014-11-23 17:55:37 -0600
commit287b04e50a8a132f224def6ee1b36e8f4d0b105f (patch)
tree004afc302acd06a4bcc5ce5c3ee52733f91e5272
parentd2fe038cafc2fb2f8835bc1d4e51df4b567c0e59 (diff)
downloadspack-287b04e50a8a132f224def6ee1b36e8f4d0b105f.tar.gz
spack-287b04e50a8a132f224def6ee1b36e8f4d0b105f.tar.bz2
spack-287b04e50a8a132f224def6ee1b36e8f4d0b105f.tar.xz
spack-287b04e50a8a132f224def6ee1b36e8f4d0b105f.zip
Bugfix in terminal_size()
-rw-r--r--lib/spack/llnl/util/tty/__init__.py23
-rw-r--r--lib/spack/llnl/util/tty/colify.py4
2 files changed, 15 insertions, 12 deletions
diff --git a/lib/spack/llnl/util/tty/__init__.py b/lib/spack/llnl/util/tty/__init__.py
index 652d1cc1a8..5eeab67d6f 100644
--- a/lib/spack/llnl/util/tty/__init__.py
+++ b/lib/spack/llnl/util/tty/__init__.py
@@ -25,6 +25,9 @@
import sys
import os
import textwrap
+import fcntl
+import termios
+import struct
from StringIO import StringIO
from llnl.util.tty.color import *
@@ -155,7 +158,7 @@ def hline(label=None, **kwargs):
color = kwargs.get('color', '')
max_width = kwargs.get('max_width', 64)
- cols, rows = terminal_size()
+ rows, cols = terminal_size()
if not cols:
cols = max_width
else:
@@ -178,22 +181,22 @@ def hline(label=None, **kwargs):
def terminal_size():
- """Gets the dimensions of the console: cols, rows."""
+ """Gets the dimensions of the console: (rows, cols)."""
def ioctl_GWINSZ(fd):
try:
- cr = struct.unpack('hh', fcntl.ioctl(fd, termios.TIOCGWINSZ, '1234'))
+ rc = struct.unpack('hh', fcntl.ioctl(fd, termios.TIOCGWINSZ, '1234'))
except:
return
- return cr
- cr = ioctl_GWINSZ(0) or ioctl_GWINSZ(1) or ioctl_GWINSZ(2)
- if not cr:
+ return rc
+ rc = ioctl_GWINSZ(0) or ioctl_GWINSZ(1) or ioctl_GWINSZ(2)
+ if not rc:
try:
fd = os.open(os.ctermid(), os.O_RDONLY)
- cr = ioctl_GWINSZ(fd)
+ rc = ioctl_GWINSZ(fd)
os.close(fd)
except:
pass
- if not cr:
- cr = (os.environ.get('LINES', 25), os.environ.get('COLUMNS', 80))
+ if not rc:
+ rc = (os.environ.get('LINES', 25), os.environ.get('COLUMNS', 80))
- return int(cr[1]), int(cr[0])
+ return int(rc[0]), int(rc[1])
diff --git a/lib/spack/llnl/util/tty/colify.py b/lib/spack/llnl/util/tty/colify.py
index ff06241937..0d068351a6 100644
--- a/lib/spack/llnl/util/tty/colify.py
+++ b/lib/spack/llnl/util/tty/colify.py
@@ -121,7 +121,7 @@ def colify(elts, **options):
console_cols = options.get("cols", None)
if not console_cols:
- console_cols, console_rows = terminal_size()
+ console_rows, console_cols = terminal_size()
elif type(console_cols) != int:
raise ValueError("Number of columns must be an int")
console_cols = max(1, console_cols - indent)
@@ -167,7 +167,7 @@ def colified(elts, **options):
if __name__ == "__main__":
import optparse
- cols, rows = terminal_size()
+ rows, cols = terminal_size()
parser = optparse.OptionParser()
parser.add_option("-u", "--uniform", action="store_true", default=False,
help="Use uniformly sized columns instead of variable-size.")