OVH Cloud OVH Cloud

less -F, more, ...

8 réponses
Avatar
Matthieu Moy
Bonjour,

Une question toute bête : je veux que "less" se comporte comme "more"
sur les fichiers courts, c'est à dire qu'il me montre le contenu du
fichier, et qu'il quitte tout de suite (comme "cat" en fait !).

J'ai bien trouvé "less -F", mais en quittant, il restaure le terminal
dans l'état dans lequel il était avant de me montrer le fichier, donc,
mon terminal "clignote" un coup, puis il revient au shell, sans le
contenu du fichier.

$ cat foo
foo
$ less -F foo
$

Bref, ça n'est pas d'une utilité terrifiante. Un test rapide me montre
que ça n'est pas le cas de partout, sur d'autres machines, j'ai le
comportement attendu.

J'ai raté quelque chose, ou c'est un bug de ma version de less ?

Merci,

--
Matthieu

8 réponses

Avatar
Pascal Bourguignon
Matthieu Moy writes:
Une question toute bête : je veux que "less" se comporte comme "more"
sur les fichiers courts, c'est à dire qu'il me montre le contenu du
fichier, et qu'il quitte tout de suite (comme "cat" en fait !).

J'ai bien trouvé "less -F", mais en quittant, il restaure le terminal
dans l'état dans lequel il était avant de me montrer le fichier, donc,
mon terminal "clignote" un coup, puis il revient au shell, sans le
contenu du fichier.

$ cat foo
foo
$ less -F foo
$

Bref, ça n'est pas d'une utilité terrifiante. Un test rapide me montre
que ça n'est pas le cas de partout, sur d'autres machines, j'ai le
comportement attendu.

J'ai raté quelque chose, ou c'est un bug de ma version de less ?


Chez moi, ça marche.

% less --version
less 378+iso254
Copyright (C) 2002 Mark Nudelman


--
__Pascal Bourguignon__ http://www.informatimago.com/

PUBLIC NOTICE AS REQUIRED BY LAW: Any use of this product, in any
manner whatsoever, will increase the amount of disorder in the
universe. Although no liability is implied herein, the consumer is
warned that this process will ultimately lead to the heat death of
the universe.

Avatar
Matthieu Moy
Pascal Bourguignon writes:

Matthieu Moy writes:

$ cat foo
foo
$ less -F foo
$


[...]

Chez moi, ça marche.

% less --version
less 378+iso254
Copyright (C) 2002 Mark Nudelman


Damned. En cherchant un peu plus loin :

$ TERM=xterm less -F /tmp/bar
bar
$ TERM=rxvt less -F /tmp/bar
$

(dans un rxvt)

Là où ça devient intéressant, c'est que dans un xterm (un vrai xterm,
lancé avec la commande xterm) :

$ TERM=xterm less -F /tmp/bar
$ TERM=rxvt less -F /tmp/bar
$

Si quelqu'un y comprend quelque chose ...

--
Matthieu


Avatar
Jean-Marc Bourguet
Matthieu Moy writes:

Bonjour,

Une question toute bête : je veux que "less" se comporte comme "more"
sur les fichiers courts, c'est à dire qu'il me montre le contenu du
fichier, et qu'il quitte tout de suite (comme "cat" en fait !).

J'ai bien trouvé "less -F", mais en quittant, il restaure le terminal
dans l'état dans lequel il était avant de me montrer le fichier, donc,
mon terminal "clignote" un coup, puis il revient au shell, sans le
contenu du fichier.

$ cat foo
foo
$ less -F foo
$

Bref, ça n'est pas d'une utilité terrifiante. Un test rapide me montre
que ça n'est pas le cas de partout, sur d'autres machines, j'ai le
comportement attendu.

J'ai raté quelque chose, ou c'est un bug de ma version de less ?


Non, ça doit tenir à une différence de description de terminaux. Il doit y
avoir des entrées pour ti et te dans le termcap du terminal qui a le
problème.

A+

--
Jean-Marc
Site de usenet-fr: http://www.usenet-fr.news.eu.org

Avatar
Damien Wyart
* Matthieu Moy in fr.comp.os.unix:
J'ai bien trouvé "less -F", mais en quittant, il restaure le terminal
dans l'état dans lequel il était avant de me montrer le fichier, donc,
mon terminal "clignote" un coup, puis il revient au shell, sans le
contenu du fichier.


Essaie d'ajouter l'option -X. Sinon, lancer l'émulateur de terminal avec
l'option de ressource titeInhibit.

Ce qui amusant c'est que ces contrariétés ont été discutées très
récemment sur la liste noyau Linux, car git appelle less sur certaines
commandes avec des options en dur, et Linus a demandé à ce qu'elles
soient changées sinon ça lui efface son terminal et il n'aime pas :)

--
DW

Avatar
Matthieu Moy
Damien Wyart writes:

Essaie d'ajouter l'option -X.


Ça marche. Merci.

(enfin, ça marche, mais avec un effet très bizare par exemple quand
mon terminal est « tout frait » avec juste un prompt en haut : ça va
directement à la dernière ligne de la fenêtre, comme si le fichier
commençait par pleins de lignes vides)

Ce qui amusant c'est que ces contrariétés ont été discutées très
récemment sur la liste noyau Linux, car git appelle less sur certaines
commandes avec des options en dur, et Linus a demandé à ce qu'elles
soient changées sinon ça lui efface son terminal et il n'aime pas :)


Ça n'est qu'une demie coïncidence, vu que je débute avec git ;-). Et
le pager par défaut, c'est une bonne idée, mais pas si c'est pour
regarder un bout de texte de 10 lignes ...

--
Matthieu

Avatar
Damien Wyart
* Matthieu Moy in fr.comp.os.unix:
(enfin, ça marche, mais avec un effet très bizare par exemple quand
mon terminal est « tout frais » avec juste un prompt en haut : ça va
directement à la dernière ligne de la fenêtre, comme si le fichier
commençait par pleins de lignes vides)


Ah, oui, il y a en effet ce petit désagrément, pour lequel je n'ai pas
de solution... Mais cela reste meilleur que l'effacement complet qui est
souvent gênant.

--
DW

Avatar
FAb
Matthieu Moy writes:

Pascal Bourguignon writes:

Matthieu Moy writes:

$ cat foo
foo
$ less -F foo
$


[...]

Chez moi, ça marche.

% less --version
less 378+iso254
Copyright (C) 2002 Mark Nudelman


Damned. En cherchant un peu plus loin :

$ TERM=xterm less -F /tmp/bar
bar
$ TERM=rxvt less -F /tmp/bar
$

(dans un rxvt)

Là où ça devient intéressant, c'est que dans un xterm (un vrai xterm,
lancé avec la commande xterm) :

$ TERM=xterm less -F /tmp/bar
$ TERM=rxvt less -F /tmp/bar
$

Si quelqu'un y comprend quelque chose ...



Sur certaines distro xterm n'est pas xterm. C'est en fait un rxvt schyzo...
(lien symbolique)

A+
FAb



Avatar
Vincent Lefevre
Dans l'article ,
Matthieu Moy écrit:

J'ai raté quelque chose, ou c'est un bug de ma version de less ?


Disons que c'est un bug de design, qui doit se trouver dans toutes
les versions de less, surtout que dans le cas où ça tient sur un
écran et que less quitte, il n'y a pas vraiment besoin d'init du
terminal. C'est d'ailleurs ce qui a été suggéré ici en mars 2001:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bugQ462

On peut voir que ça n'a pas évolué depuis. :(

--
Vincent Lefèvre - Web: <http://www.vinc17.org/>
100% accessible validated (X)HTML - Blog: <http://www.vinc17.org/blog/>
Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)