Modifier les options par défaut de moins (pager)

9

J'utilise Ubuntu 10.04. Mon téléavertisseur par défaut (défini à l'aide d'alternatives de mise à jour, pas $ PAGER) est inférieur. Le problème est que lorsque j'utilise ri (outil de documentation Ruby) avec le mode '-f ansi', moins montre les séquences d'échappement (comme 'ESC [36m') au lieu d'afficher le texte en couleur. Je peux le forcer à afficher les couleurs en canalisant manuellement la sortie vers moins avec l'option -R, par exemple:

ri -f ansi String | less -R

Cependant, j'aimerais que ce soit l'option par défaut lorsque less est utilisé comme pager.

Remarque: je suis conscient que de plus en plus affichent des couleurs par défaut, mais j'en utilise moins en raison des raccourcis clavier de type vi.

imgx64
la source

Réponses:

9

J'ai trouvé la réponse ailleurs. Je devais utiliser lesskeypour configurer les options de less:

$ lesskey -
#env
LESS = -R

Alors Ctrl+d

a fait l'affaire. Je ne sais toujours pas pourquoi moins ignore $ MOINS.

imgx64
la source
Ah! les options de ~/.less(ce qui est lesskeyécrit) remplacent celles de l'environnement. Vous devez donc avoir eu un .lessfichier contenant LESS=-rauparavant.
Gilles 'SO- arrête d'être méchant'
3

Définissez la LESSvariable d'environnement sur une liste séparée par des espaces de vos options préférées.

Gilles 'SO- arrête d'être méchant'
la source
N'a pas fonctionné, moins ignore totalement $ LESS. Je suppose que c'est un problème spécifique à Ubuntu, car de nombreuses autres variables de shell sont ignorées, y compris $ PAGER et $ EDITOR.
imgx64
lessprend certainement $LESSen compte, sur Ubuntu 10.04 comme partout ailleurs. Et $PAGERet $EDITORtravailler aussi. Il semble que vous ne définissiez pas correctement les variables d'environnement. Comment avez-vous fait?
Gilles 'SO- arrête d'être méchant'
J'ai essayé ceci: "export LESS = '- R'; ri -f ansi String | less" Cependant, less utilise correctement d'autres variables d'environnement, telles que celles mentionnées ici: crunchbanglinux.org/forums/topic/2403/color- pages de
manuel
@ imgx64: Ça marche pour moi ™, et je ne vois pas comment cela ne pourrait pas fonctionner. Hmmm ... Quelle est la sortie des deux commandes type lesset env | grep LESS?
Gilles 'SO- arrête d'être méchant'
"less is / usr / bin / less" and "LESS = -R LESSOPEN = | / usr / bin / lesspipe% s LESSCLOSE = / usr / bin / lesspipe% s% s"
imgx64
1

Le problème le plus probable est que vous n'avez pas exporté la variable moins.

LESS="FRX"
ls -l | less
<not colorized>

export LESS="FRX"
ls -l | less
<colorized>

Vous pouvez, par exemple, créer un fichier appelé '/etc/profile.d/less.sh', avec juste 'export LESS = "FRX"' dedans, et votre configuration moindre sera disponible à l'échelle du système.

Mr. B
la source
Vous n'êtes pas amusant, mince. ... qu'est-ce qui ne va pas avec un peu de nécromancie?
M. B