aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorgi Valkov <georgi.t.valkov@gmail.com>2011-08-23 17:03:28 +0300
committerGeorgi Valkov <georgi.t.valkov@gmail.com>2011-08-23 17:03:28 +0300
commit6a4f0a114d88965c171d0117db68be64b4db9acd (patch)
tree20a5b8046ffc8ba17be37f1820949972a34f4545
parent5adcaa43854a4b6bfd0d5e01304bebc7a846fd3d (diff)
Use `stty size` to find terminal width if we're on linux and COLUMNS is not exported
-rwxr-xr-xyoutube-dl12
1 files changed, 11 insertions, 1 deletions
diff --git a/youtube-dl b/youtube-dl
index 34a60afff..251254765 100755
--- a/youtube-dl
+++ b/youtube-dl
@@ -2744,11 +2744,21 @@ def parseOpts():
return "".join(opts)
+ def _find_term_columns():
+ columns = os.environ.get('COLUMNS', None)
+ if columns: return int(columns)
+
+ if sys.platform.startswith('linux'):
+ try: columns = os.popen('stty size', 'r').read().split()[1]
+ except: pass
+
+ if columns: return int(columns)
+
max_width = 80
max_help_position = 80
# No need to wrap help messages if we're on a wide console
- columns = os.environ.get('COLUMNS', None)
+ columns = _find_term_columns()
if columns: max_width = columns
fmt = optparse.IndentedHelpFormatter(width=max_width, max_help_position=max_help_position)