Je comprends ce que GNU Info est et comment l'utiliser, mais qu'est-ce pour ? Pourquoi existe-t-il parallèlement aux pages de manuel? Pourquoi ne pas écrire des pages de manuel détaillées plutôt que de fournir un utilitaire séparé?
62
info --vi-keys
cette option pour rendre les raccourcis d’informations plus familiers. Vous pouvez également utiliserless
avec des informations pour en faire sentir commeman
:info --subnodes -o - $1 | less
. Vous perdez cependant un peu de la mise en forme du texte de cette façon.Réponses:
GNU Info a été conçu pour offrir une documentation complète, hyperliée et possible de produire dans plusieurs formats.
Des pages de manuel étaient disponibles, et elles étaient très utiles pour la sortie imprimée. Cependant, ils ont été conçus de manière à ce que chaque page de manuel ait un ensemble de contenu relativement petit. Une page de manuel peut avoir la discussion sur une seule fonction C telle que printf (3) ou décrire la commande ls (1).
Cela disparaît lorsque vous entrez dans des systèmes plus vastes. Comment adapteriez-vous la documentation d'Emacs dans les pages de manuel? Un exemple de problème est la page de manuel Perl, qui répertorie 174 pages de manuel distinctes que vous pouvez lire pour obtenir des informations. Comment parcourez-vous cela ou faites-vous une recherche pour savoir ce que && signifie?
Comme amélioration par rapport aux pages de manuel, Info nous a donné:
Est-ce toujours d'actualité? De nos jours, la plupart des gens diraient "Cette documentation n'appartient pas à une page de manuel" et la placeraient au format PDF ou au format HTML. En fait, les systèmes d’aide de plusieurs systèmes d’exploitation sont basés sur HTML. Cependant, lors de la création de GNU Info (1986), HTML n'existait pas encore. De nos jours, texinfo vous permet de créer des formats PDF, Info ou autres, afin que vous puissiez utiliser ces formats si vous le souhaitez.
C'est pourquoi GNU Info a été inventé.
la source
man -K foo
, avec l’option majuscule, effectue une recherche globale en texte intégral. Essayezman -K global-apropos
- il trouve les pages pourman
lui-même, en anglais et dans la langue locale.La raison pour laquelle le système d’information a été inventé est une nécessité, mais je suppose que «la paresse, l’orgueil et l’impatience» est une explication tout aussi bonne.
L’objectif du projet GNU était de développer un système d’exploitation et des outils d’exploitation librement modifiables et librement modifiables. Le système Unix Man traditionnel était basé sur le système de formatage de documents nroff / troff de Bell Labs, qui était à l’époque un logiciel commercial (non libre). Finalement, ce système a été désossé et un remplacement gratuit appelé groff a été créé, mais plusieurs années après le démarrage du projet GNU. Donc, utiliser le système man pour la documentation GNU avant cette date aurait nécessité la mise en place d’un remplacement de troff, une entreprise gigantesque.
Pendant ce temps, GNU Emacs était le premier grand projet de GNU et nécessitait une documentation exhaustive. Confronté à une montagne de travail mettant en œuvre le système GNU, Richard Stallman a exploré les logiciels existants qu'il pourrait utiliser dans son système. TeX existait déjà et disposait de puissantes capacités de formatage de documents. Contrairement à nroff / troff, TeX était libre d’utiliser et de redistribuer. Texinfo a été créé en tant que système de documentation afin de tirer parti de la puissance de TeX pour les manuels imprimés et de GNU Emacs pour le traitement et la lecture de la documentation en ligne. Le processeur Texinfo et le navigateur de documents d’information d’origine étaient tous deux écrits en Lisp et s’exécutaient dans Emacs. Les utilitaires autonomes Texinfo sont arrivés plusieurs années plus tard.
la source
Comme le dit la page Wikipedia , TeXinfo a été conçu comme la documentation officielle du projet GNU par Richard Stallman. C'est un ensemble de macros au-dessus de TeX, conçu pour la rédaction de manuels de logiciels. Je pense que Stallman considérait que les pages de manuel étaient inadéquates pour cette tâche. Deux avantages de Texinfo par rapport aux pages de manuel, c’est qu’il est hyper-lié et, deuxièmement, qu’il est, par sa conception, facile à convertir en d'autres formats.
ADDENDA: Bien que cela ne concerne pas strictement la question, notez que les pages de manuel sont toujours considérées comme le système de documentation standard sur les systèmes libres de type Unix tels que ceux exécutés sur le noyau Linux et les différentes versions de BSD. Par exemple, les modèles de paquet Debian encouragent l’ajout d’une page de manuel pour toutes les commandes, et lintian vérifie également la présence d’une page de manuel. Texinfo n'est pas encore largement utilisé en dehors du projet GNU.
la source
man
format (alors plus qu'aujourd'hui) orienté sur la copie papier .D'un point de vue pratique ,
info
est le plus détaillé des trois niveaux de documentation de référence:Les trois niveaux sont généralement de plus en plus détaillés:
--help
en tant qu'option de commande courante - un bref résumé de l' utilisation ,man
- les pages de manuel classiques, une référence rapide etinfo
- un manuel plus détaillé, spécifique à GNU - la documentation complète et officielle .Si une
info
page n'est pas disponible, la page de manuel contient généralement la documentation complète.Notez que la page de manuel contient exactement les mêmes informations que la
--help
sortie de nombreuses commandes de GNU coreutils - par exemplels
;Comparez
ls --help
etman ls
voyez que la différence ne concerne que le formatage.La visionneuse d'informations par défaut est
info
.Il existe des alternatives plus confortables , comme pour le terminal
pinfo
, ou pour l'interface graphiquekonqueror
:pinfo ls
konqueror info:ls
la source
help
comme commande pour les commandes internes bash,apropos
etwhatis
comme homme avec des options pour une utilisation pratique.info sed
etinfo grep
comparez avecman sed
etman grep
. Les pages de manuel sont beaucoup plus techniques et manquent d’exemples la plupart du temps. Il existe des exceptions à ce que je viens de décrire, mais cela est vrai pour la plupart des commandes, je dirais.1 - technologie avancée mais légère
Les pages de manuel sont plates.
info
est un arbre.Tous deux restent basés sur du texte , ils peuvent donc être utilisés lors du développement de système de bas niveau (contrairement à http, qui nécessite une interface graphique complète et un navigateur avant de pouvoir l'utiliser).
Cela est également utile car linux peut s’exécuter sur de nombreuses machines disposant de peu de ressources, par exemple, les éléments exécutés sur mon Arduino d’Atmel se trouvent dans
info
.(Histoire:
info
ressemble à gopher , si vous vous en souvenez. C’était ce que nous avions avant de nous installer dans GUI OS, et le Web a explosé. Je me souviens que gopher fonctionnait très bien pour trouver des informations, et il était rapide Il était facilement extensible, entièrement basé sur le texte et rapide.)Les pages de manuel ne peuvent pas contenir de liens hypertexte utilisables. (Ce n'est tout simplement pas possible dans cette technologie.)
info
peut et a de nombreux liens utilisables d'un noeud à l'autre, ou d'un noeud à la feuille, facilitant la navigation rapide dans les gros manuels.2 - contient du contenu non trouvé dans les pages de manuel
De nombreux packages standard ont également un package sœur -doc . Souvent, ce contenu se trouve alors uniquement à l'intérieur
info
.Ces paquets de documentation ajoutent des livrets dans les informations, avec des sections et des sous-sections. En
info
jargon, ils sont appelésnodes
et les nœuds peuvent en contenir d’autresnodes
dans une arborescence.Il y a des commandes pour grimper autour de l'arbre, en voici quelques exemples:
Si vous lisez et que vous faites défiler ligne par ligne, vous visiterez toutes les sections de chaque livret.
Commandes importantes
l - revenir en arrière - 'L' minuscule, comme dans l ast. C'est comme le bouton de retour de votre navigateur Web. - Retournez au dernier noeud vu dans cette fenêtre (initialement nous n’avons qu’une fenêtre). Wow, nous pouvons aussi diviser la fenêtre du document en deux!
d - mon peuple - Aller à la principale ' d noeud irectory. - Ceci est le sommet de l'arborescence INFO. Contient des liens vers les familles:
t - ma famille - Allez au noeud t op de ce document. - généralement la table des matières
u - mes parents - Allez u p un niveau. par exemple, passer de la section 2.1 à la section 2.
n - mes frères et soeurs - Allez au nœud n ext à ce niveau. par exemple, section 2 -> section 3 (pas 2.1)
p - mes frères et sœurs - Aller à la p nœud récédent à ce niveau. par exemple section 3 -> section 2
] - mes enfants - Aller au noeud suivant dans le document, par exemple section 2 -> section 2.1
[ - mes enfants - Aller au noeud précédent dans le document, par exemple la section 2.1 -> section 2
Je n'ai pas non plus vraiment compris pourquoi je voulais utiliser les informations. J'y avais déjà barboté et je l'avais d'abord trouvée vieille école. Mais parce que j'avais besoin de plus d'informations pour un projet autoconf , et il m'a été suggéré que c'est là que se trouvait cette documentation, j'ai jeté un nouveau coup d'œil récemment.
La première chose à faire était de trouver comment mieux naviguer. J'ai trouvé l'aide de H presque inutile. C'était jusqu'à ce que je remarque que je pouvais faire défiler cette aide, ..mais il y avait trop de confusion.
J'ai donc copié cette aide et l'ai collée ensemble dans un Gnote, et j'ai commencé à essayer de comprendre comment cela
info
fonctionnait.Tandis que j'apprenais plus, j'ai réécrit leur aide pour moi. Je voulais savoir quelle était leur gamme complète de commandes et comment elles étaient classées.
J'ai remarqué que beaucoup de touches étaient dupliquées, avec 2 ou 3 façons d'exécuter une commande donnée. J'ai aussi remarqué que tout cela ressemblait beaucoup à Emacs.
Voici mon aide-mémoire sur les commandes d' information :
la source