aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichaël Cadilhac2007-05-15 01:15:11 +0000
committerMichaël Cadilhac2007-05-15 01:15:11 +0000
commit60f57ebaf9398cac5643eaf6a3c7240bc503da98 (patch)
treedc30d2f7010b5530ef5b66848d9cc89327e62287
parent5c43b3ca954c9a6dfc9e87cf079b2e459ef6e232 (diff)
downloademacs-60f57ebaf9398cac5643eaf6a3c7240bc503da98.tar.gz
emacs-60f57ebaf9398cac5643eaf6a3c7240bc503da98.zip
Rewrite using German layout.
-rw-r--r--etc/fr-refcard.tex538
1 files changed, 256 insertions, 282 deletions
diff --git a/etc/fr-refcard.tex b/etc/fr-refcard.tex
index dcbed8347dc..1e399334b90 100644
--- a/etc/fr-refcard.tex
+++ b/etc/fr-refcard.tex
@@ -66,7 +66,7 @@
66 66
67\def\versionnumber{2.3} 67\def\versionnumber{2.3}
68\def\versionemacs{22} 68\def\versionemacs{22}
69\def\versionyear{2006} % latest update 69\def\versionyear{2007} % latest update
70\def\year{2007} % latest copyright year 70\def\year{2007} % latest copyright year
71 71
72\def\shortcopyrightnotice{\vskip 1ex plus 2 fill 72\def\shortcopyrightnotice{\vskip 1ex plus 2 fill
@@ -79,14 +79,16 @@
79\centerline{v\versionnumber{} pour GNU Emacs version \versionemacs, 79\centerline{v\versionnumber{} pour GNU Emacs version \versionemacs,
80 \versionyear} 80 \versionyear}
81\centerline{conception de Stephen Gildea} 81\centerline{conception de Stephen Gildea}
82\centerline{traduction fran\c{c}aise d'\'Eric Jacoboni} 82\centerline{traduction fran\c{c}aise de Micha\"el Cadilhac}
83% previously: Eric Jacoboni
83 84
84Vous pouvez faire et distribuer des copies de cette carte, pourvu que 85Vous pouvez faire et distribuer des copies de cette carte, pourvu que
85la note de copyright et cette note de permission soient conserv\'ees sur 86la note de copyright et cette note de permission soient conserv\'ees sur
86toutes les copies. 87toutes les copies.
87 88
88Pour les copies du manuel GNU Emacs, \'ecrivez \`a la Free Software 89Pour des copies du manuel GNU Emacs, \'ecrivez \`a la Free Software
89Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. 90Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
9102110-1301 USA.
90 92
91\endgroup} 93\endgroup}
92 94
@@ -121,13 +123,10 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
121\else %2 or 3 columns uses prereduced size 123\else %2 or 3 columns uses prereduced size
122 \hsize 3.2in 124 \hsize 3.2in
123 \vsize 7.95in 125 \vsize 7.95in
124 \if 1\the\letterpaper 126% \hoffset -.75in
125 \vsize 7.95in 127 \hoffset -.49in
126 \else 128% \voffset -.745in
127 \vsize 7.65in 129 \voffset -.84in
128 \fi
129 \hoffset -.75in
130 \voffset -.745in
131 \font\titlefont=cmbx10 \scaledmag2 130 \font\titlefont=cmbx10 \scaledmag2
132 \font\headingfont=cmbx10 \scaledmag1 131 \font\headingfont=cmbx10 \scaledmag1
133 \font\smallfont=cmr6 132 \font\smallfont=cmr6
@@ -146,11 +145,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
146 \def\it{\eightit} 145 \def\it{\eightit}
147 \def\tt{\eighttt} 146 \def\tt{\eighttt}
148 \normalbaselineskip=.8\normalbaselineskip 147 \normalbaselineskip=.8\normalbaselineskip
149 \if 1\the\letterpaper
150 \normalbaselineskip=.8\normalbaselineskip
151 \else
152 \normalbaselineskip=.7\normalbaselineskip
153 \fi
154 \normallineskip=.8\normallineskip 148 \normallineskip=.8\normallineskip
155 \normallineskiplimit=.8\normallineskiplimit 149 \normallineskiplimit=.8\normallineskiplimit
156 \normalbaselines\rm %make definitions take effect 150 \normalbaselines\rm %make definitions take effect
@@ -200,7 +194,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
200\chardef\{=`\{ 194\chardef\{=`\{
201\chardef\}=`\} 195\chardef\}=`\}
202 196
203\hyphenation{mini-buf-fer} 197\hyphenation{mini-tam-pon}
204 198
205\parindent 0pt 199\parindent 0pt
206\parskip 1ex plus .5ex minus .5ex 200\parskip 1ex plus .5ex minus .5ex
@@ -216,8 +210,8 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
216 210
217% section - new major section. Argument is section name. 211% section - new major section. Argument is section name.
218\outer\def\section#1{\par\filbreak 212\outer\def\section#1{\par\filbreak
219 \vskip 2ex plus 2ex minus 2ex {\headingfont #1}\mark{#1}% 213 \vskip 2ex plus 1.5ex minus 2.5ex {\headingfont #1}\mark{#1}%
220 \vskip 1ex plus 1ex minus 1.5ex} 214 \vskip 1.5ex plus 1ex minus 1.5ex}
221 215
222\newdimen\keyindent 216\newdimen\keyindent
223 217
@@ -250,10 +244,9 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
250% \key{description of key}{key-name} 244% \key{description of key}{key-name}
251% prints the description left-justified, and the key-name in a \kbd 245% prints the description left-justified, and the key-name in a \kbd
252% form near the right margin. 246% form near the right margin.
253\def\key#1#2{\leavevmode\hbox to \hsize{\vbox 247\def\key#1#2{\leavevmode\hbox to \hsize{\vtop
254 {\hsize=.75\hsize\rightskip=1em \tolerance=20000 248 {\hsize=.75\hsize\rightskip=1em
255 \raggedright 249 \hskip\keyindent\relax#1}\kbd{#2}\hfil}}
256 \hskip\keyindent\hangindent=1em\strut#1\strut}\kbd{\quad#2}\hss}}
257 250
258\newbox\metaxbox 251\newbox\metaxbox
259\setbox\metaxbox\hbox{\kbd{M-x }} 252\setbox\metaxbox\hbox{\kbd{M-x }}
@@ -265,12 +258,10 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
265% Tries to justify the beginning of the command name at the same place 258% Tries to justify the beginning of the command name at the same place
266% as \key starts the key name. (The "M-x " sticks out to the left.) 259% as \key starts the key name. (The "M-x " sticks out to the left.)
267% Note: was \hsize=.74, but changed to avoid overflow in some places. 260% Note: was \hsize=.74, but changed to avoid overflow in some places.
268\def\metax#1#2{\leavevmode\hbox to \hsize{\vbox 261\def\metax#1#2{\leavevmode\hbox to \hsize{\hbox to .75\hsize
269 {\hsize=.66\hsize\rightskip=1em 262 {\hskip\keyindent\relax#1\hfil}%
270 \raggedright \tolerance=20000 263 \hskip -\metaxwidth minus 1fil
271 \hskip\keyindent\hangindent=1em\strut#1\strut\par}% 264 \kbd{#2}\hfil}}
272 %\hskip-\metaxwidth minus 1fil
273 \kbd{#2}\hss}}
274 265
275% threecol - like "key" but with two key names. 266% threecol - like "key" but with two key names.
276% for example, one for doing the action backward, and one for forward. 267% for example, one for doing the action backward, and one for forward.
@@ -284,395 +275,378 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
284 275
285\centerline{(pour la version \versionemacs)} 276\centerline{(pour la version \versionemacs)}
286 277
287\section{Lancement d'Emacs} 278\section{Lancer Emacs}
288
289Pour lancer GNU Emacs \versionemacs, il suffit de taper son nom : \kbd{emacs}
290 279
291Pour charger un fichier \`a \'editer, voir Fichiers, ci-dessous. 280Pour lancer GNU Emacs \versionemacs, tapez juste son nom : \kbd{emacs}.
292 281
293\section{Quitter Emacs} 282\section{Quitter Emacs}
294 283
295\key{suspend Emacs (ou l'iconifie sous X)}{C-z} 284\key{Suspendre Emacs (ou l'iconifier sous X)}{C-z}
296\key{quitter d\'efinitivement Emacs}{C-x C-c} 285\key{Quitter d\'efinitivement Emacs}{C-x C-c}
297 286
298\section{Fichiers} 287\section{Fichiers}
299 288
300\key{{\bf lire} un fichier dans Emacs}{C-x C-f} 289\key{{\bf Lire} un fichier}{C-x C-f}
301\key{{\bf sauvegarder} un fichier sur disque}{C-x C-s} 290\key{{\bf Sauvegarder} un fichier}{C-x C-s}
302\key{sauvegarder {\bf tous} les fichiers}{C-x s} 291\key{Sauvegarder {\bf tous} les fichiers}{C-x s}
303\key{{\bf ins\'erer} le contenu d'un autre fichier dans ce tampon}{C-x i} 292\key{{\bf Ins\'erer} un fichier sous le point (curseur)}{C-x i}
304\key{remplacer ce fichier par le fichier voulu}{C-x C-v} 293\key{Remplacer le fichier par un autre fichier}{C-x C-v}
305\key{\'ecrire le tampon dans un fichier donn\'e}{C-x C-w} 294\key{Sauvegarder sous un autre nom de fichier}{C-x C-w}
306\key{bascule du mode lecture-seule du tampon}{C-x C-q} 295\key{Basculer en mode lecture seule}{C-x C-q}
307 296
308\section{Obtenir de l'aide} 297\section{Obtenir de l'aide}
309 298
310Le syst\`eme d'aide est simple. Faites \kbd{C-h} (ou \kbd{F1}) et suivez 299Le syst\`eme d'aide est simple. Faites \kbd{C-h} (ou \kbd{F1}) et
311les instructions. Si vous d\'ebutez, faites \kbd{C-h t} pour suivre un 300suivez les instructions. Si vous d\'ebutez, faites \kbd{C-h t} pour un
312{\bf didacticiel}. 301{\bf didacticiel}.
313 302
314\key{supprimer la fen\^etre d'aide}{C-x 1} 303\key{Supprimer la fen\^etre d'aide}{C-x 1}
315\key{faire d\'efiler la fen\^etre d'aide}{C-M-v} 304\key{Faire d\'efiler la fen\^etre d'aide}{C-M-v}
316 305
317\key{apropos : montrer les commandes contenant une certaine cha\^\i{}ne}{C-h a} 306\key{Rechercher des commandes selon une cha\^\i{}ne}{C-h a}
318\key{d\'ecrire la fonction lanc\'ee par une touche}{C-h k} 307\key{D\'ecrire la fonction associ\'ee \`a une touche}{C-h k}
319\key{d\'ecrire une fonction}{C-h f} 308\key{D\'ecrire une fonction}{C-h f}
320\key{obtenir des informations sp\'ecifiques au mode}{C-h m} 309\key{Obtenir des informations relatives au mode}{C-h m}
321 310
322\section{R\'ecup\'eration des erreurs} 311\section{R\'ecup\'eration sur erreurs}
323 312
324\key{{\bf avorter} une commande partiellement tap\'ee ou ex\'ecut\'ee}{C-g} 313\key{{\bf Abandonner} une commande}{C-g}
325\metax{{\bf r\'ecup\'erer} les fichier perdus par un crash du syst\`eme}{M-x recover-session} 314\metax{{\bf R\'ecup\'erer} les fichiers apr\`es un crash}{M-x recover-session}
326\metax{{\bf annuler} une modification non souhait\'ee}{C-x u, C-_ {\rm ou} C-/} 315\metax{{\bf Annuler} une modification}{C-x u, C-_ {\rm ou} C-/}
327\metax{restaurer un tampon avec son contenu initial}{M-x revert-buffer} 316\metax{Annuler toutes les modifications}{M-x revert-buffer}
328\key{r\'eafficher un \'ecran perturb\'e}{C-l} 317\key{R\'eafficher un \'ecran perturb\'e}{C-l}
329
330\shortcopyrightnotice
331 318
332\section{Recherche incr\'ementale} 319\section{Recherche incr\'ementale}
333 320
334\key{rechercher vers l'avant}{C-s} 321\key{Rechercher en avant}{C-s}
335\key{rechercher vers l'arri\`ere}{C-r} 322\key{Rechercher en arri\`ere}{C-r}
336\key{rechercher vers l'avant par expression rationnelle}{C-M-s} 323\key{Rechercher en avant (expression rationnelle)}{C-M-s}
337\key{rechercher vers l'arri\`ere par expression rationnelle}{C-M-r} 324\key{Rechercher en arri\`ere (expression rationnelle)}{C-M-r}
338 325
339\key{s\'electionner la cha\^\i{}ne de recherche pr\'ec\'edente}{M-p} 326\key{Utiliser la cha\^\i{}ne de recherche pr\'ec\'edente}{M-p}
340\key{s\'electionner la cha\^\i{}ne de recherche suivante}{M-n} 327\key{Utiliser la cha\^\i{}ne de recherche suivante}{M-n}
341\key{sortir de la recherche incr\'ementale}{RET} 328\key{Quitter la recherche incr\'ementale}{RET}
342\key{annuler l'effet du dernier caract\`ere}{DEL} 329\key{Annuler l'effet du dernier caract\`ere}{DEL}
343\key{annuler la recherche en cours}{C-g} 330\key{Annuler la recherche en cours}{C-g}
344 331
345Refaites \kbd{C-s} ou \kbd{C-r} pour r\'ep\'eter la recherche dans une 332Refaites \kbd{C-s} ou \kbd{C-r} pour r\'ep\'eter la recherche dans une
346direction quelconque. 333des directions.
347Si Emacs est encore en train de chercher, \kbd{C-g} n'annule que ce 334En cours de recherche, \kbd{C-g} efface les derniers caract\`eres et
348qui n'a pas \'et\'e fait. 335ne conserve que le pr\'efixe d\'ej\`a trouv\'e.
336
337\shortcopyrightnotice
349 338
350\section{D\'eplacements} 339\section{D\'eplacements}
351 340
352\paralign to \hsize{#\tabskip=10pt plus 1 fil&#\tabskip=0pt&#\cr 341\paralign to \hsize{#\tabskip=10pt plus 1 fil&#\tabskip=0pt&#\cr
353\threecol{{\bf entit\'e sur laquelle se d\'eplacer}}{{\bf en arri\`ere}}{{\bf en avant}} 342\threecol{{\bf Objet sur lequel se d\'eplacer}}{{\bf En
354\threecol{caract\`ere}{C-b}{C-f} 343 arri\`ere}}{{\bf En avant}}
355\threecol{mot}{M-b}{M-f} 344\threecol{Caract\`ere}{C-b}{C-f}
356\threecol{ligne}{C-p}{C-n} 345\threecol{Mot}{M-b}{M-f}
357\threecol{aller au d\'ebut (ou \`a la fin) de la ligne}{C-a}{C-e} 346\threecol{Ligne}{C-p}{C-n}
358\threecol{phrase}{M-a}{M-e} 347\threecol{Aller en d\'ebut/fin de la ligne}{C-a}{C-e}
359\threecol{paragraphe}{M-\{}{M-\}} 348\threecol{Phrase}{M-a}{M-e}
360\threecol{page}{C-x [}{C-x ]} 349\threecol{Paragraphe}{M-\{}{M-\}}
361\threecol{s-expression}{C-M-b}{C-M-f} 350\threecol{Page}{C-x [}{C-x ]}
362\threecol{fonction}{C-M-a}{C-M-e} 351\threecol{S-expression}{C-M-b}{C-M-f}
363\threecol{aller au d\'ebut (ou \`a la fin) du tampon}{M-<}{M->} 352\threecol{Fonction}{C-M-a}{C-M-e}
353\threecol{Aller en d\'ebut/fin du tampon}{M-<}{M->}
364} 354}
365 355
366\key{passer \`a l'\'ecran suivant}{C-v} 356\key{Passer \`a l'\'ecran suivant}{C-v}
367\key{passer \`a l'\'ecran pr\'ec\'edent}{M-v} 357\key{Passer \`a l'\'ecran pr\'ec\'edent}{M-v}
368\key{d\'efiler l'\'ecran vers la droite}{C-x <} 358\key{Faire d\'efiler l'\'ecran vers la gauche}{C-x <}
369\key{d\'efiler l'\'ecran vers la gauche}{C-x >} 359\key{Faire d\'efiler l'\'ecran vers la droite}{C-x >}
370\key{placer la ligne courante au centre de l'\'ecran}{C-u C-l} 360\key{Placer la ligne courante au centre de l'\'ecran}{C-u C-l}
371 361
372\section{D\'etruire et supprimer} 362\section{D\'etruire et supprimer}
373 363
374\paralign to \hsize{#\tabskip=10pt plus 1 fil&#\tabskip=0pt&#\cr 364\paralign to \hsize{#\tabskip=10pt plus 1 fil&#\tabskip=0pt&#\cr
375\threecol{{\bf entit\'e \`a supprimer}}{{\bf en arri\`ere}}{{\bf en avant}} 365\threecol{{\bf Objet \`a supprimer}}{{\bf En arri\`ere}}{{\bf En avant}}
376\threecol{caract\`ere (suppression, pas destruction)}{DEL}{C-d} 366\threecol{Caract\`ere (suppression)}{DEL}{C-d}
377\threecol{mot}{M-DEL}{M-d} 367\threecol{Mot}{M-DEL}{M-d}
378\threecol{ligne (jusqu'\`a la fin)}{M-0 C-k}{C-k} 368\threecol{Ligne (jusqu'au d\'ebut/fin)}{M-0 C-k}{C-k}
379\threecol{phrase}{C-x DEL}{M-k} 369\threecol{Phrase}{C-x DEL}{M-k}
380\threecol{s-expression}{M-- C-M-k}{C-M-k} 370\threecol{S-expression}{M-- C-M-k}{C-M-k}
381} 371}
382 372
383\key{d\'etruire une {\bf r\'egion}}{C-w} 373\key{D\'etruire une {\bf r\'egion}}{C-w}
384\key{copier une r\'egion dans le kill ring}{M-w} 374\key{Copier une r\'egion dans le {\it kill ring}}{M-w}
385\key{d\'etruire jusqu'\`a l'occurrence suivante de {\it car}}{M-z {\it car}} 375\key{D\'etruire jusqu'\`a l'occurrence suivante de {\it car}}{M-z {\it car}}
386 376
387\key{r\'ecup\'erer la derni\`ere chose d\'etruite}{C-y} 377\key{R\'ecup\'erer la derni\`ere r\'egion d\'etruite}{C-y}
388\key{remplacer la derni\`ere r\'ecup\'eration par ce qui a \'et\'e d\'etruit avant}{M-y} 378\key{R\'ecup\'erer la r\'egion d\'etruite pr\'ec\'edente}{M-y}
389 379
390\section{Marquer} 380\section{Marquer}
391 381
392\key{placer la marque ici}{C-@ {\rm ou} C-SPC} 382\key{Placer la marque au point}{C-@ {\rm ou} C-SPC}
393\key{\'echanger le point et la marque}{C-x C-x} 383\key{\'Echanger le point et la marque}{C-x C-x}
394 384
395\key{placer la marque {\it arg\/} {\bf mots} plus loin}{M-@} 385\key{Placer la marque un {\bf mot} plus loin}{M-@}
396\key{marquer le {\bf paragraphe}}{M-h} 386\key{Marquer le {\bf paragraphe}}{M-h}
397\key{marquer la {\bf page}}{C-x C-p} 387\key{Marquer la {\bf page}}{C-x C-p}
398\key{marquer la {\bf s-expression}}{C-M-@} 388\key{Marquer la {\bf s-expression}}{C-M-@}
399\key{marquer la {\bf fonction}}{C-M-h} 389\key{Marquer la {\bf fonction}}{C-M-h}
400\key{marquer tout le {\bf tampon}}{C-x h} 390\key{Marquer tout le {\bf tampon}}{C-x h}
401 391
402\section{Remplacement interactif} 392\section{Remplacement interactif}
403 393
404\key{remplacer interactivement une cha\^\i{}ne de texte}{M-\%} 394\key{Remplacer une cha\^\i{}ne de texte}{M-\%}
405% query-replace-regexp est liee a C-M-% mais on ne peut pas le 395% query-replace-regexp est liee a C-M-% mais on ne peut pas le
406% taper dans une console. 396% taper dans une console.
407% Hack to prevent overflow. Please someone fix this properly. 397\metax{\hskip 10pt \`a l'aide d'expr. rationnelles}{M-x query-replace-regexp}
408\metax{en utilisant les expressions \hskip 20pt rationnelles}
409{\hskip -30pt M-x query-replace-regexp}
410 398
411Les r\'eponses admises dans le mode de remplacement interactif sont : 399R\'eponses possibles pour chaque occurrence dans le mode de
400remplacement interactif :
412 401
413\key{{\bf remplacer} celle-l\`a, passer \`a la suivante}{SPC} 402\key{{\bf Remplacer} celle-l\`a, passer \`a la suivante}{SPC}
414\key{remplacer celle-l\`a, rester l\`a}{,} 403\key{Remplacer celle-l\`a, rester l\`a}{,}
415\key{{\bf passer} \`a la suivante sans remplacer}{DEL} 404\key{{\bf Passer} \`a la suivante sans remplacer}{DEL}
416\key{remplacer toutes les correspondances suivantes}{!} 405\key{Remplacer toutes les occurrences suivantes}{!}
417\key{{\bf revenir} \`a la correspondance pr\'ec\'edente}{^} 406\key{{\bf Revenir} \`a l'occurrence pr\'ec\'edente}{^}
418\key{{\bf sortir} du remplacement interactif}{RET} 407\key{{\bf Quitter} le remplacement interactif}{RET}
419\key{entrer dans l'\'edition r\'ecursive (\kbd{C-M-c} pour sortir)}{C-r} 408\key{{\bf \'Editer} avant de reprendre (\kbd{C-M-c} : sortir)}{C-r}
420 409
421\section{Fen\^etres multiples} 410\section{Fen\^etres multiples}
422 411
423Lorsqu'il y a deux commandes, la seconde est une commande identique \`a 412Lorsqu'il y a deux commandes, la seconde est celle qui concerne non
424la premi\`ere pour un cadre au lieu d'une fen\^etre. 413pas les fen\^etres mais les cadres.
425 414
426{\setbox0=\hbox{\kbd{0}}\advance\hsize by 0\wd0 415{\setbox0=\hbox{\kbd{0}}\advance\hsize by 0\wd0
427\paralign to \hsize{#\tabskip=10pt plus 1 fil&#\tabskip=0pt&#\cr 416\paralign to \hsize{#\tabskip=10pt plus 1 fil&#\tabskip=0pt&#\cr
428\threecol{supprimer toutes les autres fen\^etres}{C-x 1\ \ \ \ }{C-x 5 1} 417\threecol{Supprimer toutes les autres fen\^etres}{C-x 1\ \ \ \ }{C-x 5 1}
429\threecol{diviser la fen\^etre horizontalement}{C-x 2\ \ \ \ }{C-x 5 2} 418\threecol{Supprimer cette fen\^etre}{C-x 0\ \ \ \ }{C-x 5 0}
430\threecol{supprimer cette fen\^etre}{C-x 0\ \ \ \ }{C-x 5 0} 419\threecol{Diviser la fen\^etre horizontalement}{C-x 2\ \ \ \ }{C-x 5 2}
431}} 420}}
432\key{diviser la fen\^etre verticalement}{C-x 3} 421\key{Diviser la fen\^etre verticalement}{C-x 3}
433 422
434\key{faire d\'efiler l'autre fen\^etre}{C-M-v} 423\key{Faire d\'efiler l'autre fen\^etre}{C-M-v}
435 424
436%% tabskip reduced from 10 to 3pt to fit on letterpaper. 425%% tabskip reduced from 10 to 3pt to fit on letterpaper.
437{\setbox0=\hbox{\kbd{0}}\advance\hsize by 2\wd0 426{\setbox0=\hbox{\kbd{0}}\advance\hsize by 2\wd0
438\paralign to \hsize{#\tabskip=3pt plus 1 fil&#\tabskip=0pt&#\cr 427\paralign to \hsize{#\tabskip=3pt plus 1 fil&#\tabskip=0pt&#\cr
439\threecol{placer le curseur dans une autre fen\^etre}{C-x o}{C-x 5 o} 428\threecol{S\'electionner une autre fen\^etre}{C-x o}{C-x 5 o}
440 429
441%% Hack in a line break to avoid overflow. 430\threecol{Choisir un tampon (autre fen\^etre)}{C-x 4 b}{C-x 5 b}
442\threecol{\raggedright s\'electionner le tampon dans\cr 431\threecol{Afficher un tampon (autre fen\^etre)}{C-x 4 C-o}{C-x 5 C-o}
443\hskip 10pt l'autre fen\^etre}{C-x 4 b}{C-x 5 b} 432\threecol{Lire un fichier (autre fen\^etre)}{C-x 4 f}{C-x 5 f}
444\threecol{afficher le tampon dans l'autre fen\^etre}{C-x 4 C-o}{C-x 5 C-o} 433\threecol{\hskip 10pt en lecture seule}{C-x 4 r}{C-x 5 r}
445\threecol{charger un fichier dans l'autre fen\^etre}{C-x 4 f}{C-x 5 f} 434\threecol{Lancer Dired (autre fen\^etre)}{C-x 4 d}{C-x 5 d}
446%% Hack in a line break to avoid overflow. 435\threecol{Trouver un tag (autre fen\^etre)}{C-x 4 .}{C-x 5 .}
447\threecol{\raggedright charger un fichier en lecture seule\cr
448\hskip 10pt dans l'autre fen\^etre}{C-x 4 r}{C-x 5 r}
449\threecol{lancer Dired dans l'autre fen\^etre}{C-x 4 d}{C-x 5 d}
450\threecol{trouver un tag dans l'autre fen\^etre}{C-x 4 .}{C-x 5 .}
451}} 436}}
452 437
453\key{agrandir la fen\^etre}{C-x ^} 438\key{Agrandir la fen\^etre verticalement}{C-x ^}
454\key{rapetisser la fen\^etre}{C-x \{} 439\key{R\'eduire la fen\^etre horizontalement}{C-x \{}
455\key{\'elargir la fen\^etre}{C-x \}} 440\key{Agrandir la fen\^etre horizontalement}{C-x \}}
456 441
457\section{Formater} 442\section{Formater}
458 443
459\key{indenter la {\bf ligne} courante (d\'epend du mode)}{TAB} 444\key{Indenter la {\bf ligne} courante (selon le mode)}{TAB}
460\key{indenter la {\bf r\'egion} courante (d\'epend du mode)}{C-M-\\} 445\key{Indenter la {\bf r\'egion} courante (selon le mode)}{C-M-\\}
461\key{indenter la {\bf s-expression} courante (d\'epend du mode)}{C-M-q} 446\key{Indenter la {\bf s-expr.} courante (selon le mode)}{C-M-q}
462\key{indenter la r\'egion sur {\it arg\/} colonnes}{C-x TAB} 447\key{Indenter la r\'egion sur une colonne}{C-x TAB}
448\key{Ins\'erer un retour \`a la ligne apr\`es le point}{C-o}
449\key{D\'eplacer le reste de la ligne vers le bas}{C-M-o}
450\key{Supprimer les lignes vierges autour du point}{C-x C-o}
451\key{Joindre \`a la ligne pr\'ec\'edente (suiv. avec {\it arg\/})}{M-^}
452\key{Supprimer tous les espaces autour du point}{M-\\}
453\key{Mettre exactement une espace au point}{M-SPC}
463 454
464\key{ins\'erer un newline apr\`es le point}{C-o} 455\key{Formater le paragraphe}{M-q}
465\key{d\'eplacer le reste de la ligne vers le bas}{C-M-o} 456\key{Placer la marge droite \`a {\it arg\/} colonnes}{C-u {\it arg\/} C-x f}
466\key{supprimer les lignes blanches autour du point}{C-x C-o} 457\key{D\'efinir le pr\'efixe des lignes}{C-x .}
467\key{joindre la ligne \`a la pr\'ec\'edente (\`a la suivante avec arg)}{M-^}
468\key{supprimer tous les espaces autour du point}{M-\\}
469\key{mettre exactement un espace \`a l'emplacement du point}{M-SPC}
470 458
471\key{remplir le paragraphe}{M-q} 459\key{D\'efinir la fonte}{M-o}
472\key{placer la marge droite}{C-x f}
473\key{d\'efinir le pr\'efixe par lequel commencera chaque ligne}{C-x .}
474
475\key{d\'efinir la fonte}{M-o}
476 460
477\section{Modifier la casse} 461\section{Modifier la casse}
478 462
479\key{mettre le mot en majuscules}{M-u} 463\key{Mettre le mot en capitales}{M-u}
480\key{mettre le mot en minuscules}{M-l} 464\key{Mettre le mot en minuscules}{M-l}
481\key{mettre le mot en capitales}{M-c} 465\key{Mettre une majuscule au mot}{M-c}
482 466
483\key{mettre la r\'egion en majuscules}{C-x C-u} 467\key{Mettre la r\'egion en capitales}{C-x C-u}
484\key{mettre la r\'egion en minuscules}{C-x C-l} 468\key{Mettre la r\'egion en minuscules}{C-x C-l}
485 469
486\section{Le mini-tampon} 470\section{Le mini-tampon}
487 471
488Les touches suivantes sont utilisables dans le mini-tampon : 472Dans le mini-tampon :
489 473
490\key{compl\'eter autant que possible}{TAB} 474\key{Compl\'eter autant que possible}{TAB}
491\key{compl\'eter un mot}{SPC} 475\key{Compl\'eter un mot}{SPC}
492\key{compl\'eter et ex\'ecuter}{RET} 476\key{Compl\'eter et ex\'ecuter}{RET}
493\key{montrer les compl\'etions possibles}{?} 477\key{Montrer les compl\`etements possibles}{?}
494\key{rechercher l'entr\'ee pr\'ec\'edente du mini-tampon}{M-p} 478\key{Utiliser l'entr\'ee pr\'ec\'edente du mini-tampon}{M-p}
495\key{rechercher l'entr\'ee suivante du mini-tampon ou le d\'efaut}{M-n} 479\key{Utiliser l'entr\'ee suivante du mini-tampon}{M-n}
496\key{rechercher \`a rebours par expr. rationnelle dans l'historique}{M-r} 480\key{Rechercher en arri\`ere dans l'historique}{M-r}
497\key{rechercher vers l'avant par expr. rationnelle dans l'historique}{M-s} 481\key{Rechercher en avant dans l'historique}{M-s}
498\key{annuler la commande}{C-g} 482\key{Quitter en annulant la commande}{C-g}
499 483
500Faites \kbd{C-x ESC ESC} pour \'editer et r\'ep\'eter la derni\`ere commande 484Faites \kbd{C-x ESC ESC} pour \'editer et r\'ep\'eter la derni\`ere
501ayant utilis\'e le minitampon. Faites \kbd{F10} pour activer la barre de 485commande ayant utilis\'e le mini-tampon. Faites \kbd{F10} pour
502menu utilisant le minitampon. 486utiliser la barre de menu sur un terminal en utilisant le mini-tampon.
503 487
504\newcolumn 488\newcolumn
505\title{Carte de r\'ef\'erence de GNU Emacs} 489\title{Carte de r\'ef\'erence de GNU Emacs}
506 490
507\section{Tampons} 491\section{Tampons}
508 492
509\key{s\'electionner un autre tampon}{C-x b} 493\key{Choisir un autre tampon}{C-x b}
510\key{\'enum\'erer tous les tampons}{C-x C-b} 494\key{Lister tous les tampons}{C-x C-b}
511\key{supprimer un tampon}{C-x k} 495\key{Supprimer un tampon}{C-x k}
512 496
513\section{Transposer} 497\section{Transposer}
514 498
515\key{transposer des {\bf caract\`eres}}{C-t} 499\key{Transposer des {\bf caract\`eres}}{C-t}
516\key{transposer des {\bf mots}}{M-t} 500\key{Transposer des {\bf mots}}{M-t}
517\key{transposer des {\bf lignes}}{C-x C-t} 501\key{Transposer des {\bf lignes}}{C-x C-t}
518\key{transposer des {\bf s-expressions}}{C-M-t} 502\key{Transposer des {\bf s-expressions}}{C-M-t}
519 503
520\section{V\'erifier l'orthographe} 504\section{V\'erifier l'orthographe}
521 505
522\key{v\'erifier l'orthographe du mot courant}{M-\$} 506\key{V\'erifier l'orthographe du mot courant}{M-\$}
523\metax{v\'erifier l'orthographe de tous les mots d'une r\'egion}{M-x ispell-region} 507\metax{V\'erifier l'orthographe d'une r\'egion}{M-x ispell-region}
524\metax{v\'erifier l'orthographe de tout le tampon}{M-x ispell-buffer} 508\metax{V\'erifier l'orthographe de tout le tampon}{M-x ispell-buffer}
525 509
526\section{Tags} 510\section{Tags}
527 511
528\key{trouver un tag (une d\'efinition)}{M-.} 512\key{Trouver un tag (une d\'efinition)}{M-.}
529\key{trouver l'occurrence suivante du tag}{C-u M-.} 513\key{Passer \`a l'occurrence suivante du tag}{C-u M-.}
530\metax{sp\'ecifier un nouveau fichier de tags}{M-x visit-tags-table} 514\metax{Sp\'ecifier un autre fichier de tags}{M-x visit-tags-table}
515
516\metax{Rechercher dans tous les fichiers des tags}{M-x tags-search}
531 517
532\metax{rechercher par expr. rationnelles dans tous les fichiers du 518\metax{Remplacer dans tous les fichiers}{M-x tags-query-replace}
533 tableau de tags}{M-x tags-search} 519\key{Continuer la recherche ou le remplacement}{M-,}
534%% Overflow hack.
535\metax{lancer un remplacement interactif sur tous les fichiers}%
536{\hskip -9pt M-x tags-query-replace}
537\key{continuer la derni\`ere recherche de tags ou le remplacement interactif}{M-,}
538 520
539\section{Shells} 521\section{Shell}
540 522
541\key{ex\'ecuter une commande shell}{M-!} 523\key{Ex\'ecuter une commande shell}{M-!}
542\key{lancer une commande shell sur la r\'egion}{M-|} 524\key{Lancer une commande shell sur la r\'egion}{M-|}
543\key{filtrer la r\'egion avec une commande shell}{C-u M-|} 525\key{Filtrer la r\'egion avec une commande shell}{C-u M-|}
544\key{lancer un shell dans la fen\^etre \kbd{*shell*}}{M-x shell} 526\key{Lancer un shell dans la fen\^etre {\tt *shell*}}{M-x shell}
545 527
546\section{Rectangles} 528\section{Rectangles}
547 529
548\key{copier le rectangle dans le registre}{C-x r r} 530\key{Copier le rectangle dans un registre}{C-x r r}
549\key{d\'etruire le rectangle}{C-x r k} 531\key{D\'etruire le rectangle}{C-x r k}
550\key{r\'ecup\'erer le rectangle}{C-x r y} 532\key{R\'ecup\'erer le rectangle}{C-x r y}
551\key{ouvrir le rectangle, en d\'ecalant le texte \`a droite}{C-x r o} 533\key{D\'ecaler le rectangle \`a droite}{C-x r o}
552\key{vider le rectangle}{C-x r c} 534\key{Vider le rectangle}{C-x r c}
553\key{pr\'efixer chaque ligne avec une cha\^\i{}ne}{C-x r t} 535\key{Pr\'efixer chaque ligne du rectangle}{C-x r t}
554 536
555\section{Abr\'eviations} 537\section{Abr\'eviations}
556 538
557\key{ajouter une abr\'eviation globale}{C-x a g} 539\key{Ajouter une abr\'eviation globale}{C-x a g}
558\key{ajouter une abr\'eviation locale au mode}{C-x a l} 540\key{Ajouter une abr\'eviation locale au mode}{C-x a l}
559\key{ajouter une expansion globale pour cette abr\'eviation}{C-x a i g} 541\key{Ajouter une expansion globale}{C-x a i g}
560\key{ajouter une expansion locale au mode pour cette abr\'eviation}{C-x a i l} 542\key{Ajouter une expansion locale au mode}{C-x a i l}
561\key{faire une expansion explicite de cette abr\'eviation}{C-x a e} 543\key{Faire une expansion explicite de l'abr\'eviation}{C-x a e}
562 544
563\key{faire une expansion dynamique du mot pr\'ec\'edent}{M-/} 545\key{Faire une expansion du mot pr\'ec\'edent}{M-/}
564 546
565\section{Expressions rationnelles} 547\section{Expressions rationnelles}
566 548
567\key{un unique caract\`ere quelconque, sauf une fin de ligne}{. {\rm(point)}} 549\key{Un caract\`ere quelconque, sauf fin de ligne}{. {\rm(point)}}
568\key{z\'ero r\'ep\'etition ou plus}{*} 550\key{Z\'ero r\'ep\'etition ou plus}{*}
569\key{une r\'ep\'etition ou plus}{+} 551\key{Une r\'ep\'etition ou plus}{+}
570\key{z\'ero ou une r\'ep\'etition}{?} 552\key{Z\'ero ou une r\'ep\'etition}{?}
571\key{caract\`ere sp\'ecial pour quoter l'expression rationnelle {\it c\/}}{\\{\it c}} 553\key{\'Echapper le caract\`ere sp\'ecial {\it c\/}}{\\{\it c}}
572\key{alternative (``ou'')}{\\|} 554\key{Alternative (``ou'' non exclusif)}{\\|}
573\key{regroupement}{\\( {\rm$\ldots$} \\)} 555\key{Regroupement}{\\( {\rm$\ldots$} \\)}
574\key{le m\^eme texte que dans le {\it n\/}i\`eme groupe}{\\{\it n}} 556\key{Reprendre le texte du {\it n\/}-i\`eme groupement}{\\{\it n}}
575\key{limite de mot}{\\b} 557\key{Limite de mot}{\\b}
576\key{non limite de mot}{\\B} 558\key{Non limite de mot}{\\B}
577 559
578%% tabskip reduced from 10 to 5pt for letterpaper. 560%% tabskip reduced from 10 to 5pt for letterpaper.
579\paralign to \hsize{#\tabskip=5pt plus 1 fil&#\tabskip=0pt&#\cr 561\paralign to \hsize{#\tabskip=5pt plus 1 fil&#\tabskip=0pt&#\cr
580\threecol{{\bf entit\'e}}{{\bf d\'ebut}}{{\bf fin}} 562\threecol{{\bf Objet}}{{\bf D\'ebut}}{{\bf Fin}}
581\threecol{ligne}{^}{\$} 563\threecol{Ligne}{^}{\$}
582\threecol{mot}{\\<}{\\>} 564\threecol{Mot}{\\<}{\\>}
583\threecol{tampon}{\\`}{\\'} 565\threecol{Tampon}{\\`}{\\'}
584 566
585\threecol{{\bf classe de caract\`ere}}{{\bf correspond}} 567\threecol{{\bf Classe de caract\`ere}}{{\bf Correspond}}%
586{{\bf correspond \`a d'autres}} 568{{\bf Compl\'ement}}
587\threecol{ensemble explicite}{[ {\rm$\ldots$} ]}{[^ {\rm$\ldots$} ]} 569\threecol{Ensemble explicite}{[ {\rm$\ldots$} ]}{[^ {\rm$\ldots$} ]}
588\threecol{caract\`ere de mot}{\\w}{\\W} 570\threecol{Caract\`ere de mot}{\\w}{\\W}
589%% Overflow hack. 571\threecol{Caract\`ere avec la syntaxe {\it c}}{\\s{\it c}}{\\S{\it c}}
590\threecol{\raggedright caract\`ere avec la\cr \hskip 5pt syntaxe {\it c}}%
591{\\s{\it c}}{\\S{\it c}}
592} 572}
593 573
594\section{Jeux de caract\`eres internationaux} 574\section{Jeux de caract\`eres internationaux}
595 575
596\key{indiquer la langue principale}{C-x RET l} 576\key{Pr\'eciser la langue principale}{C-x RET l}
597%% Overflow hack. 577\metax{Lister les m\'ethodes de saisie}{M-x list-input-methods}
598\metax{montrer toutes les m\'ethodes de saisie} 578\key{Activer/d\'esactiver la m\'ethode de saisie}{C-\\}
599{\hskip -10pt M-x list-input-methods} 579\key{Choisir le codage pour la commande suivante}{C-x RET c}
600\key{activer ou d\'esactiver la m\'ethode de saisie}{C-\\} 580\metax{Lister les codages}{M-x list-coding-systems}
601\key{choisir le syst\`eme de codage pour la commande suivante}{C-x RET c} 581\metax{Choisir le codage pr\'ef\'er\'e}{M-x prefer-coding-system}
602%% Overflow hack.
603\metax{montrer tous les syst\`emes de codage}%
604{\hskip -10pt M-x list-coding-systems}
605%% Overflow hack.
606\metax{choisir le syst\`eme de codage pr\'ef\'er\'e}%
607{\hskip -10pt M-x prefer-coding-system}
608 582
609\section{Info} 583\section{Info}
610 584
611\key{entrer dans le visualisateur de la documentation Info}{C-h i} 585\key{Lire une documentation Info}{C-h i}
612\key{chercher une fonction ou une variable pr\'ecise dans Info}{C-h S} 586\key{Rechercher une fonction/variable dans Info}{C-h S}
613\beginindentedkeys 587\beginindentedkeys
614 588
615Se d\'eplacer dans un n\oe{}ud : 589Se d\'eplacer dans un n\oe{}ud :
616 590
617\key{une page plus bas}{SPC} 591\key{Page suivante}{SPC}
618\key{une page plus haut}{DEL} 592\key{Page pr\'ec\'edente}{DEL}
619\key{d\'ebut du n\oe{}ud}{. {\rm (point)}} 593\key{D\'ebut du n\oe{}ud}{. {\rm (point)}}
620 594
621Passer de n\oe{}ud en n\oe{}ud : 595Navigation entre n\oe{}uds :
622 596
623\key{n\oe{}ud {\bf suivant}}{n} 597\key{N\oe{}ud {\bf suivant}}{n}
624\key{n\oe{}ud {\bf pr\'ec\'edent}}{p} 598\key{N\oe{}ud {\bf pr\'ec\'edent}}{p}
625\key{aller {\bf plus haut}}{u} 599\key{{\bf Remonter} d'un niveau}{u}
626\key{choisir un sujet de menu par son nom}{m} 600\key{Choisir un sujet du menu par son nom}{m}
627\key{choisir le {\it n\/}i\`eme sujet de menu par son num\'ero (1--9)}{{\it n}} 601\key{Choisir le {\it n\/}-i\`eme sujet (1--9)}{{\it n}}
628\key{suivre une r\'ef\'erence crois\'ee (on revient avec \kbd{l})}{f} 602\key{Suivre une r\'ef\'erence crois\'ee (retour avec \kbd{l})}{f}
629\key{revenir au dernier n\oe{}ud visit\'e}{l} 603\key{Revenir au dernier n\oe{}ud visit\'e}{l}
630\key{revenir au n\oe{}ud du r\'epertoire}{d} 604\key{Aller au sommaire Info}{d}
631\key{aller au n\oe{}ud de plus haut niveau du fichier Info}{t} 605\key{Aller au n\oe{}ud le plus haut du manuel}{t}
632\key{aller sur n'importe quel n\oe{}ud par son nom}{g} 606\key{Aller sur un n\oe{}ud par son nom}{g}
633 607
634Autres : 608Autres :
635 609
636\key{lancer le {\bf didacticiel} Info}{h} 610\key{Aller au {\bf didacticiel} Info}{h}
637\key{chercher un sujet dans l'index}{i} 611\key{Rechercher un sujet dans l'index}{i}
638\key{rechercher les n\oe{}uds avec une expression rationnelle}{s} 612\key{Rechercher un n\oe{}ud par expr. rationnelle}{s}
639\key{{\bf quitter} Info}{q} 613\key{{\bf Quitter} Info}{q}
640 614
641\endindentedkeys 615\endindentedkeys
642 616
643\section{Registres} 617\section{Registres}
644 618
645\key{sauver la r\'egion dans un registre}{C-x r s} 619\key{Sauver la r\'egion dans un registre}{C-x r s}
646\key{ins\'erer le contenu du registre dans le tampon}{C-x r i} 620\key{Ins\'erer le contenu d'un registre}{C-x r i}
647 621
648\key{sauver la valeur du point dans un registre}{C-x r SPC} 622\key{Sauver la valeur du point dans un registre}{C-x r SPC}
649\key{sauter au point sauv\'e dans le registre}{C-x r j} 623\key{Aller au point sauv\'e dans un registre}{C-x r j}
650 624
651\section{Macros clavier} 625\section{Macros clavier}
652 626
653\key{{\bf lancer} la d\'efinition d'une macro clavier}{C-x (} 627\key{{\bf Lancer} la d\'efinition d'une macro clavier}{C-x (}
654\key{{\bf terminer} la d\'efinition d'une macro clavier}{C-x )} 628\key{{\bf Terminer} la d\'efinition d'une macro clavier}{C-x )}
655\key{{\bf ex\'ecuter} la derni\`ere macro clavier d\'efinie}{C-x e} 629\key{{\bf Ex\'ecuter} la derni\`ere macro clavier d\'efinie}{C-x e}
656\key{ajouter \`a la derni\`ere macro clavier}{C-u C-x (} 630\key{Faire un ajout \`a la derni\`ere macro clavier}{C-u C-x (}
657\metax{donner un nom \`a la derni\`ere macro clavier}{M-x name-last-kbd-macro} 631\metax{Nommer la derni\`ere macro clavier}{M-x name-last-kbd-macro}
658\metax{ins\'erer une d\'efinition Lisp dans le tampon}{M-x insert-kbd-macro} 632\metax{En ins\'erer une d\'efinition Lisp}{M-x insert-kbd-macro}
659 633
660\section{Commandes de gestion d'Emacs Lisp} 634\section{Commandes de gestion d'Emacs Lisp}
661 635
662\key{\'evaluer la {\bf s-expression} situ\'ee avant le point}{C-x C-e} 636\key{\'Evaluer la {\bf s-expression} avant le point}{C-x C-e}
663\key{\'evaluer la {\bf defun} courante}{C-M-x} 637\key{\'Evaluer la {\bf defun} courante}{C-M-x}
664\metax{\'evaluer la {\bf r\'egion}}{M-x eval-region} 638\metax{\'Evaluer la {\bf r\'egion}}{M-x eval-region}
665\key{lire et \'evaluer le mini-tampon}{M-:} 639\key{Lire et \'evaluer dans le mini-tampon}{M-:}
666\metax{charger \`a partir du r\'epertoire syst\`eme standard}{M-x load-library} 640\metax{Charger depuis un r\'epertoire standard}{M-x load-library}
667 641
668\section{Personnalisation simple} 642\section{Personnalisation simple}
669 643
670\metax{personnaliser les variables et les fontes}{M-x customize} 644\metax{Personnaliser les variables et les fontes}{M-x customize}
671 645
672% The intended audience here is the person who wants to make simple 646% The intended audience here is the person who wants to make simple
673% customizations and knows Lisp syntax. 647% customizations and knows Lisp syntax.
674 648
675Cr\'eation de liaisons de touches globales en Emacs Lisp (exemples): 649Exemples de d\'efinition globale de touches en Emacs Lisp :
676 650
677\beginexample% 651\beginexample%
678(global-set-key "\\C-cg" 'goto-line) 652(global-set-key "\\C-cg" 'goto-line)
@@ -683,7 +657,8 @@ Cr\'eation de liaisons de touches globales en Emacs Lisp (exemples):
683 657
684\beginexample% 658\beginexample%
685(defun \<nom-commande> (\<args>) 659(defun \<nom-commande> (\<args>)
686 "\<documentation>" (interactive "\<template>") 660 "\<documentation>"
661 (interactive "\<template>")
687 \<body>) 662 \<body>)
688\endexample 663\endexample
689 664
@@ -691,8 +666,7 @@ Exemple :
691 666
692\beginexample% 667\beginexample%
693(defun cette-ligne-en-haut-de-la-fenetre (line) 668(defun cette-ligne-en-haut-de-la-fenetre (line)
694%% Leading space omitted to avoid linebreak and underfull hbox. 669 "Positionne la ligne courante en haut de la fen\^etre.
695"Repositionne la ligne du point en haut de la fenetre.
696Avec ARG, place le point sur la ligne ARG." 670Avec ARG, place le point sur la ligne ARG."
697 (interactive "P") 671 (interactive "P")
698 (recenter (if (null line) 672 (recenter (if (null line)