less (1), пейджер файла терминала, по-видимому, пропускает lesskey (1) и возможность повторного связывания нажатий клавиш в less. Документы утверждают, что это там, но это не работает. Я сумасшедший или версия Apple менее сломана?
$ less -k ~/.less /etc/fstab
There is no -k option ("less --help" for help)
$ less --help | grep lesskey
-k [file] . --lesskey-file=[file]
Use a lesskey file.
$ which lesskey less
/usr/bin/less
$ less --version | head -2
less 418
Copyright (C) 1984-2007 Mark Nudelman
Я бегу Лев. Кажется странным, что Apple вообще возиться с less (1), это такая старая и стандартная утилита Unix. (Менее легко компилируется из исходников на MacOS, поэтому я сейчас использую свою собственную версию.)
Ответы:
less
Сборка Lion действительно поставляется с отключенной функцией lesskey, как видно из настроенного define.h, она строится с помощью (line#define USERFILE 0
). Это не значит, что он сломан , просто кто-то решил настроить сборку и отключить эту функцию по любой причине. К сожалению, они забыли обновить страницу руководства, поэтому она до сих пор ссылается на нее.Если вам нужна эта функция, то создание собственного
less
из исходного кода - это просто вопрос./configure && make install
(в который она входит/usr/local
), и вы также можете захотеть получить более свежую версию, пока она у вас есть.источник
brew install less
действительно рекомендуете пакет,homebrew/dupes/less
который устанавливает версию 458 и работаетlesskey
. Гораздо меньше работы, чем сборка вручную.man
не использует этот. Он использует систему меньше ... Не совсем уверен, что делать. Я мог бы изменить это так, чтобы доморощенный меньше становился символическим/usr/bin/less
, но это звучит агрессивно. На самом деле: я даже не могу этого сделать, вероятно, защищенный SIP.man man
говорит, что вы можете переопределить это, установивPAGER
илиMANPAGER
в вашей среде.