\documentclass[landscape]{slides}

\usepackage[latin2]{inputenc}
\usepackage[T1]{czech}

\usepackage{color}


\setlength{\textwidth}{10in}
\setlength{\textheight}{7.5in}


\newcommand{\mycolor}{lightblue}
\definecolor{\mycolor}{rgb}{0.8,0.85,1}


\newcommand{\heading}[1]{\textbf{#1}}
\newcommand{\bigheading}[1]{\textbf{\large{}#1}}
\newcommand{\myoverlay}[2]{
  \begin{slide}
    #1
    \color{\mycolor}#2
  \end{slide}
  \begin{overlay}
    #1
    #2
  \end{overlay}
}


\begin{document}


\pagecolor{\mycolor}


\myoverlay{
  \special{papersize=12in,9.5in} % dvips is really not the most clever thing...
  \begin{center}
    \textbf{\Large{}EMACS}
    
    \textit{Cikháj, 28.--29.~března~1998}
    \bigskip{}
  \end{center}}{
  
  \begin{itemize}
  \item Interaktivní pracovní prostředí (původně textový editor).
  \item Vývoj zahájen v~70.~letech.
  \item Jedna z~nejdůležitějších komponent GNU~systému.
  \item Řada platforem (běžné Unixy, Hurd, Windoze, MS-DOG, VMS).
  \item Zpět do pravěku?
  \end{itemize}}


\myoverlay{
  \heading{Co je v~základech}

  \begin{itemize}
  \item Řada funkcí, efektivita, kvalitní design.
  \item Vysoce \emph{přizpůsobitelný} a \emph{rozšiřitelný} program.
  \item Online dokumentace a sebedokumentační schopnosti.
  \end{itemize}
}{
  \heading{Způsob vývoje}
  
  \begin{itemize}
  \item \emph{Free software}.
  \item Katedrála (vysoce stabilní distribuce) a~bazar (doplňující balíky).
  \end{itemize}
}


\begin{slide}
  \heading{Možnosti využití}

  \begin{itemize}
  \item V~současné době existuje např.~programátorské prostředí, WWW~prohlížeč,
    message reader, symbolický kalkulátor, hry,~\ldots{}
  \item Integrace, jednotné rozhraní.
  \item Vývojáři: Vyšší programovací jazyk, práce s~daty a soubory, podpora pro
    dokumentování, interakce s~uživatelem, widget toolkit, slušné knihovny.
  \item Potenciálně prakticky neomezené možnosti.
  \end{itemize}
\end{slide}


\begin{slide}
  \bigheading{\begin{enumerate}
  \item Emacs pro vývojáře.
  \item Emacs pro (La)\TeX{}isty.
  \item Emacs pro všechny uživatele.
  \end{enumerate}}
\end{slide}


\myoverlay{
  \bigheading{Emacs pro vývojáře}
  
  Podpora pro editaci různých programovacích jazyků (Ada, assembler, AWK, C,
  C++, Objective~C, Fortran, Icon, Java, M4, MetaFont, MetaPost, Modula~2,
  Octave, Pascal, Perl, Prolog, Scheme, shell, Simula, TCL,~\ldots{}).

}{\heading{Důležité vlastnosti programátorského editoru}

  \begin{itemize}
  \item Zapsat text programu s~vynaložením co nejmenší námahy.
  \item Nadělat co nejméně syntaktických chyb.
  \item Přehlednost zdrojových textů.
  \item Propojení s~kompilátorem, debuggerem a dokumentačním systémem.
  \end{itemize}
  
  Podpora pro programování v~jazycích podobných jazyku~C je obsahem balíku
  \emph{CC~mode}, zahrnutého ve standardní distribuci.
}


\begin{slide}
  \heading{Minimalizace námahy při psaní programu}

  \begin{itemize}
  \item Automatické odsazování.
  \item Zkratky a dynamické zkratky.
  \item Práce s~částmi zdrojového textu.
  \item Práce s~komentáři.
  \item Inicializace nových souborů.
  \end{itemize}
\end{slide}


\begin{slide}
  \heading{Eliminace (syntaktických) chyb}

  \begin{itemize}
  \item Kontrola závorek.
  \item Automatické odsazování.
  \item Zkratky a dynamické zkratky.
  \item Zvýrazňování syntaxe.
  \end{itemize}
\end{slide}


\begin{slide}
  \heading{Přehlednost zdrojových textů}

  \begin{itemize}
  \item Zvýrazňování syntaxe.
  \item TAGS.
  \item Makra preprocesoru.
  \end{itemize}
\end{slide}


\myoverlay{
  \bigheading{Emacs pro (La)\TeX{}isty}
  
  Existuje standardní podpora.\\
  Drtivá většina uživatelů používá externí balík AUC\TeX{}.

}{\heading{Důležité vlastnosti editoru pro texty v~*\TeX{}u}

  \begin{itemize}
  \item Napsat text s~vynaložením co nejmenší námahy.
  \item Nadělat co nejméně chyb.
  \item Přehlednost textu.
  \item Propojení s~kompilátorem, chybovým výstupem a dokumentačním systémem.
  \end{itemize}
}


\begin{slide}
  \heading{Zvláštnosti \TeX{}u}

  \begin{itemize}
  \item Komplikovaný systém pro nepočítačové uživatele.
  \item Různé sady maker (plain, \LaTeX{}, AmS\TeX{},~\ldots{}).
  \item Pojmenovaná prostředí (\verb.\begin.~\ldots{}~\verb.\end., fonty).
  \item Uživatelské styly.
  \item Matematika.
  \item Reference.
  \end{itemize}
\end{slide}
\begin{slide}
  \heading{Zvláštnosti \TeX{}u}

  \begin{itemize}
  \item Tabulátor není totéž co mezera.
  \item Spell checker.
  \item \textsc{Bib}\TeX{}.
  \item Netriviální kompilace.
  \end{itemize}
\end{slide}


\begin{slide}
  \bigheading{Emacs pro všechny uživatele}

  \begin{itemize}
  \item Výměna zpráv: původně RMAIL~+~GNUS.
  \item Listopad~1995: Gnus~5 --- message reader nové generace.
  \item Idea: Při tempu růstu počtu mailů, článků, newsových skupin a nových
    formátů dat je zapotřebí pro zvládnutí toho všeho nový news reader.
  \end{itemize}
\end{slide}


\begin{slide}
  \heading{Základní charakteristiky Gnus}

  \begin{itemize}
  \item Veškeré zprávy jsou organizovány v newsových skupinách.
  \item Odděleno uživatelské rozhraní od modulů pro práci s daty.
  \item Subscribe levels, skórování (včetně adaptivního).
  \item Stav zprávy: unread, read, expired, highlighted, dormant,
    duplicate,~\ldots{}
  \item NoCeM.
  \item Hierarchická organizace (topics).
  \item Efektivní komunikace (včetně cachování, prefetchingu a emulace news
    serveru).
  \end{itemize}
\end{slide}
\begin{slide}
  \heading{Základní charakteristiky Gnus}

  \begin{itemize}
  \item Přístup ke všem informacím (parent, FAQ, description,~\ldots{}).
  \item Automatické ukládání odesílaných zpráv.
  \item Kontrola syntaxe odesílaných zpráv (dlouhé řádky, signatury,~\ldots{}).
  \item Undo.
  \item \uv{Hračičky} (picons, X-Face, tree,~\ldots{}).
  \item Totální flexibilita.
  \end{itemize}
\end{slide}


\begin{slide}
  \heading{Ad flexibilita}

  \begin{itemize}
  \item Libovolné kombinace select methods.
  \item Virtuální, kibozed, Web skupiny.
  \item Podpora různých typů dat.
  \item Třídění a ukládání přicházejících i~odcházejících zpráv.
  \end{itemize}
\end{slide}
\begin{slide}
  \heading{Ad flexibilita}

  \begin{itemize}
  \item Threading.
  \item Process marks.
  \item Viditelné/neviditelné skupiny/zprávy.
  \item Rozličné parametry, nezávislé pro jednotlivé skupiny, možnost dědění.
  \item Seznam skupin, seznam článků, hlavičky, články.
  \end{itemize}
\end{slide}


\end{document}
