GÜNCELLEME
tl; dr Çözüm: daha az 530'e yükseltin
Gönderen http://www.greenwoodsoftware.com/less/news.530.html :
-F ve dosya bir ekrana sığarsa, terminal başlatma sırasını çıkarmayın.
Bu nedenle, bu düzeltme ile kendi başımıza kullanılıp kullanılmayacağını belirlemeye bile gerek yok -X
, less -F
sadece halleder.
PS. Kullandığım diğer bazı daha az yapılandırmalar:
export PAGER='less -F -S -R -M -i'
export MANPAGER='less -R -M -i +Gg'
git config --global core.pager 'less -F -S -R -i'
#alias less='less -F -S -R -M -i'
Sonunda kendi kendime bir sargı yazmaya son verdim.
#!/usr/local/bin/bash
# BSD/OSX compatibility
[[ $(type -p gsed) ]] && SED=$(type -p gsed) || SED=$(type -p sed)
CONTEXT=$(expand <&0)
[[ ${#CONTEXT} -eq 0 ]] && exit 0
CONTEXT_NONCOLOR=$( $SED -r "s/\x1B\[([0-9]{1,2}(;[0-9]{1,2})?)?[mGK]//g" <<< "$CONTEXT")
LINE_COUNT=$( (fold -w $(tput cols) | wc -l) <<< "$CONTEXT_NONCOLOR" )
[[ $LINE_COUNT -ge $(tput lines) ]] && less -+X -+S -R <<< "$CONTEXT" || echo "$CONTEXT"
BSD / OSX kullanıcıları manuel olarak kurulmalıdır gnu-sed
. Renk kodlarının kaldırılmasına yardımcı olan şaşırtıcı normal ifade https://stackoverflow.com/a/18000433/2487227 adresinden alınmıştır.
Bu komut dosyasını kaydettim /usr/local/bin/pager
ve sonragit config --global core.pager /usr/local/bin/pager
OKB hastalarının tedavisi, yaşasın!
-F
(bir ekrandan çık) her zaman-X
(termcap init ve de-init'i devre dışı bırak) ile birlikte yaparım , ancak dediğin gibi, bu fare ile kaydırmaya izin vermez. (Kaydırma işleminin tümüyle mümkün olduğundan şüpheliyim-X
.) Soru başlığını değiştirdim, ancak çok fazla anlam kaybettiğini düşünüyorsanız bunu geri almaktan çekinmeyin. :)