1%&tex
2% Title:  GNU Emacs Survival Card
3
4% Copyright (C) 2000--2021 Free Software Foundation, Inc.
5
6% Author: Włodek Bzyl <matwb@univ.gda.pl>
7% French translation:  \'Eric Jacoboni <jaco@teaser.fr>, November 2001
8
9% This document is free software: you can redistribute it and/or modify
10% it under the terms of the GNU General Public License as published by
11% the Free Software Foundation, either version 3 of the License, or
12% (at your option) any later version.
13
14% As a special additional permission, you may distribute reference cards
15% printed, or formatted for printing, with the notice "Released under
16% the terms of the GNU General Public License version 3 or later"
17% instead of the usual distributed-under-the-GNU-GPL notice, and without
18% a copy of the GPL itself.
19
20% This document is distributed in the hope that it will be useful,
21% but WITHOUT ANY WARRANTY; without even the implied warranty of
22% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
23% GNU General Public License for more details.
24
25% You should have received a copy of the GNU General Public License
26% along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.
27
28
29% See survival.tex.
30
31% User interface is `plain.tex' and macros described below
32%
33% \title{CARD TITLE}{for version 21}
34% \section{NAME}
35% optional paragraphs separated with \askip amount of vertical space
36% \key{KEY-NAME} description of key or
37% \mkey{M-x LONG-LISP-NAME} description of Elisp function
38%
39% \kbd{ARG} -- argument is typed literally
40
41
42%**start of header
43
44\def\plainfmtname{plain}
45\ifx\fmtname\plainfmtname
46\else
47  \errmessage{This file requires `plain' format to be typeset correctly}
48  \endinput
49\fi
50
51% PDF output layout.  0 for A4, 1 for letter (US), a `l' is added for
52% a landscape layout.
53\input pdflayout.sty
54\pdflayout=(0)
55
56\input emacsver.tex
57
58\def\copyrightnotice{\penalty-1\vfill
59  \vbox{\smallfont\baselineskip=0.8\baselineskip\raggedcenter
60    Copyright \copyright\ \year\ Free Software Foundation, Inc.\break
61    Pour GNU Emacs \versionemacs\break
62    Auteur W{\l}odek Bzyl (matwb@univ.gda.pl)\break
63    Traduction fran\c{c}aise \'Eric Jacoboni (jaco@teaser.fr)
64
65    Released under the terms of the GNU General Public License
66    version 3 or later.
67
68    For more Emacs documentation, and the \TeX{} source for this card,
69    see the Emacs distribution,
70    or {\tt https://www.gnu.org/software/emacs}\par}}
71
72\hsize 3.2in
73\vsize 7.95in
74\font\titlefont=cmss10 scaled 1200
75\font\headingfont=cmss10
76\font\smallfont=cmr6
77\font\smallsy=cmsy6
78\font\eightrm=cmr8
79\font\eightbf=cmbx8
80\font\eightit=cmti8
81\font\eighttt=cmtt8
82\font\eightmi=cmmi8
83\font\eightsy=cmsy8
84\font\eightss=cmss8
85\textfont0=\eightrm
86\textfont1=\eightmi
87\textfont2=\eightsy
88\def\rm{\eightrm} \rm
89\def\bf{\eightbf}
90\def\it{\eightit}
91\def\tt{\eighttt}
92\def\ss{\eightss}
93\baselineskip=0.8\baselineskip
94
95\newdimen\intercolumnskip % horizontal space between columns
96\intercolumnskip=0.5in
97
98% The TeXbook, p. 257
99\let\lr=L \newbox\leftcolumn
100\output={\if L\lr
101    \global\setbox\leftcolumn\columnbox \global\let\lr=R
102  \else
103       \doubleformat \global\let\lr=L\fi}
104\def\doubleformat{\shipout\vbox{\makeheadline
105    \leftline{\box\leftcolumn\hskip\intercolumnskip\columnbox}
106    \makefootline}
107  \advancepageno}
108\def\columnbox{\leftline{\pagebody}}
109
110\def\newcolumn{\vfil\eject}
111
112\def\bye{\par\vfil\supereject
113  \if R\lr \null\vfil\eject\fi
114  \end}
115
116\outer\def\title#1#2{{\titlefont\centerline{#1}}\vskip 1ex plus 0.5ex
117   \centerline{\ss#2}
118   \vskip2\baselineskip}
119
120\outer\def\section#1{\filbreak
121  \bskip
122  \leftline{\headingfont #1}
123  \askip}
124\def\bskip{\vskip 2.5ex plus 0.25ex }
125\def\askip{\vskip 0.75ex plus 0.25ex}
126
127\newdimen\defwidth \defwidth=0.25\hsize
128\def\hang{\hangindent\defwidth}
129
130\def\textindent#1{\noindent\llap{\hbox to \defwidth{\tt#1\hfil}}\ignorespaces}
131\def\key{\par\hangafter=0\hang\textindent}
132
133\def\mtextindent#1{\noindent\hbox{\tt#1\quad}\ignorespaces}
134\def\mkey{\par\hangafter=1\hang\mtextindent}
135
136\def\kbd#{\bgroup\tt \let\next= }
137
138\newdimen\raggedstretch
139\newskip\raggedparfill \raggedparfill=0pt plus 1fil
140\def\nohyphens
141   {\hyphenpenalty10000\exhyphenpenalty10000\pretolerance10000}
142\def\raggedspaces
143   {\spaceskip=0.3333em\relax
144    \xspaceskip=0.5em\relax}
145\def\raggedright
146   {\raggedstretch=6em
147    \nohyphens
148    \rightskip=0pt plus \raggedstretch
149    \raggedspaces
150    \parfillskip=\raggedparfill
151    \relax}
152\def\raggedcenter
153   {\raggedstretch=6em
154    \nohyphens
155    \rightskip=0pt plus \raggedstretch
156    \leftskip=\rightskip
157    \raggedspaces
158    \parfillskip=0pt
159    \relax}
160
161\chardef\\=`\\
162
163\raggedright
164\nopagenumbers
165\parindent 0pt
166\interlinepenalty=10000
167\hoffset -0.2in
168%\voffset 0.2in
169
170%**end of header
171
172
173\title{Carte de survie pour GNU\ \ Emacs}{version \versionemacs}
174
175Dans ce qui suit, \kbd{C-z} signifie qu'il faut appuyer sur la touche
176`\kbd{z}' tout en maintenant la touche {\it Ctrl}\ \
177press\'ee. \kbd{M-z} signifie qu'il faut appuyer sur la touche
178`\kbd{z}' tout en maintenant la touche {\it Meta\/} (marqu\'ee {\it Alt\/}
179sur certains claviers) ou apr\`es avoir press\'e la touche {\it Echap\/} key.
180
181\section{Lancement de Emacs}
182
183Pour lancer GNU Emacs, il suffit de taper son nom~: \kbd{emacs}.
184Emacs divise son cadre en plusieurs parties~:
185  une ligne de menu,
186  une zone tampon contenant le texte \'edit\'e,
187  une ligne de mode d\'ecrivant le tampon de la fen\^etre au-dessus d'elle,
188  et un mini-tampon/zone d'\'echo sur la derni\`ere ligne.
189\askip
190\key{C-x C-c} quitte Emacs
191\key{C-x C-f} \'edite une fichier~; cette commande utilise le
192mini-tampon pour lire le nom du fichier~; utilisez-la pour cr\'eer de
193nouveaux fichiers en entrant le nom du fichier \`a cr\'eer
194\key{C-x C-s} sauve le fichier
195\key{C-x k} supprime un tampon
196\key{C-g} dans la plupart des contextes~: annule, stoppe, avorte une
197commande en cours d'ex\'ecution ou de saisie
198\key{C-x u} annule
199
200\section{D\'eplacements}
201
202\key{C-l} place la ligne courante au centre de la fen\^etre
203\key{C-x b} bascule dans un autre tampon
204\key{M-<} va au d\'ebut du tampon
205\key{M->} va \`a la fin du tampon
206\key{M-x goto-line} va \`a la ligne indiqu\'ee
207
208\section{Fen\^etres multiples}
209
210\key{C-x 0} \^ote la fen\^etre courante de l'affichage
211\key{C-x 1} ne conserve que la fen\^etre active
212\key{C-x 2} divise la fen\^etre dans le sens de la hauteur
213\key{C-x 3} divise la fen\^etre dans le sens de la largeur
214\key{C-x o} va dans une autre fen\^etre
215
216\section{R\'egions}
217
218Emacs d\'efinit une 'r\'egion' comme l'espace entre la {\it marque\/} et
219le {\it point}. On positionne une marque avec \kbd{C-{\it espace}}.
220Le point est la position courante du curseur.
221\askip
222\key{M-h} marque le paragraphe entier
223\key{C-x h} marque le tampon entier
224
225\section{Suppression et copie}
226
227\key{C-w} supprime la r\'egion
228\key{M-w} copie la r\'egion dans le 'kill-ring'
229\key{C-k} supprime du curseur jusqu'\`a la fin de la ligne
230\key{M-DEL} supprime le mot
231\key{C-y} restaure la derni\`ere suppression (la combinaison \kbd{C-w
232  C-y} sert \`a se d\'eplacer dans le texte)
233\key{M-y} remplace la derni\`ere restauration avec la suppression pr\'ec\'edente
234
235\section{Recherche}
236
237\key{C-s} recherche une cha\^\i{}ne
238\key{C-r} recherche une cha\^\i{}ne vers l'arri\`ere
239\key{RET} quitte la recherche
240\key{M-C-s} recherche par expression rationnelle
241\key{M-C-r} recherche par expression rationnelle vers l'arri\`ere
242\askip
243R\'ep\'etez \kbd{C-s} ou \kbd{C-r} pour renouveler une recherche dans une
244des deux directions.
245
246\section{Marqueurs}
247
248Les fichiers de tableaux de marqueurs enregistrent les emplacements des
249d\'efinitions de fonctions ou de proc\'edures, des variables globales, des
250types de donn\'ees et de tout ce qui peut \^etre pratique. Pour cr\'eer un
251tel fichier, tapez `{\tt etags} {\it fichier\_entr\'ee}' \`a l'invite du shell.
252\askip
253\key{M-.} trouve une d\'efinition
254\key{M-*} revient o\`u \kbd{M-.} a \'et\'e appel\'e pour la derni\`ere fois
255\mkey{M-x tags-query-replace} lance query-replace sur tous les
256fichiers enregistr\'es dans le tableau des marqueurs
257\key{M-,} continue la derni\`ere recherche de marqueurs ou le dernier
258query-replace
259
260\section{Compilation}
261
262\key{M-x compile} compile le code situ\'e dans la fen\^etre active
263\key{C-c C-c} va \`a l'erreur de compilation suivante, lorsque l'on est
264dans la fen\^etre de compilation, ou
265\key{C-x `} lorsque l'on est dans la fen\^etre du code source
266
267\section{Dired, l'\'editeur de r\'epertoires}
268
269\key{C-x d}  appelle Dired
270\key{d} marque ce fichier pour une suppression
271\key{\~{}} marque tous les fichiers de sauvegarde pour leur suppression
272\key{u} supprime la marque de suppression
273\key{x} supprime les fichiers marqu\'es pour suppression
274\key{C} copie le fichier
275\key{g} met \`a jour le tampon de Dired
276\key{f} visite le fichier d\'ecrit sur la ligne courante
277\key{s} bascule entre ordre alphab\'etique et ordre date/heure
278
279\section{Lecture et envoi de courrier}
280
281\key{M-x rmail} d\'emarre la lecture du courrier
282\key{q} quitte la lecture du courrier
283\key{h} montre les ent\^etes
284\key{d} marque le message courant pour suppression
285\key{x} supprime tous les messages marqu\'es pour suppression
286
287\key{C-x m} d\'ebute la composition d'un message
288\key{C-c C-c} envoie le message et bascule dans un autre tampon
289\key{C-c C-f C-c} va \`a l'ent\^ete `Cc', en cr\'ee un s'il n'existe pas
290
291\section{Divers}
292
293\key{M-q} formate le paragraphe
294\key{M-/} expanse dynamiquement le mot pr\'ec\'edent
295\key{C-z} iconifie (suspend) Emacs lorsqu'il s'ex\'ecute sous X ou
296  sous un shell, respectivement
297\mkey{M-x revert-buffer} remplace le texte en cours d'\'edition par le
298texte du fichier sur disque
299
300\section{Remplacement interactif}
301
302\key{M-\%} cherche et remplace interactivement
303\key{M-C-\%} utilise les expressions rationnelles
304\askip
305Les r\'eponses correctes dans le mode query-replace sont :
306\askip
307\key{SPC} remplace celui-ci, passe au suivant
308\key{,} remplace ce celui-ci, pas de d\'eplacement
309\key{DEL} passe au suivant sans remplacer celui-ci
310\key{!} remplace toutes les occurrences suivantes
311\key{\^{}} revient \`a l'occurrence pr\'ec\'edente
312\key{RET} quitte query-replace
313\key{C-r} entre en \'edition r\'ecursive (\kbd{M-C-c} pour en sortir)
314
315\section{Expressions rationnelles}
316
317\key{. {\rm(point)}} n'importe quel caract\`ere unique, sauf la fin de ligne
318\key{*} z\'ero r\'ep\'etition ou plus
319\key{+} une r\'ep\'etition ou plus
320\key{?} z\'ero ou une r\'ep\'etition
321\key{[$\ldots$]} repr\'esente une classe de caract\`eres
322\key{[\^{}$\ldots$]} compl\'emente la classe
323
324\key{\\{\it c}} prot\`ege les caract\`eres qui, sinon, auraient une
325  signification sp\'eciale dans les expressions rationnelles.
326
327\key{$\ldots$\\|$\ldots$\\|$\ldots$} correspond \`a une
328alternative (``ou'') .
329\key{\\( $\ldots$ \\)} groupe une suite d'\'el\'ements de motif pour
330former un \'el\'ement unique.
331\key{\\{\it n}} le m\^eme texte que le {\it n\/}i\`eme groupe.
332
333\key{\^{}} correspond au d\'ebut de ligne
334\key{\$} correspond \`a la fin de ligne
335
336\key{\\w} correspond \`a un caract\`ere de mot
337\key{\\W} correspond \`a ce qui n'est pas un caract\`ere mot
338\key{\\<} correspond au d\'ebut d'un mot
339\key{\\>} correspond \`a la fin d'un mot
340\key{\\b} correspond \`a une coupure de mot
341\key{\\B} correspond \`a ce qui n'est pas une une coupure de mot
342
343\section{Registres}
344
345\key{C-x r s} sauve la r\'egion dans un registre
346\key{C-x r i} ins\`ere le contenu d'un registre dans le tampon
347
348\key{C-x r SPC} sauve la valeur du point dans un registre
349\key{C-x r j} va au point sauvegard\'e dans un registre
350
351\section{Rectangles}
352
353\key{C-x r r} copie le rectangle dans un registre
354\key{C-x r k} supprime le rectangle
355\key{C-x r y} restaure le rectangle
356\key{C-x r t} pr\'efixe chaque ligne d'une cha\^\i{}ne
357
358\key{C-x r o} ouvre un rectangle en d\'ecalant le texte vers la droite
359\key{C-x r c} vide le rectangle
360
361\section{Shells}
362
363\key{M-x shell} lance un shell dans Emacs
364\key{M-!} ex\'ecute une commande dans un shell
365\key{M-|} lance une commande shell sur la r\'egion
366\key{C-u M-|} filtre la r\'egion via une commande shell
367
368\section{V\'erification orthographique}
369
370\key{M-\$} v\'erifie l'orthographe du mot sous le curseur
371\mkey{M-x ispell-region} v\'erifie l'orthographe de tous les mots de la r\'egion
372\mkey{M-x ispell-buffer} v\'erifie l'orthographe de tout le tampon
373
374\section{Jeux de caract\`eres internationaux}
375
376\key{C-x RET C-\\} s\'electionne et active une m\'ethode d'entr\'ee pour le
377  tampon courant
378\key{C-\\} active ou d\'esactive la m\'ethode d'entr\'ee
379\mkey{M-x list-input-methods} affiche toutes les m\'ethodes d'entr\'ee
380\mkey{M-x set-language-environment} pr\'ecise la langue principale
381
382\key{C-x RET c} fixe le syst\`eme de codage pour la commande suivante
383\mkey{M-x find-file-literally} visite un fichier sans aucune conversion
384
385\mkey{M-x list-coding-systems} affiche tous les syst\`emes de codage
386\mkey{M-x prefer-coding-system} choisit le syst\`eme de codage pr\'ef\'er\'e
387
388\section{Macros clavier}
389
390\key{C-x (} lance la d\'efinition d'une macro clavier
391\key{C-x )} termine la d\'efinition d'une macro clavier
392\key{C-x e} ex\'ecute la derni\`ere macro clavier d\'efinie
393\key{C-u C-x (} ajoute \`a la derni\`ere macro clavier
394\mkey{M-x name-last-kbd-macro} donne un nom \`a la derni\`ere macro clavier
395
396\section{Personnalisation simple}
397
398\key{M-x customize} personnalise les variables et les fontes
399
400\section{Obtenir de l'aide}
401
402Emacs effectue pour vous la compl\'etion des commandes. En faisant \kbd{M-x}
403{\it tab\/} ou {\it espace\/}, vous obtiendrez une liste des commandes
404Emacs.
405\askip
406\key{C-h} aide d'Emacs
407\key{C-h t} lance le didacticiel d'Emacs
408\key{C-h i} lance Info, le navigateur de documentations
409\key{C-h a} affiche les commandes correspondant \`a une cha\^\i{}ne (apropos)
410\key{C-h k} affiche la documentation de la fonction appel\'ee par la
411combinaison de touches
412\askip
413Emacs utilise diff\'erents {\it modes}, chacun d'eux personnalisant
414Emacs pour l'\'edition de textes de diff\'erents types. La ligne de mode
415contient entre parenth\`eses le nom des modes en cours.
416\askip
417\key{C-h m} affiche les informations sp\'ecifiques au mode en cours
418
419\copyrightnotice
420
421\bye
422
423% Local variables:
424% compile-command: "pdftex survival"
425% End:
426