Меньше (1) отсутствует функциональность lesskey?

8

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, поэтому я сейчас использую свою собственную версию.)

нельсон
источник
Как всегда, рассмотрите возможность подачи отчета об ошибке улучшения на developer.apple.com/bugreporter. Если у вас нет учетной записи разработчика, ее можно создать бесплатно.
Крис Пейдж

Ответы:

11

lessСборка Lion действительно поставляется с отключенной функцией lesskey, как видно из настроенного define.h, она строится с помощью (line #define USERFILE 0). Это не значит, что он сломан , просто кто-то решил настроить сборку и отключить эту функцию по любой причине. К сожалению, они забыли обновить страницу руководства, поэтому она до сих пор ссылается на нее.

Если вам нужна эта функция, то создание собственного lessиз исходного кода - это просто вопрос ./configure && make install(в который она входит /usr/local), и вы также можете захотеть получить более свежую версию, пока она у вас есть.

Ингмар Хапп
источник
3
Доморощенный, если вы brew install lessдействительно рекомендуете пакет, homebrew/dupes/lessкоторый устанавливает версию 458 и работает lesskey. Гораздо меньше работы, чем сборка вручную.
Стивен Лу
Таким образом, проблема, с которой я столкнулся на Высшей Сьерре, заключается в том, что я использую менее домашний напиток, который работает правильно, но manне использует этот. Он использует систему меньше ... Не совсем уверен, что делать. Я мог бы изменить это так, чтобы доморощенный меньше становился символическим /usr/bin/less, но это звучит агрессивно. На самом деле: я даже не могу этого сделать, вероятно, защищенный SIP.
Стивен Лу
@ StevenLu man manговорит, что вы можете переопределить это, установив PAGERили MANPAGERв вашей среде.
Ингмар Хапп
Да, я добавил это к моей конфигурации оболочки, и это работает.
Стивен Лу