Differences between revisions 14 and 15
Revision 14 as of 2011-05-26 00:20:47
Size: 2508
Comment: Addded response to comment about plan9 pager p.
Revision 15 as of 2011-06-14 18:34:39
Size: 2505
Editor: StephenRasku
Comment: Specifying ignore does not enable attend on every command. Only some defaults.
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
Line 12: Line 11:
Line 19: Line 19:
If no pager is set, the pager extension uses the environment variable {{{$PAGER}}}. If neither {{{pager.pager}}}, nor {{{$PAGER}}} is set, no pager is used.
Line 20: Line 21:
If no pager is set, the pager extension uses the environment
variable {{{$PAGER}}}. If neither {{{pager.pager}}}, nor {{{$PAGER}}} is set, no pager
is used.
If you notice {{{BROKEN PIPE}}} error messages, you can disable them by setting:
Line 24: Line 23:
If you notice {{{BROKEN PIPE}}} error messages, you can disable them
by setting:
Line 30: Line 27:
Line 33: Line 29:
You can disable the pager for certain commands (e.g., commands that are interactive) by adding them to the
{{{pager.ignore}}} list:
You can disable the pager for certain commands (e.g., commands that are interactive) by adding them to the {{{pager.ignore}}} list:
Line 40: Line 36:
Line 44: Line 41:
If {{{pager.attend}}} is present, the resulting behaviour will be that the pager is used for all commands listed in pager.attend, minus those which also appear in {{{pager.ignore}}} (an empty {{{pager.attend}}} behaves as if every command was specified). If {{{pager.attend}}} is present, the resulting behaviour will be that the pager is used for all commands listed in pager.attend, minus those which also appear in {{{pager.ignore}}} (an empty {{{pager.attend}}} behaves as if the above attend line was specified).
Line 46: Line 43:
To ignore global commands like {{{hg version}}} or {{{hg help}}}, you have to specify
them in the global {{{.hgrc}}}
To ignore global commands like {{{hg version}}} or {{{hg help}}}, you have to specify them in the global {{{.hgrc}}}
Line 53: Line 49:

In my opinion, p (plan9's pager) is the most suitable pager for this extension.
P copies its standard input to its standard output, stopping at the end of every 22nd line, and between files, to wait for a newline from the user.
Thus if the output is less than 22 lines, p works just like cat.
If you've p installed on your system (via [[http://swtch.com/plan9port|plan9port]]), you just need to specify it as the pager:
In my opinion, p (plan9's pager) is the most suitable pager for this extension. P copies its standard input to its standard output, stopping at the end of every 22nd line, and between files, to wait for a newline from the user.  Thus if the output is less than 22 lines, p works just like cat. If you've p installed on your system (via [[http://swtch.com/plan9port|plan9port]]), you just need to specify it as the pager:
Line 63: Line 55:
Line 66: Line 57:
To the author of the comment above: That's what the -F and -X switches to less achieve. They simply make it to exit if the output fits in the terminal height.
Plus, -R makes it interpet the color escape sequences. Net result is a cat or a pager behavior but always with colorized output.
To the author of the comment above: That's what the -F and -X switches to less achieve. They simply make it to exit if the output fits in the terminal height. Plus, -R makes it interpet the color escape sequences. Net result is a cat or a pager behavior but always with colorized output.

Pager Extension

This extension is distributed with Mercurial.

Author: David Soria Parra

Overview

Browse command output using an external pager

Configuration

Configure your .hgrc to enable the extension and set the used pager adding these lines:

  [pager]
  pager = LESS='FSRX' less

  [extensions]
  pager =

If no pager is set, the pager extension uses the environment variable $PAGER. If neither pager.pager, nor $PAGER is set, no pager is used.

If you notice BROKEN PIPE error messages, you can disable them by setting:

  [pager]
  quiet = True

The following options are only supported by the pager extension bundled with Mercurial version 1.1 or higher:

You can disable the pager for certain commands (e.g., commands that are interactive) by adding them to the pager.ignore list:

  [pager]
  ignore = version, help, update

You can also enable the pager only for certain commands using pager.attend. As of Mercurial 1.4, a default attend list with the following commands is provided:

  [pager]
  attend = annotate, cat, diff, export, glog, log, qdiff

If pager.attend is present, the resulting behaviour will be that the pager is used for all commands listed in pager.attend, minus those which also appear in pager.ignore (an empty pager.attend behaves as if the above attend line was specified).

To ignore global commands like hg version or hg help, you have to specify them in the global .hgrc

See also

AutopagerExtension

Comments

In my opinion, p (plan9's pager) is the most suitable pager for this extension. P copies its standard input to its standard output, stopping at the end of every 22nd line, and between files, to wait for a newline from the user. Thus if the output is less than 22 lines, p works just like cat. If you've p installed on your system (via plan9port), you just need to specify it as the pager:

[pager]
pager = p

And forget about AutopagerExtension or pager.ignore.

To the author of the comment above: That's what the -F and -X switches to less achieve. They simply make it to exit if the output fits in the terminal height. Plus, -R makes it interpet the color escape sequences. Net result is a cat or a pager behavior but always with colorized output.


CategoryBundledExtension

PagerExtension (last edited 2019-07-03 01:05:56 by JordiGH)