On 13 February 2018 at 11:25, Duy Nguyen <pclouds@xxxxxxxxx> wrote: > On Sun, Feb 11, 2018 at 11:40 PM, Martin Ågren <martin.agren@xxxxxxxxx> wrote: >> Similar to de121ffe5 (tag: respect `pager.tag` in list-mode only, >> 2017-08-02), use the DELAY_PAGER_CONFIG-mechanism to only respect >> `pager.config` when we are listing or "get"ing config. >> >> Some getters give at most one line of output, but it is much easier to >> document and understand that we page all of --get[-*] and --list, than >> to divide the (current and future) getters into "pages" and "doesn't". > > I realize modern pagers like 'less' can automatically exit if the > output is less than a screen. But are we sure it's true for all > pagers? It would be annoying to have a pager waiting for me to exit > when I only want to check one config item out (which prints one line). > Trading one-time convenience at reading the manual with constantly > pressing 'q' does not seem justified. Well, there was one recent instance of a misconfigured LESS causing the pager not to quit automatically [1]. Your "Trading"-sentence does argue nicely for rethinking my approach here. A tweaked behavior could be documented as something like: `pager.config` is only respected when listing configuration, i.e., when using `--list` or any of the `--get-*` which may return multiple results. Maybe it doesn't look to complicated after all. I'd rather not give any ideas about how we only page if there *are* more than one line of result, i.e., that we'd examine the result before turning on the pager. I think I've avoided that misconception here. Thanks Martin [1] https://public-inbox.org/git/2412A603-4382-4AF5-97D0-D16D5FAAFE28@xxxxxxxxxx/