view etc/refcards/cs-survival.tex @ 110410:f2e111723c3a

Merge changes made in Gnus trunk. Reimplement nnimap, and do tweaks to the rest of the code to support that. * gnus-int.el (gnus-finish-retrieve-group-infos) (gnus-retrieve-group-data-early): New functions. * gnus-range.el (gnus-range-nconcat): New function. * gnus-start.el (gnus-get-unread-articles): Support early retrieval of data. (gnus-read-active-for-groups): Support finishing the early retrieval of data. * gnus-sum.el (gnus-summary-move-article): Pass the move-to group name if the move is internal, so that nnimap can do fast internal moves. * gnus.el (gnus-article-special-mark-lists): Add uid/active tuples, for nnimap usage. * nnimap.el: Rewritten. * nnmail.el (nnmail-inhibit-default-split-group): New internal variable to allow the mail splitting to not return a default group. This is useful for nnimap, which will leave unmatched mail in the inbox. * utf7.el (utf7-encode): Autoload. Implement shell connection. * nnimap.el (nnimap-open-shell-stream): New function. (nnimap-open-connection): Use it. Get the number of lines by using BODYSTRUCTURE. (nnimap-transform-headers): Get the number of lines in each message. (nnimap-retrieve-headers): Query for BODYSTRUCTURE so that we get the number of lines. Not all servers return UIDNEXT. Work past this problem. Remove junk from end of file. Fix typo in "bogus" section. Make capabilties be case-insensitive. Require cl when compiling. Don't bug out if the LIST command doesn't have any parameters. 2010-09-17 Knut Anders Hatlen <kahatlen@gmail.com> (tiny change) * nnimap.el (nnimap-get-groups): Don't bug out if the LIST command doesn't have any parameters. (mm-text-html-renderer): Document gnus-article-html. 2010-09-17 Julien Danjou <julien@danjou.info> (tiny fix) * mm-decode.el (mm-text-html-renderer): Document gnus-article-html. * dgnushack.el: Define netrc-credentials. If the user doesn't have a /etc/services, supply some sensible port defaults. Have `unseen-or-unread' select an unread unseen article first. (nntp-open-server): Return whether the open was successful or not. Throughout all files, replace (save-excursion (set-buffer ...)) with (with-current-buffer ... ). Save result so that it doesn't say "failed" all the time. Add ~/.authinfo to the default, since that's probably most useful for users. Don't use the "finish" method when we're reading from the agent. Add some more nnimap-relevant agent stuff to nnagent.el. * nnimap.el (nnimap-with-process-buffer): Removed. Revert one line that was changed by mistake in the last checkin. (nnimap-open-connection): Don't error out when we can't make a connection nnimap-related changes to avoid bugging out if we can't contact a server. * gnus-start.el (gnus-get-unread-articles): Don't try to scan groups from methods that are denied. * nnimap.el (nnimap-possibly-change-group): Return nil if we can't log in. (nnimap-finish-retrieve-group-infos): Make sure we're not waiting for nothing. * gnus-sum.el (gnus-select-newsgroup): Indent.
author Katsumi Yamaoka <yamaoka@jpl.org>
date Sat, 18 Sep 2010 10:02:19 +0000
parents 8b08de8dc0aa
children 376148b31b5e
line wrap: on
line source

% Title:  GNU Emacs Survival Card

% Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008,
%   2009, 2010  Free Software Foundation, Inc.

% Author: Wlodek Bzyl <matwb@univ.gda.pl>
% Czech translation: Pavel Janík <Pavel@Janik.cz>, March 2001

% This file is part of GNU Emacs.

% GNU Emacs is free software: you can redistribute it and/or modify
% it under the terms of the GNU General Public License as published by
% the Free Software Foundation, either version 3 of the License, or
% (at your option) any later version.

% GNU Emacs is distributed in the hope that it will be useful,
% but WITHOUT ANY WARRANTY; without even the implied warranty of
% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
% GNU General Public License for more details.

% You should have received a copy of the GNU General Public License
% along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.


% See survival.tex.

% Process the file with `csplain' from the `CSTeX' distribution (included
% e.g. in the TeX Live CD).

% User interface is `plain.tex' and macros described below
%
% \title{CARD TITLE}{for version 21}
% \section{NAME}
% optional paragraphs separated with \askip amount of vertical space
% \key{KEY-NAME} description of key or
% \mkey{M-x LONG-LISP-NAME} description of Elisp function
%
% \kbd{ARG} -- argument is typed literally


%**start of header

\def\plainfmtname{plain}
\ifx\fmtname\plainfmtname
\else
  \errmessage{This file requires `plain' format to be typeset correctly}
  \endinput
\fi

% PDF output layout.  0 for A4, 1 for letter (US), a `l' is added for
% a landscape layout.
\input pdflayout.sty
\pdflayout=(0)

% Czech hyphenation rules applied
\chyph

\def\versionemacs{23}           % version of Emacs this is for
\def\year{2010}                 % latest copyright year

\def\copyrightnotice{\penalty-1\vfill
  \vbox{\smallfont\baselineskip=0.8\baselineskip\raggedcenter
    Copyright \copyright\ \year\ Free Software Foundation, Inc.\break
    Pro GNU Emacs \versionemacs\break
    W{\l}odek Bzyl (matwb@univ.gda.pl)\break
    Do češtiny přeložil Pavel Janík (Pavel@Janik.cz)

    Kopie tohoto dokumentu můžete vytvářet a šířit
    za předpokladu, že budou obsahovat tuto poznámku
    o autorských právech.\par}}

\hsize 3.2in
\vsize 7.95in
\font\titlefont=csss10 scaled 1200
\font\headingfont=csss10
\font\smallfont=csr6
\font\smallsy=cmsy6
\font\eightrm=csr8
\font\eightbf=csbx8
\font\eightit=csti8
\font\eighttt=cstt8
\font\eightmi=csmi8
\font\eightsy=cmsy8
\font\eightss=cmss8
\textfont0=\eightrm
\textfont1=\eightmi
\textfont2=\eightsy
\def\rm{\eightrm} \rm
\def\bf{\eightbf}
\def\it{\eightit}
\def\tt{\eighttt}
\def\ss{\eightss}
\baselineskip=0.8\baselineskip

\newdimen\intercolumnskip % horizontal space between columns
\intercolumnskip=0.5in

% The TeXbook, p. 257
\let\lr=L \newbox\leftcolumn
\output={\if L\lr
    \global\setbox\leftcolumn\columnbox \global\let\lr=R
  \else
       \doubleformat \global\let\lr=L\fi}
\def\doubleformat{\shipout\vbox{\makeheadline
    \leftline{\box\leftcolumn\hskip\intercolumnskip\columnbox}
    \makefootline}
  \advancepageno}
\def\columnbox{\leftline{\pagebody}}

\def\newcolumn{\vfil\eject}

\def\bye{\par\vfil\supereject
  \if R\lr \null\vfil\eject\fi
  \end}

\outer\def\title#1#2{{\titlefont\centerline{#1}}\vskip 1ex plus 0.5ex
   \centerline{\ss#2}
   \vskip2\baselineskip}

\outer\def\section#1{\filbreak
  \bskip
  \leftline{\headingfont #1}
  \askip}
\def\bskip{\vskip 2.5ex plus 0.25ex }
\def\askip{\vskip 0.75ex plus 0.25ex}

\newdimen\defwidth \defwidth=0.25\hsize
\def\hang{\hangindent\defwidth}

\def\textindent#1{\noindent\llap{\hbox to \defwidth{\tt#1\hfil}}\ignorespaces}
\def\key{\par\hangafter=0\hang\textindent}

\def\mtextindent#1{\noindent\hbox{\tt#1\quad}\ignorespaces}
\def\mkey{\par\hangafter=1\hang\mtextindent}

\def\kbd#{\bgroup\tt \let\next= }

\newdimen\raggedstretch
\newskip\raggedparfill \raggedparfill=0pt plus 1fil
\def\nohyphens
   {\hyphenpenalty10000\exhyphenpenalty10000\pretolerance10000}
\def\raggedspaces
   {\spaceskip=0.3333em\relax
    \xspaceskip=0.5em\relax}
\def\raggedright
   {\raggedstretch=6em
    \nohyphens
    \rightskip=0pt plus \raggedstretch
    \raggedspaces
    \parfillskip=\raggedparfill
    \relax}
\def\raggedcenter
   {\raggedstretch=6em
    \nohyphens
    \rightskip=0pt plus \raggedstretch
    \leftskip=\rightskip
    \raggedspaces
    \parfillskip=0pt
    \relax}

\chardef\\=`\\

\raggedright
\nopagenumbers
\parindent 0pt
\interlinepenalty=10000
\hoffset -0.2in
%\voffset 0.2in

%**end of header


\title{Karta\ \ pro\ \ přežití\ \ s\ \ GNU\ \ Emacsem}{pro verzi \versionemacs}

V~následujícím textu \kbd{C-z} znamená: stiskněte klávesu `\kbd{z}' a
současně přidržte stisknutou klávesu {\it Ctrl}. \kbd{M-z} znamená, že
současně s klávesou `\kbd{z}' přidržíte klávesu {\it Meta\/} (většinou
označenou {\it Alt\/}) nebo ji stisknete po stisknutí klávesy {\it Esc\/}.


\section{Spuštění Emacsu}

Pro spuštění GNU Emacsu jednoduše napište jeho jméno: \kbd{emacs}.
Emacs rozděluje rámec na několik částí:
  řádek menu,
  buffer s editovaným textem,
  tzv. mode line popisující buffer nad ní
  a minibuffer v poslední řádce.
\askip
\key{C-x C-c} ukončení Emacsu
\key{C-x C-f} editace souboru; tento příkaz využívá minibuffer k přečtení
              jména souboru; tento příkaz použijte i tehdy, chcete-li
              vytvořit nový soubor zadaného jména
\key{C-x C-s} uložit soubor
\key{C-x k} zavřít buffer
\key{C-g} ve většině situací: zastavení aktuálně prováděné činnosti,
              zrušení zadávání příkazu apod.
\key{C-x u} obnovit

\section{Pohyb}

\key{C-l} přesun aktuální řádky do středu okna
\key{C-x b} přepnutí do jiného bufferu
\key{M-<} přesun na začátek bufferu
\key{M->} přesun na konec bufferu
\key{M-x goto-line} přesun na řádek zadaného čísla

\section{Více oken}

\key{C-x 0} odstranění aktuálního okna
\key{C-x 1} aktuální okno se stane jediným oknem
\key{C-x 2} rozdělení okna horizontálně
\key{C-x 3} rozdělení okna vertikálně
\key{C-x o} přesun do jiného okna

\section{Regiony}

Emacs definuje `region' jako prostor mezi {\it značkou\/} a
{\it bodem}. Značka je nastavena pomocí \kbd{C-{\it space}}.
Bod je v místě aktuální pozice kurzoru.
\askip
\key{M-h} označ celý odstavec
\key{C-x h} označ celý buffer

\section{Vyjmutí a kopírování}

\key{C-w} vyjmi region
\key{M-w} zkopíruj region do kill-ringu
\key{C-k} vyjmi text od kurzoru do konce řádku
\key{M-DEL} vyjmi slovo
\key{C-y} vlož zpět poslední vyjmutý text (kombinace kláves \kbd{C-w C-y}
          může být použita pro přesuny textů)
\key{M-y} nahraď poslední vložený text předchozím vyjmutým textem

\section{Vyhledávání}

\key{C-s} hledej řetězec
\key{C-r} hledej řetězec zpět
\key{RET} ukonči hledání
\key{M-C-s} hledej regulární výraz
\key{M-C-r} hledej regulární výraz zpět
\askip
Kombinace \kbd{C-s} nebo \kbd{C-r} můžete použít i k opakování hledání
jiným směrem.

\section{Značky (tags)}

Tabulky značek (tags) zaznamenávají polohu funkcí a procedur, globálních
proměnných, datových typů a dalšího. Pro vytvoření tabulky značek spusťte
příkaz `{\tt etags} {\it vstupní\_soubory}' v příkazovém interpretu.
\askip
\key{M-.} najdi definici
\key{C-u M-.} najdi další výskyt definice
\key{M-*} běž tam, odkud byla volána poslední \kbd{M-.}
\mkey{M-x tags-query-replace} spusť query-replace na všech souborech
zaznamenaných v tabulce značek.
\key{M-,} pokračuj v posledním hledání značky nebo query-replace

\section{Překlady}

\key{M-x compile} přelož kód v aktivním okně
\key{C-c C-c} běž na poslední chybu překladače, v okně překladu
\key{C-x `} v okně se zdrojovým textem

\section{Dired, editor adresářů}

\key{C-x d} spusť Dired
\key{d} označ tento soubor pro smazání
\key{\~{}} označ všechny zálohy ke smazání
\key{u} odstraň všechny značky pro smazání
\key{x} smaž soubory označené pro smazání
\key{C} kopíruj soubor
\key{g} obnov buffer Diredu
\key{f} navštiv soubor v aktuální řádce
\key{s} přepni mezi řazením podle abecedy a data/času

\section{Čtení a posílání pošty}

\key{M-x rmail} začni číst poštu
\key{q} ukonči čtení pošty
\key{h} ukaž hlavičky
\key{d} označ aktuální zprávu ke smazání
\key{x} smaž všechny zprávy označené ke smazání

\key{C-x m} nová zpráva
\key{C-c C-c} pošli zprávu a přepni do jiného bufferu
\key{C-c C-f C-c} přesuň se na hlavičku `CC' a pokud neexistuje, tak ji
vytvoř

\section{Různé}

\key{M-q} zarovnej odstavec
\key{M-/} doplň dynamicky předchozí slovo
\key{C-z} ikonizuj (přeruš) Emacs
\mkey{M-x revert-buffer} nahraď text editovaného souboru tímtéž souborem z disku

\section{Nahrazování}

\key{M-\%} interaktivně hledej a nahrazuj
\key{M-C-\%} za použití regulárních výrazů
\askip
Možné odpovědi v módu hledání jsou
\askip
\key{SPC} nahraď tento výskyt; běž na další
\key{,} nahraď tento výskyt; nechoď dále
\key{DEL} tento výskyt nenahrazuj a běž dál
\key{!} nahraď všechny další výskyty
\key{\^{}} zpět na předchozí výskyt
\key{RET} ukonči query-replace
\key{C-r} začni rekurzivní editaci (\kbd{M-C-c} ji ukončí)

\section{Regulární výrazy}

\key{. {\rm(tečka)}} libovolný znak kromě znaku nového řádku
\key{*} žádné nebo mnoho opakování
\key{+} jedno nebo mnoho opakování
\key{?} žádné nebo jedno opakování
\key{[$\ldots$]} označuje třídu znaků
\key{[\^{}$\ldots$]} neguje třídu znaků

\key{\\{\it c}} uvození znaku, který by měl jinak speciální význam v
regulárním výrazu

\key{$\ldots$\\|$\ldots$\\|$\ldots$} vyhovuje jedné z alternativ (\uv{nebo})
\key{\\( $\ldots$ \\)} seskupení několika vzorků do jednoho
\key{\\{\it n}} totéž jako {\it n\/}-tá skupina

\key{\^{}} vyhovuje na začátku řádku
\key{\$} vyhovuje na konci řádku

\key{\\w} vyhovuje znaku, který může být součástí slova
\key{\\W} vyhovuje znaku, který nemůže být součástí slova
\key{\\<} vyhovuje na začátku slova
\key{\\>} vyhovuje na konci slova
\key{\\b} vyhovuje mezislovním mezerám
\key{\\B} vyhovuje mezerám, které nejsou mezislovní

\section{Registry}

\key{C-x r s} ulož region do registru
\key{C-x r i} vlož obsah registru do bufferu

\key{C-x r SPC} ulož aktuální pozici kurzoru do registru
\key{C-x r j} skoč na pozici kurzoru uloženou v registru

\section{Obdélníky}

\key{C-x r r} zkopíruj obdélník do registru
\key{C-x r k} vyjmi obdélník
\key{C-x r y} vlož obdélník
\key{C-x r t} uvození každého řádku řetězcem

\key{C-x r o} otevři obdélník, posuň text vpravo
\key{C-x r c} vyprázdni obdélník

\section{Příkazový interpret}

\key{M-x shell} spusť příkazový interpret v Emacsu
\key{M-!} spusť příkaz příkazového interpretu
\key{M-|} spusť příkaz příkazového interpretu na region
\key{C-u M-|} filtruj region přes příkaz příkazového interpretu

\section{Kontrola pravopisu}

\key{M-\$} zkontroluj pravopis slova pod kurzorem
\mkey{M-x ispell-region} zkontroluj pravopis všech slov v regionu
\mkey{M-x ispell-buffer} zkontroluj pravopis v bufferu

\section{Mezinárodní znakové sady}

\key{C-x RET C-\\} zvol a aktivuj vstupní metodu pro aktuální buffer
\key{C-\\} aktivuj nebo deaktivuj vstupní metodu
\mkey{M-x list-input-methods} zobraz seznam všech vstupních metod
\mkey{M-x set-language-environment} specifikuj hlavní jazyk

\key{C-x RET c} nastav kódovací systém pro následující příkaz
\mkey{M-x find-file-literally} edituj soubor bez jakýchkoli konverzí

\mkey{M-x list-coding-systems} ukaž všechny kódovací systémy
\mkey{M-x prefer-coding-system} zvol preferovaný kódovací systém

\section{Klávesová makra}

\key{C-x (} začni definici klávesového makra
\key{C-x )} ukonči definici klávesového makra
\key{C-x e} spusť naposledy definované klávesové makro
\key{C-u C-x (} přidej do posledně definovaného klávesového makra
\mkey{M-x name-last-kbd-macro} pojmenuj naposledy definované makro

\section{Jednoduché nastavení}

\key{M-x customize} jednoduché nastavení

\section{Pomoc}

Emacs doplňuje příkazy. Stisknete-li \kbd{M-x} {\it tab\/} nebo {\it
space\/} dostanete seznam příkazů Emacsu.
\askip
\key{C-h} nápověda Emacsu
\key{C-h t} spustí tutoriál Emacsu
\key{C-h i} spustí Info, prohlížeč dokumentace
\key{C-h a} ukáže příkazy vyhovující zadanému řetězci (apropos)
\key{C-h k} zobrazí dokumentaci funkce spuštěné pomocí zadané klávesy
\askip
Emacs pracuje v různých {\it módech}, které upravují chování
Emacsu pro editovaný text daného typu. Mode line obsahuje jména aktuálních
módů v závorkách.
\askip
\key{C-h m} zobraz dokumentaci aktuálních módů.

\copyrightnotice

\bye

% Local variables:
% compile-command: "csplain survival"
% End:

% arch-tag: 86b21d3f-d8b6-412d-8d77-e6e8728f590e