diff mercurial/commands.py @ 29070:29a7d591ff42

ui: add new config option for help text width Before this patch, when printing help text using `hg help`, or `hg log -h`, the output will wrap at 78 chars even if the user has a bigger terminal width and there is no config option to change it, making the experience different from the commonly used `man` tool. This patch introduces a new config option `ui.textwidth`, which replaces the hardcoded number. It's set to 78 by default to maintain compatibility. When set to 0, `hg help` will behave more like `man`.
author Jun Wu <quark@fb.com>
date Wed, 04 May 2016 18:18:24 +0100
parents fc88a942fe8d
children fe50341de1ff
line wrap: on
line diff
--- a/mercurial/commands.py	Tue May 03 15:26:51 2016 +0000
+++ b/mercurial/commands.py	Wed May 04 18:18:24 2016 +0100
@@ -4567,7 +4567,10 @@
     Returns 0 if successful.
     """
 
-    textwidth = min(ui.termwidth(), 80) - 2
+    textwidth = ui.configint('ui', 'textwidth', 78)
+    termwidth = ui.termwidth() - 2
+    if textwidth <= 0 or termwidth < textwidth:
+        textwidth = termwidth
 
     keep = opts.get('system') or []
     if len(keep) == 0: