git | less: -F vs -X
От: Roman Odaisky Украина  
Дата: 21.08.12 21:58
Оценка:
Git любит перенаправлять свой вывод в LESS=FRSX less, но ключи -F и -X взаимодействуют плохо: -X не дает less перейти в режим, где у него свой scrollback, отчего после активной прокрутки вверх-вниз терминал захламляется повторяющимися строками, но если убрать -X, то ключ -F (сразу выйти, если файл помещается на одном экране) именно это и делает, и для маленьких кусков текста ничего на экране не появляется.

Есть какой-нибудь приличный способ вывести данные просто на экран, если их не очень много, а иначе запустить less?

Пока только придумал такой костыль:

#!/bin/sh -e

SIZE="$(stty -F /proc/$$/fd/1 size 2>/dev/null)" || { cat; exit 0; }

LINES="${SIZE%% *}"

START="$(head -n $LINES)"

if IFS="" read LAST
then
    {
        echo "$START"
        echo "$LAST"
        cat
    } | less "$@"
else
    echo "$START"
fi

А какие штатные средства можно задействовать для этого?
До последнего не верил в пирамиду Лебедева.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.