less -r broken with long lines
Fred Gilham
gilham at csl.sri.com
Wed Jul 18 14:00:17 UTC 2007
Rui Paulo <rpaulo at fnop.net> wrote:
> Hi,
> There's something about how the new less version handles lines greater
> than the virtual terminal's size.
>
> Test case on an xterm/rxvt/screen session:
>
> less -r /etc/syslog.conf - you won't see the $FreeBSD$ id tag because
> of the long line regarding to /var/log/messages. Try resizing your
> terminal so that this line fits in the right number of columns. You'll
> see the problem disappear.
>
> less -r /etc/rc.firewall - since there are no long lines in the first
> page, you won't notice the problem
>
> Everything works fine if less is used without the -r argument or if less
> is run from the console.
>
> Does this ring any bell to anyone?
>
> Regards.
> --
> Rui Paulo
This is documented behavior. From the "less" manpage:
-r or --raw-control-chars
Causes "raw" control characters to be displayed. The default is
to display control characters using the caret notation; for
example, a control-A (octal 001) is displayed as "^A". Warning:
when the -r option is used, less cannot keep track of the actual
appearance of the screen (since this depends on how the screen
responds to each type of control character). Thus, various dis-
play problems may result, such as long lines being split in the
wrong place.
--
Fred Gilham gilham at csl.sri.com
The Net interprets Microsoft products as damage, and routes around them.
More information about the freebsd-current
mailing list