Contenu | Rechercher | Menus
Selon les tags présents sur cette page, les informations qu'elle contient n'ont pas été vérifiées depuis Ubuntu 12.04 LTS.
Apportez votre aide…

groff

Cette page de doc est en cours de rédaction. Elle n'est pas encore utilisable dans l'état actuel

Comme l'indique son Logo, Groff est le logiciel de typographie de GNU, et permet donc de mettre en forme des textes. C'est un logiciel WYSIWYM [http://fr.wikipedia.org/wiki/WYSIWYM], la mise en forme du texte s'effectue à l'aide de requêtes, celles-ci sont exécutées ensuite par la commande groff et le texte mis en forme apparaît alors dans un fichier de sortie. Groff s'utilise donc de manière analogue à latex.

Le texte d'entrée peut être rendu en différends formats: .ps, .pdf, .html, .dvi

Groff tourne essentiellement sur les systèmes UNIX, mais on trouve sur le site officiel une version installable sur Windows.

Groff, qu'on appelle aussi GNU-Troff, a une longue histoire que vous pouvez lire sur

Pré-requis

Pour l'installer:

Installation

Même si vous ne l'avez pas encore installé, groff est déjà présent sur votre machine de manière rudimentaire. Vous pouvez vous convaincre de cette présence en copiant-collant la commande suivante dans votre terminal.

echo un petit texte de votre choix | groff > petitexte.ps

La commande echo édite le texte qui la suit.
Le "pipe" | redirige le texte sur groff.
Groff fait de votre texte un fichier au format .ps (qui est l'ancêtre de .pdf). Vous pourrez alors récupérer petitexte.ps dans votre répertoire personnel.

Pourquoi cette présence discrète de groff sur votre machine? Tous ceux /celles qui utilisent les commandes Unix connaissent bien les pages man. Ces pages sont justement rédigées à l'aide de groff, et c'est donc lui qui nous permet de les lire.

Cette installation rudimentaire ne permet pas encore de vraiment mettre des textes en forme. Si vous voulez profiter de toutes ses fonctionnalités,

* Installez le paquet groff.

Une fois installé, groff n'apparaît dans aucun menu déroulant et c'est normal. C'est en l'utilisant en ligne de commande avec des options que vous pourrez vérifier que l'installation a eu lieu.

Groff pas à pas

Très léger (le fichier exécutable ne fait que 75 Ko !) et très fiable, groff demande toutefois à son utilisateur une bonne dose de "prise en main". Le but de cette page de doc est de faciliter cette prise en main et de permettre à un Ubuntero moyen, formé à la ligne de commande, de faire ses premiers vols d'essai dans ce logi-ciel qu'est groff :-) .

Pour l'utiliser vous pourrez choisir un mode d'utilisation qui vous plaira. Le chaptire actuel vous y aidera. Pour formater vos textes, vous choisirez aussi le paquet de macros qui vous convient le mieux (-me, -mom, -mm, -ms ou -man). Le chapitre 4 vous guidera.

dans le terminal

Revenons à notre premier exemple et modifions le un peu:

echo un petit fromage crémeux | groff > fgcrem.ps

Si vous avez utilisé des caractères accentués ou spéciaux tels que le "ç", vous aller retrouver dans votre fichier de sortie fgcrem.ps des signes kabalistiques! Pas de soucis: il suffit d'ajouter l'option -k.

echo un petit fromage crémeux | groff -k > fgcrem.ps

L'option -k fait appel à preconv, un logiciel qui préconvertit les caractères spéciaux en quelque chose que groff peut comprendre. (Pour en savoir plus: man preconv).

À l'aide de la commande printf nous pouvons à présent formater un petit texte de plusieurs lignes. Ici un élément fondamental: groff ne tient pas compte des changements de ligne, \n permet de spécifier que vous voulez un changement de ligne à tel endroit. Supprimer les \n, et groff écrira votre texte sur une ligne.

printf ' \n \n \n 
la jument de Michao\n 
et son petit poulain\n 
a passé dans le pré\n 
et mangé tout le foin' | groff -k > Michao.ps

Au lieu de l'envoyer sur un fichier .ps nous pouvons aussi en avoir un aperçu avec l'option -X (gxditview). Pour faire ceci, remplacer la deuxième partie de la commande par

| groff -k -X

En cliquant gauche sur l'aperçu, nous pouvons diriger le fichier sur l'imprimante (choisir "print" puis "grops | lpr")

Nous pouvons aussi le diriger directement sur l'imprimante, en remplaçant la 2e partie de la commande par

 | groff -k | lp 

Le désavantage du terminal est qu'on ne peut pas revenir à une ligne précédente. Il ne permet donc pas de travailler vraiment un texte, d' y apporter des modifications après coup. C'est pourquoi, pour formater des textes plus longs nous avons besoin d'un éditeur de texte.

En console: nano ou vim

Ce que nous venons de faire dans le terminal vous à peut-être mis la puce à l'oreille: avec groff nous sommes à même de formater des documents sans interface graphique 8-) 8-).

Comment? Ça ne vous tente pas de savoir faire du traitement de texte en console :-O ? Dans ce cas vous pouvez passer directement au chapitre 3.3.

Mais si c'est oui, prenons alors un éditeur de texte, ça nous permettra de travailler sur des textes plus longs. Nano et vim sont deux éditeurs de texte qui fonctionnent en console, et donc sans interface graphique.

nano

En principe, nano est déjà installé sur Ubuntu. Un apprentissage rapide est possible en lisant la doc nano, ou en regardant la 2e moitié de cette vidéo: http://www.tutoriels-video.fr/editer-un-fichier-en-mode-administrateur-sur-ubuntu

Si vous êtes prêt(e), vous pouvez imprimer ce sous-chapitre, et rendez-vous en console par Ctrl+Alt+F1.

Après avoir renseigné les informations de login, lancer nano avec la commande

nano

Se déplacer dans nano à l'aide des flèches.

Vous pouvez entrer par exemple les 4 petites lignes dans l'encadré ci-dessous: Commencer par 3-4 lignes vides, pour que le texte soit bien cadré.

Remarque: dans un éditeur de texte, la requête \n n'est plus de mise. Si vous voulez rédiger quelques vers, commencez chaque ligne par un signe "espace", groff mettra alors le texte sur 4 lignes.

 


 l'hiver viendra et quand
 l'hiver viendra
 la jument de Michao
 elle s'en repentira

Ressortez de nano avec ctrl+x .

Enregistrez le fichier comme demandé.

Nommez le comme demandé. Par ex. "hiver".

Vous retrouvez le prompt où vous pouvez lancer la commande

groff -k hiver | lp 

L'aperçu Gxditview (par l'option -X) ne fonctionne évidemment pas en console. Le seul moyen de voir votre fichier de sortie est donc de l'imprimer.

Retour de console par Ctrl+Alt+F7

vim

Vim n'est pas installé par défaut sur Ubuntu. Pour l'installer et apprendre à l'utiliser, lisez la doc vim, ou le chapitre 16 de http://formation-debian.via.ecp.fr/

Si vous êtes prêt(e). Imprimez ce sous-chapitre et rendez-vous en console par Ctrl+Alt +F1.

Après avoir renseigné les informations de login, lancez vim avec la commande

vim

Par la touche "Insert"de votre clavier, vous accédez au mode INSERTION (confirmation en bas à gauche de l'écran). Vous pouvez alors entrer votre texte. Si vous cherchez un exemple; reprenez les 4 lignes proposées pour nano ci-dessus.

Une fois le texte entré, retournez en mode commande par "Échap" (ou "Esc").

Enregistrez votre texte et nommez le avec :w nom_de_fichier. Par ex. "hiver".

Quittez vim avec :q. Vous retrouvez le prompt où vous pouvez entrer la commande groff:

groff -k hiver | lp 

L'aperçu Gxditview (par l'option -X) ne fonctionne pas en console. Le seul moyen de voir votre fichier de sortie est donc de l'imprimer.

Retour de console par Ctrl+Alt+F7

Sur interface graphique

C'est certainement la manière classique d'utiliser groff. Pour garder une certaine clarté, répartir le travail sur 3 bureaux virtuels. Sur le premier bureau, votre éditeur de texte ( gedit, mousepad, leafpad…) ou vous pouvez taper votre texte d'entrée. N'oubliez pas de l'enregistrer et de le nommer. Le plus pratique est de placer votre fichier d'entrée dans votre répertoire utilisateur.

Sur un deuxième bureau virtuel, ouvrez un terminal où vous transformez votre fichier d'entrée avec la commande groff

groff votre_fichier > votre_fichier.ps

Sur le troisième bureau virtuel, allez dans votre répertoire personnel, vous y trouverez votre_fichier.ps, que vous pouvez lire avec le visionneur de documents.

Le tout en image. Ici, le fichier s'appelle "michao".

Si vous avez des corrections à apporter, retournez sur le premier bureau virtuel, apportez vos corrections, enregistrez. Sur le deuxième bureau, repassez la commande groff. Contrôlez sur le troisième bureau que vos corrections ont bien passé.

Par défaut, groff travaille dans le répertoire courant. Il est donc pratique de placer les fichiers sur lesquels vous travaillez dans votre dossier personnel, plus précisément à la racine de celui-ci et non dans un sous-répertoire.

Si vous voulez placer vos fichier destinés à groff ailleurs, par exemple dans le sous-répertoire "Documents", deux solutions se présentent:

1. Indiquer à groff le chemin complet du fichier, par ex.

groff /home/utilisateur/Documents/votre_fichier > /home/utilisateur/Documents/votre_fichier.ps

Ce qui fait quand même de longues commandes à taper :-\ .

2. Liste numérotée Se placer dans le sous-répertoire voulu avec la commande cd

cd /home/utilisateur/Documents
groff votre_fichier > votre_fichier.ps

Ayant achevé votre travail, quitter le sous répertoire avec

cd

gedit

L'avantage de gedit est qu'il offre une console intégrée en dessous de la fenêtre d'édition. Cela vous permet de travailler sur deux bureaux virtuels au lieu de trois. Pour installer la console intégrée, voyez http://doc.ubuntu-fr.org/gedit#greffons

Gedit avec console intégrée:

Une fois la console installée, il est possible de copier-coller les commandes par clic droit sur celle-ci. Cela peut être pratique quand on effectue des corrections et que l'on répète une commande plusieurs fois d'affilée.

Il est possible que votre terminal intégré écrive blanc sur blanc, ce qui n'est pas très pratique. Il y a de quoi réparer ce bug ici: http://askubuntu.com/questions/67593/make-gedit-embedded-terminal-colours-the-same-as-the-default-terminal. Veillez à faire rigoureusement ce qui est décrit. Abstenez-vous si vous n'êtes pas tout à fait sûr(e) d'avoir compris.

emacs

Sur emacs, la situation ressemble à celle de gedit. Taper simplement le texte d'entrée sur un nouveau fichier, nommez-le et enregistrez. Ensuite par Tool > shell command, il est possible, sans rien installer, d'avoir une console intégrée sous la fenêtre de l'éditeur de texte. Là, vous pouvez taper votre commande groff et récupérer le fichier de sortie dans votre dossier personnel.

Par "Tool > shell comand on Region" il est même possible d'appliquer la commande groff à une sélection seulement. Ici, il n'est plus nécessaire de nommer la sélection:

groff  > sel.ps

et récupérez le fichier sel.ps dans votre dossier personnel.

Choisir sa boîte à outils

Ce chapitre présente les "outils" qui vont vous rendre véritablement capable de donner forme à un texte: faire des titres, des chapitres, des sous-chapitres, écrire en gras, en italique, varier la taille des caractères, insérer des fomules, des tableaux, des images etc..

Il y a plusieurs "boîtes à outils" à choix. On les appelle aussi "paquets de macros". Les macros sont des macro-instructions indiquant au système comment formater un texte. Les paquets de macros sont un ensemble de macro-instructions cohérent, permettant de formater des textes.

Maîtriser une de ces cinq "boîtes à outils" vous suffira amplement. Deux d'entre-elles sont bien documentées en français, d'autres malheureusement le sont beaucoup moins…Choisissez celle qui vous correspond le mieux!

-me

Paquet classique. Bien documenté. … Conçu pour rédiger des documents universitaires.

Le document suivant vous permettra d'apprendre les principaux outils de -me: http://git.savannah.gnu.org/cgit/groff.git/tree/doc/meintro_fr.me/ Pour obtenir ce document, copiez en les lignes 1 à 2268. Collez-les dans votre éditeur de texte. Nommez le meintro_fr.me. Appliquez la commande

groff -me -k -t meintro_fr.me > meintro_fr.ps

Récupérez le document .ps dans votre dossier personnel.

À partir de la version 1.22 de groff, meintro_fr.ps sera livré dès l'installation de groff. Vous le trouverez sur votre machine avec la fonction de recherche.

Pour aller plus loin avec -me, vous trouverez par la fonction de recherche sur votre machine meref.ps, qui est la reférence de -me (en anglais).

-mm

lettres, livres, rapports techniques. Pour l'instant, aucune documentation détaillée sur ce paquet de macros. Rabattons nous sur man groff_mm

-mom

très général, largement configurable. Conçu à l'origine pour rédiger un roman.

-ms

lettres, livres, rapports techniques.

La doc officielle pour -ms est très bien documentée [engl]

http://www.gnu.org/software/groff/manual/html_node/ms.html#ms

Les requêtes principales sont expliquées ici: http://www.xed.ch/help/groff.html [engl] Les requêtes en Majuscules sont spécifiques à groff -ms Cesses en minuscules peuvent s'appliquer aux 4 (5) paquets de macros. Nous en reparlerons au chap. 5

Exemple dans la 2e moitié de cette page http://linuxfr.org/news/groff-sort-en-version-121 [fr]

On peut copier les lignes de code de cet article, les coller dans un éditeur de texte enregistrer et nommer, par exemple "exms". Faire passer le fichier par la commande

groff -ms -k -Rte exms > exms.ps

La bibliographie ne joue pas parce queu….

Comparez ensuite les requêtes utilisées avec les explications fournies dans le premier lien. Et vous en saisirez le sens:

  • .\" commente une ligne qui n'apparaîtra pas donc dans le fichier de sortie
  • .NH 1: titre numéroté de niveau 1
  • .NH 2: titre numéroté de niveau 2
  • etc…

La commande utilisée ici (`grog fichier.ms` > fichier.ps) ne fonctionne pas chez moi.

Texte barré

Code « machine à écrire »

-man

spécialement pour créer des pages man UNIX.

Lancez l'application via le dash (Ubuntu 11.04 et ultérieures) ou via le terminal (toutes versions d'Ubuntu) avec la commande suivante :

machin-chose

Intégrer des éléments graphiques

les éléments ci-dessous s'accordent avec tous les paquets de macros

tableaux

formules de maths

images

formules chimiques

gremlin ?

Commandes plus générales

Requêtes plus générales: .br, .nr, etc.. polices de caractères

grog, groffer,

soelim?

Désinstallation

Pour supprimer cette application, il suffit de supprimer son paquet. Selon la méthode choisie, la configuration globale de l'application est conservée ou supprimée. Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés.

Liens officiels

autres liens



Le contenu de ce wiki est sous licence : CC BY-SA v3.0