Re: \b character escapes in CLI usage

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Feb 26, 2025 at 08:38:15AM -0800, Kyle Lippincott wrote:

> > In modern versions of less you can get around it with:
> >
> >   LESS="-U --proc-tab"
> >
> > or:
> >
> >   LESS="--PROC-BACKSPACE"
> >
> > but those are new in less 632, from the last year or two. So I don't
> > think we can rely on it in our default variable, but people with recent
> > versions of less should consider setting it.
> 
> From another issue (https://github.com/gwsw/less/issues/557) I learned
> you can do this:
> 
> LESSKEY_CONTENT='#env;#version>=632 LESS=${LESS} --PROC-BACKSPACE'
> 
> I haven't tested it yet, but that might be a decent solution? I don't
> know how composable those are; e.g. if you wanted both
> --PROC-BACKSPACE on >=632 and --no-poll on >=670, I'm *assuming* you
> can do that, but I don't know what the syntax looks like.

Thanks for the pointer, I didn't know about that. I think it is fully
composable, as the "#version" conditional just applies to one line. So:

  LESSKEY_CONTENT='#env;#version>=632 LESS=${LESS} --PROC-BACKSPACE;#version >=670 LESS=${LESS} --no-poll'

However, I couldn't get even the basic version to work. Turns out that
LESSKEY_CONTENT was added in 645, and I'm running 643 from Debian
unstable).

So it kind-of works for our case if we make 645 the minimum (and don't
help versions between 632 and 645 at all). I think we could get even
hackier to support old versions like:

  # probably would be $prefix/share/git/lesskey in a real install
  fn=/tmp/lesskey
  {
	echo "#env"
	echo "#version >= 632 LESS=${LESS} --PROC-BACKSPACE"
  } >"$fn"

  # This works back to less 582. Before that we have to compile it to a
  # binary format with "lesskey" and point to it with $LESSKEY.
  LESSKEYIN=$fn git log

I guess we'd also need to put more details into setup_pager_env(). Right
now its logic is just "do not set $FOO if $FOO is already set". But we'd
probably want rules like "if $LESS is set, do not try to override it
with $LESSKEY_CONTENT".

I'm inclined to punt on it for a while. People can set up $LESS
themselves based on what they have available, and once these features
have been around for a while, we might then consider adding them to our
defaults.

-Peff




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux