1. NOM

most - Parcourir et afficher un fichier texte

2. SYNOPSIS

most [-1bCcdMstuvwz] [+ligne_n] [+c] [+d] [+s] [+u] [+/chaîne] [nom_de_fichier...]

3. DESCRIPTION

most est un programme de défilement qui affiche, une pleine page à la fois, le contenu d'un fichier sur un terminal. Il s'arrête après chaque page et affiche aussi le nom du fichier, le numéro de la première ligne affichée à l'écran et le pourcentage du fichier qui a déjà été affiché.

Contrairement à d'autres programmes de visualisation, most peut afficher un nombre arbitraire de fenêtres tant que chacune d'elle occupe au moins deux lignes. Chaque fenêtre peut contenir le même fichier ou des fichiers différents. De plus, chaque fenêtre a son propre mode d'affichage. Par exemple, une fenêtre peut afficher un fichier avec des retours automatiques à la ligne pendant qu'une autre peut couper l'affichage de la ligne. Les fenêtres peuvent être « regroupées » : si la ligne courante de l'une des fenêtres regroupées est modifiée, toutes les fenêtres regroupées seront actualisées. most peut aussi ignorer les lignes qui sont indentées au-delà d'une valeur spécifiée par l'utilisateur. C'est utile pour lire du code source. Reportez-vous à la commande « :o » pour la description de cette fonctionnalité.

En plus d'afficher des fichiers texte ordinaires, most peut aussi afficher des fichiers binaires ou avec des caractères ASCII quelconques. Quand un fichier est lu dans un tampon, most examine les 32 premiers octets du fichier pour déterminer s'il s'agit d'un fichier binaire puis passe dans le mode adéquat. Cependant, cette fonctionnalité peut être désactivée avec l'option -k. Reportez-vous à la description des options -b, -k, -v et -t pour de plus amples détails.

Les fichiers textes peuvent contenir des combinaisons de caractères de soulignement et de retour arrière pour qu'une imprimante souligne ou biffe le texte. Quand most le détecte, il insère les séquences d'échappement adéquates pour obtenir l'effet désiré. De plus, certains fichiers font biffer certains caractères à l'impression en insérant un retour chariot au milieu de la ligne. Dans ce cas, most affiche le caractère de biffage par un attribut gras. Cette fonctionnalité facilite la lecture des pages de manuel .UX ou des documents générés avec runoff. En particulier, regarder cette page de manuel avec most devrait illustrer ce comportement à condition que les caractères soulignés n'aient pas été retirés. Ceci peut être désactivé avec l'option -v.

Par défaut, les lignes ayant plus de caractères que la largeur du terminal ne sont pas remises en forme : l'affichage de la ligne est alors tronqué. Lorsque cette troncature survient, elle est indiquée par un « $ » dans la colonne la plus à droite du terminal. On utilise les flèches directionnelles DROITE et GAUCHE pour voir les lignes qui s'étendent au-delà des marges de l'écran. L'option -w peut être utilisée pour annuler cette fonctionnalité. Quand une fenêtre est remise en forme, le caractère « \ » apparaît à la droite de la fenêtre.

Les commandes sont listées ci-dessous.

4. OPTIONS

  • -1
        Mode VT100. Cela n'a de sens que sur des systèmes VMS. Cette option ne devrait être utilisée que si le terminal est un VT100. Cela implique que le terminal n'a pas la capacité d'effacer et d'insérer des lignes multiples. Les VT102 et supérieurs ont cette possibilité.
  • -b
        Mode binaire. Utilisez cette option lorsque vous voulez voir des fichiers contenant des caractères 8 bits. most affichera le fichier avec une notation hexadécimale (16 octets par ligne). Une ligne type ressemble à :

01000000 40001575 9C23A020 4000168D ....@..u.#. @... .De

Lorsque l'option -v est utilisée, la même ligne ressemble à :

@^@ @ u 9C #A0 @^@^V8D ....@..u.#. @... .De

  • -C
        Désactive la colorisation.
  • -d
        Omettre la barre oblique inverse (« \ ») signalant une ligne se poursuivant sur la ligne suivante.
  • -M
        Désactive l'utilisation de mmap.
  • -s
        Comprime. Remplace plusieurs lignes vides successives par une seule.
  • -z
        Désactive la décompression à la volée.
  • -v
        Affiche les caractères de contrôle : par exemple « ^A » représentera « contrôle A ». Normalement, most n'interprète pas les caractères de contrôle.
  • -t
        Représente les tabulations par « ^I ». Cette option n'a un sens que lorsqu'elle est utilisée en conjonction avec l'option -v.
  • +ligne_n
        Démarre à la ligne_n.
  • -c
        Rend la recherche sensible à la casse. Par défaut, elle ne l'est pas.
  • -u
        Désactiver le mode UTF-8, même si la locale l'exige.
  • +u
        Force le mode UTF-8. Par défaut, most utilisera la locale du système pour déterminer si le mode UTF-8 doit être activé. Les options +u et -u permettent de modifier ce comportement.
  • +d
        Cette option ne devrait être utilisée que si vous voulez supprimer un fichier pendant sa lecture. Cela facilite le nettoyage des fichiers non désirés. Le fichier est effacé par la séquence interactive : « :D » puis sa confirmation par « y ».
  • +/chaîne
        Démarre à la ligne contenant la première occurrence de chaîne.

5. UTILISATION DES COMMANDES

Certaines commandes ont un paramètre numérique facultatif, saisi avant la commande. S'il n'est pas fourni, la valeur par défaut est 1.

Les commandes prennent effet immédiatement ; utiliser la touche ENTRÉE n'est ni nécessaire, ni correct (en réalité, ENTRÉE est en elle-même une commande).

Exemple : pour descendre d'une ligne, appuyez sur la touche FLÈCHE_VERS_LE_BAS. Pour descendre de 20 lignes, appuyez successivement sur les touches 2 puis 0 et enfin FLÈCHE_VERS_LE_BAS.

  • ENTRÉE, FLÈCHE_VERS_LE_BAS, V, CTRL-N
        Affiche la ligne suivante ou i lignes de plus si précisé.
  • FLÈCHE_VERS_LE_HAUT, ^, CTRL-P
        Affiche la ligne précédente ou i lignes précédentes si précisé.
  • T, ÉCHAP.<
        Va au début du tampon.
  • B, ÉCHAP.>
        Va à la fin du tampon.
  • FLÈCHE_DROITE, TAB, >
        Déplace la fenêtre vers la gauche de 60i colonnes pour voir les lignes qui sont au-delà de la marge droite de la fenêtre.
  • FLÈCHE_GAUCHE, CTRL-B, <
        Déplace la fenêtre vers la droite de 60i colonnes pour voir les lignes qui sont au-delà de la marge gauche de la fenêtre.
  • U, CTRL-U, SUPPR., PAGE_PRÉCÉDENTE
        Revient i fenêtres en arrière et affiche cette fenêtre.
  • R, CTRL-R
        Rafraîchit l'écran.
  • J, G
        Si i n'est pas précisé, attend un numéro de ligne puis va à cette ligne. Sinon, va directement à la ligne i.
  • %
        Si i n'est pas précisé, attend un nombre en pourcentage puis va à ce pourcentage du fichier. Sinon, va directement au ième pour cent du fichier.
  • W, w
        Si la largeur de l'écran est de 80, elle devient 132 et vice-versa. Pour d'autres valeurs, cette commande est ignorée.
  • Q, CTRL-X CTRL-C, CTRL-K E
        Quitte most. Sur VMS, ^Z permet aussi de sortir.
  • h, CTRL-H, AIDE, F2
        L'aide. Donne une description de toutes les commandes de most. La variable d'environnement de most appelée MOST_HELP doit être paramétrée pour que ce soit utile.
  • f, /, CTRL-F, RECHERCHE, GOLD F3
        Attend une chaîne de caractères et recherche, à la suite de la ligne courante, la ième ligne différente contenant cette chaîne. CTRL-G stoppe la recherche.
  • ?
        Attend une chaîne de caractères et recherche, en arrière de la ligne courante, la ième ligne différente contenant cette chaîne. CTRL-G stoppe la recherche.
  • n Recherche, dans les i prochaines lignes, une occurrence de la dernière chaîne de caractères recherchée dans le même sens que la recherche précédente.

m, SELECT, CTRL-@, CTRL-K M, POINT

Place une marque sur la ligne courante pour pouvoir y revenir plus tard.

  • INSER., CTRL-X CTRL-X, VIRGULE, CTRL-K ENTRÉE, GOLD POINT
        Place une marque sur la ligne courante mais retourne à la marque précédente. Cela permet à l'utilisateur d'aller et venir entre deux endroits du fichier.
  • l, L
        Inverse l'état de regroupement de cette fenêtre. La fenêtre est regroupée s'il y a un « * » sur le bord gauche de la ligne d'état. Les fenêtres regroupées se déplacent ensemble.
  • CTRL-X 2, CTRL-W 2, GOLD X
        Divise la fenêtre active en deux.
  • CTRL-X o, CTRL-W o, o, GOLD UP, GOLD DOWN
        Passe à la fenêtre suivante.
  • CTRL-X 0, CTRL-W 0, GOLD V
        Efface la fenêtre active.
  • CTRL-X 1, CTRL-W 1, GOLD O
        Efface toutes les fenêtres sauf une.
  • E, e
        Édite ce fichier.
  • $, ÉCHAP. $
        Le comportement de cette commande diffère selon le système d'exploitation. Sur VMS, most démarre un processus fils. Quand l'utilisateur quitte le processus, most reprend. Sur les systèmes .UX , most se met simplement en pause.
  • :n
        Passe au prochain nom de fichier donné dans la ligne de commande. Utilisez les flèches directionnelles pour avancer et reculer dans la liste des fichiers. « Q » permet de quitter most et n'importe quelle autre touche sélectionne le fichier donné.
  • :c
        Inverse la sensibilité à la casse de la recherche.
  • :D
        Efface le fichier courant. Cette commande n'a de sens qu'avec l'option +d.
  • :o, :O
        Inverse diverses options. Avec cette suite de touches, most affiche une invite demandant à l'utilisateur d'appuyer sur une des touches suivantes : bdtvw. Les options « b », « t », « v » et « w » ont la même signification que leurs équivalents en ligne de commandes. Par exemple, l'option « w » va permuter la remise en forme des lignes entre l'activation et la désactivation.

L'option « d » doit être préfixée avec un entier i. Toutes les lignes indentées au-delà de la colonne i ne seront pas affichées. Par exemple, voici un extrait sans traitement :

int main(int argc, char **argv) { int i; for (i = 0; i < argc, i++) { fprintf(stdout,"%i: %s\n",i,argv[i]); } return 0; } .De

Avec la suite de touche « 1:od », most affiche le fichier en ignorant toutes les lignes indentées au-delà de la première colonne. Appliquée à l'exemple ci-dessus, most afficherait :

int main(int argc, char **argv)... } .De

le « ... » indiquant que les lignes suivantes ne sont pas affichées.

6. CONSEILS

CTRL-G annule la commande obligeant l'utilisateur à taper quelque chose dans l'invite. La touche d'apostrophe inverse a un comportement spécifique ici. Elle est utilisée pour protéger certains caractères. C'est utile lors d'une recherche de l'occurrence d'une chaîne composée d'un caractère de contrôle ou d'une chaîne placée au début d'une ligne. Dans ce cas, pour trouver l'occurrence de « Le » au début d'une ligne, saisissez `^JLe avec ` protégeant le CTRL-J.

7. ENVIRONNEMENT

most utilise les variables d'environnement suivantes :

  • MOST_SWITCHES
        Cette variable configure les variables utilisées de manière courante. Par exemple, certaines personnes préfèrent utiliser most avec l'option -s permettant de ne pas afficher les lignes vides en trop. Sur VMS, cela est fait normalement dans le fichier login.com par la ligne :

$ define MOST_SWITCHES "-s" .De

  • MOST_EDITOR, SLANG_EDITOR
        L'une et l'autre de ces variables d'environnement spécifient un éditeur que most invoquera pour éditer un fichier. La valeur peut contenir les descripteurs de formatage %s et %d qui représentent respectivement le nom du fichier et le numéro de ligne. Par exemple, si votre éditeur est JED, paramétrez MOST_EDITOR à « jed %s -g %d ».
  • MOST_HELP
        Cette variable peut être utilisée pour spécifier un fichier d'aide de remplacement.
  • MOST_INITFILE
        Cette variable permet de spécifier le fichier d'initialisation à charger au démarrage. L'action par défaut est de charger le fichier de configuration du système depuis /etc/most.conf puis le fichier de configuration de l'utilisateur depuis $HOME/.mostrc. .

8. SYNTAXE DU FICHIER DE CONFIGURATION

Lorsque most démarre, il essaie de lire un fichier de configuration système puis un fichier de configuration de l'utilisateur. Ces fichiers peuvent être utilisés pour spécifier des raccourcis clavier et la colorisation.

Pour lier une touche à une fonction particulière, utilisez la syntaxe :

setkey nom_de_la_fonction séquence_de_touches

La commande setkey a besoin de 2 arguments. L'argument nom_de_la_fonction spécifie la fonction qui va être exécutée comme réponse aux touches spécifiées lorsque l'utilisateur appuie sur les touches correspondant à l'argument séquence_de_touches. Par exemple,

setkey "up" "^P"

indique que, lorsque CTRL-P est pressé, la fonction up va être exécutée.

Il est parfois nécessaire de détacher d'abord une séquence_de_touches avant de la lier de nouveau. C'est faisable grâce à la fonction unsetkey :

unsetkey "^F"

Les couleurs peuvent être définies grâce au mot clé color dans le fichier de configuration en utilisant la syntaxe :

color NOM_DE_L_OBJET COULEUR_DU_TEXTE COULEUR_DU_FOND

Ici, NOM_DE_L_OBJET peut être n'importe lequel des éléments suivants :

 
Sélectionnez
   status           -- la ligne d'état
    underline        -- texte souligné
    overstrike       -- texte biffé
    normal           -- n'importe quoi d'autre

Reportez-vous aux exemples de fichiers de configuration pour plus d'informations.

9. BOGUES

Presque tous les bogues connus ou les limitations de most sont dus au désir de lire et d'interpréter des caractères de contrôles dans les fichiers. Un problème concerne l'utilisation du caractère « Retour Arrière » pour souligner ou biffer d'autre caractères. most essaie d'utiliser les séquences d'échappement du terminal pour simuler ce comportement. Par effet de bord, most ne se comporte pas toujours comme on l'attendrait lorsqu'on se déplace à droite et à gauche dans un fichier. En cas de doute, utilisez les options -v et -b de most.

10. AUTEUR

John E. Davis

11. REMERCIEMENTS

Merci aux utilisateurs de most pour leurs critiques et leurs commentaires utiles. Merci spécialement aux individus qui ont contribué au code de most.

Mats Akerberg, Henk D. Davids, Rex O. Livingston et Mark Pizzolato ont contribué aux premières versions VMS de most. En particulier, Mark a travaillé pour qu'il soit prêt pour DECUS.

Foteos Macrides <> a adapté most pour qu'il soit utilisable dans cswing et gopher. Un petit nombre de fonctions de la version actuelle de most ont été inspirées par son travail.

Merci à Robert Mills <> pour la réécriture des routines de recherche utilisées pour les expressions rationnelles.

Sven Oliver Moll <> est arrivé avec l'idée d'une détection automatique des fichiers zippés.

Merci également à Shinichi Hama pour ses précieuses critiques sur most.

Javier Kohen pour son aide concernant la gestion de l'UTF-8.

Merci à David W. Sanderson () pour l'adaptation de la documentation au format des pages de man.