Solved Annoying ...skipping... in man pages

I don't know why, but when I jump over search results in some man pages I get the "...skipping..." information, and some of the text is just gone.
Example:
Screenshot from 2025-09-01 14-07-26.png

Does anyone know what is going on?
How can I get rid of this?
 
more is less 😉 I would check:
env | grep -e MANPAGER -e LESS=
and that there is no -X
My env is
LESS=’-RMsg --use-color --mouse ‘
 
Last edited:
more is less 😉 I would check:
env | grep -e MANPAGER -e LESS=
and that there is no -X
My env is
LESS=’-RMsg --use-color --mouse ‘
Code:
[mkru@riis ~ 0] env | grep -e MANPAGER -e LESS=
[mkru@riis ~ 0]

try export LESS_LINES=0 or -1 and see if happens again
Looks like this indeed helps.
However, if I export 0, then the man output occupies only half of the terminal screen.
If I export -1, then the man output does not utilize the last line of the terminal screen.
I wish man still use the whole terminal screen.
 
you can export LESS_LINES=$(tput li) but you have to do it everytime you resize your terminal. for console is probably ok but for xterm likes will be a bit annoying
or you can put something like this in your shell init file
Code:
#!/bin/sh
trap 'get_window_size' WINCH                    # trap when a user has resized the window


get_window_size() {
export LESS_LINES=$(tput li)
#echo LULULUL
}
to test save it as a file then
. thatfile

or create a less wrapper that sets the env var then execs less, then set the wrapper as your $PAGER
 
Code:
[mkru@riis ~ 0] env | grep -e MANPAGER -e LESS=
[mkru@riis ~ 0]


Looks like this indeed helps.
However, if I export 0, then the man output occupies only half of the terminal screen.
If I export -1, then the man output does not utilize the last line of the terminal screen.
I wish man still use the whole terminal screen.
Try with:
export MANWIDTH='tty'

Relevant part of my my .tcshrc.local, just replace setnenv with export and add = after variable, and for TERMCAP use LESS_TERMCAP_*=$'\e[*' for .bashrc
setenv LESSOPEN "| /usr/local/bin/src-hilite-lesspipe.sh %s"
# Colored man pages
setenv LESS_TERMCAP_mb `echo "\e[5m"` # begin blinking
setenv LESS_TERMCAP_mh `echo "\e[2;90m"` # begin half-bright
setenv LESS_TERMCAP_md `echo "\e[1;31m"` # begin double-bright (+bold red)
setenv LESS_TERMCAP_us `echo "\e[1;3;34m"` # begin (no)underline (+bold italic cyan)
#setenv LESS_TERMCAP_us `echo "\e[1;3;4;34m"` # begin underline (+bold italic cyan)
setenv LESS_TERMCAP_so `echo "\e[7m"` # begin standout-mode (inverse)
setenv LESS_TERMCAP_mr `echo "\e[7m"` # begin reverse video
setenv LESS_TERMCAP_ue `echo "\e[0m"` # end underline
setenv LESS_TERMCAP_se `echo "\e[0m"` # end standout-mode
setenv LESS_TERMCAP_me `echo "\e[0m"` # end mode
#
setenv LESS '-RMsg --use-color --mouse '
#
setenv CLICOLORS 'YES'
setenv MANPAGER 'less '
setenv MANWIDTH 'tty'
setenv MANCOLOR
#
#setenv GROFF_NO_SGR 1
 
Try with:
export MANWIDTH='tty'
It does not change anything.

I don't understand why man pages on FreeBSD are f**ked up by default in the first place.
What does this ...skipping... even mean?
I have used multiple Linux distros and never came across such behavior.
 
less displays it when it skips a bunch of text between 2 matches (when searching)
it is not a freebsd only thing

Code:
titus@ubuntu:~$ uname -a
Linux ubuntu 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
titus@ubuntu:~$ strings `which less`|grep skipp
...skipping...
titus@ubuntu:~$
 
  • Like
Reactions: mer
It does not change anything.

I don't understand why man pages on FreeBSD are f**ked up by default in the first place.
What does this ...skipping... even mean?
I have used multiple Linux distros and never came across such behavior.
Honestly, I’m at loss here. I didn’t see that …skipping… for a long time, and can’t remember on which OS that was. AFAIK …skipping… is encoded in the less in the forwback.c, please see both FreeBSD less source , and one that GNU uses for less (basically, the same)
 
Does anyone know how to disable this absolutely horrible feature?
What has been proposed so far are rather half-baked workarounds.

Honestly, I’m at loss here. I didn’t see that “…skipping…” for a long time, and can’t remember on which OS that was. AFAIK “…skipping…” is encoded in the less in the forwback.c, please see both FreeBSD less source , and one that GNU uses for less (basically, the same)
I have fresh 14.3 installation.
 
Which terminal do you use? I can’t reproduce this problem in vt, konosole nor xterm even with setting env LESS empty. Judging by your colored man, you must have something set somewhere.
 
Which terminal do you use? I can’t reproduce this problem in vt, konosole nor xterm even with setting env LESS empty. Judging by your colored man, you must have something set somewhere.
I use bspwm and alacritty.
I checked that problem doesn't exist in tty before I startx.

My .bashrc:
Code:
#
# ~/.bashrc

# If not running interactively, don't do anything
[[ $- != *i* ]] && return

PS1="\[\e[32m\][\[\e[m\]\[\e[32m\]\u\[\e[m\]\[\e[32m\]@\[\e[m\]\[\e[32m\]\h\[\e[m\] \[\e[34m\]\W\[\e[m\] \[\e[31m\]\j\[\e[m\]\[\e[32m\]]\[\e[m\] "

shopt -s cdspell \
    globstar


# Colored man pages
export LESS_TERMCAP_mb=$'\e[1;32m'
export LESS_TERMCAP_md=$'\e[1;32m'
export LESS_TERMCAP_me=$'\e[0m'
export LESS_TERMCAP_se=$'\e[0m'
export LESS_TERMCAP_so=$'\e[01;33m'
export LESS_TERMCAP_ue=$'\e[0m'
export LESS_TERMCAP_us=$'\e[1;4;31m'
# Groff version >= 1.23 directly emits terminal escape sequences instead of letting less do the translation.
# https://unix.stackexchange.com/questions/108699/documentation-on-less-termcap-variables/108840#108840
export GROFF_NO_SGR=""

# Allow displaying manual for command preceding the cursor by pressing Alt+h.
bind '"\eh": "\C-a\eb\ed\C-y\e#man \C-y\C-m\C-p\C-p\C-a\C-d\C-e"'
 
I use bspwm and alacritty.
I checked that problem doesn't exist in tty before I startx.
Then is probably something in Alacritty config – sorry I never even saw Alacritty, and I know jack about .toml. How your xterm behaves in this regard?
 
Then is probably something in Alacritty config – sorry I never even saw Alacritty, and I know jack about .toml. How your xterm behaves in this regard?
The same.
I can also see ...skipping... lines in xterm.
 
Make sure you're scrolling less(1)/more(1), not the terminal itself (which also has a scroll buffer).

If I jump in a text (with the 'search' option for example), then scroll back with the terminal you get to see that "...skipping...", if you scroll using less(1)/more(1) you do not get to see it. This is simply because the terminal doesn't know what's before/above it, it only has the information that was on screen before the "jump" in the text.
 
Ok, I have to add --mouse argument for the pager.
The question is, where it should be added.
 
Back
Top