The general solution is to make it easy in the installer to select from a few presets for all of these that will give the desired behaviour. At a previous DevSummit, there was talk of having a Linux-user-friendly port that would provide a bunch of these as a simple installable option. That seems a far better place to focus effort than a bikeshed discussion about whether we like less or more for one specific use.
I don't have an exhaustive list, and even if we fix all of them in the base system, there will be others in ports. This is why we have things like $PAGER - to avoid needing to hard-code defaults. If the project believes that less is a better default pager than more then we should modify /etc/profile or something to set PAGER=less, not go and modify all of the tools by hand to use less (and if there are any tools that don't respect $PAGER, $EDITOR and so on then they are buggy and should be fixed).
Good point, @theraven . Which other programs' default pagers should match man's? I count apropos, ftp, mail, makewhatis, mandoc, msgs, ntpq, ntp-keygen, ntpd, ntpdc, sntp, freebsd-update, and mergemaster . Am I leaving any out?
I can't help feeling that this poll is really asking the wrong question. There are a bunch of things like this, for example:
FWIW, I've had occasion to use man a few times on serial consoles (among other environments). IIRC, the main reason I switched the PAGER for myself was because (at the time), when more reached the end of the data, it would exit; that made searching backwards from the end rather challenging.
I have voted for a move to less being the default, because I like the extra features it provides and it also likely what new users coming to FreeBSD would expect.
Yes, I'll put an entry in UPDATING and in the release notes, too.
FWIW I too am big on sticking to POLA. But (personally) in this case I'd be up for the change
(enhancement) providing there was an item added in UPDATING, with the directions to reverse
it, and make that reversal stick.
From a quick test with BHyve's virtual serial port, less and more seem pretty much the same. The usual differences apply of course, but scrolling up and down and searching work the same with both pagers.
I'm in the leave it as it camp - although one question I have is how will this effect interactions via serial console? I've had multiple devices I interact with via serial console where using "less" as my pager is not really an enjoyable experience. These are mostly devices running some form of linux tho...
I've had 'PAGER=less' since before 2009/09/24 22:42:36 (earliest revision of ~/.cshrc I have) -- quite possibly since before my first experience with FreeBSD per se (which would have been 1998), as I used BSDi and SunOS before that.
Here are a few differences I observe. Testing methodology: PAGER="[more|less] -s" man cam.
"...less is much better than more. It has search highlighting, ...
Good question, @theraven . I'm not aware of any comprehensive list of differences. The only way to know for sure is grep less_is_more contrib/less/*
What are the changes? I've only ever used less on GNU systems where the more install is ancient and doesn't support scrolling up. I have no opinion if I'm not going to notice the difference, but without knowing what the 'few things less does differently' are I'd vote no to avoid surprises.
Aug 14 2017
Jun 10 2017
May 31 2017
Catch up with the latest review.
manpages here, just a couple grammar nits.
May 30 2017
OK, so I guess we'd need another review from manpages now...
May 26 2017
May 25 2017
OK, let's see if I understood you correctly this time Warner. make(1) is indeed apparently setting MACHINE and MACHINE_ARCH globally.
May 16 2017
May 15 2017
Strictly speaking, you are correct, but man pages often have references elsewhere, and having it here wouldn't be terrible.
So, shall we proceed with this? Still pending review from manpages...
May 11 2017
Apr 25 2017
Guys, I don't entirely understand how TARGET/MACHINE and/or TARGET/MACHINE_ARCH come into play here: this patch is about uname(1) only; these variables are not referenced anywhere in its sources, and are partially (?) documented in build(7). Can you elaborate a bit?
If "platform" (-m) and "processor architecture" (-p) are the same as the TARGET and TARGET_ARCH, then it would be great to include that too.
Apr 16 2017
Mar 10 2017
Fix bcr@'s request.
Mar 6 2017
Don't forget to bump the document date.
Mar 5 2017
Jan 17 2017
Dec 5 2016
Continue the review in D8691
Dec 2 2016
Added D8691 with an updated patch