| 
  Warning: this is an htmlized version!
   The original is here, and the conversion rules are here.  | 
% (find-angg "LATEX/2019clg-slides-4.tex")
% (defun c () (interactive) (find-LATEXsh "lualatex -record 2019clg-slides-4.tex"))
% (defun d () (interactive) (find-xpdfpage "~/LATEX/2019clg-slides-4.pdf"))
% (defun e () (interactive) (find-LATEX "2019clg-slides-4.tex"))
% (defun u () (interactive) (find-latex-upload-links "2019clg-slides-4"))
% (find-xpdfpage "~/LATEX/2019clg-slides-4.pdf")
% (find-sh0 "cp -v  ~/LATEX/2019clg-slides-4.pdf /tmp/")
% (find-sh0 "cp -v  ~/LATEX/2019clg-slides-4.pdf /tmp/pen/")
%   file:///home/edrx/LATEX/2019clg-slides-4.pdf
%               file:///tmp/2019clg-slides-4.pdf
%           file:///tmp/pen/2019clg-slides-4.pdf
% http://angg.twu.net/LATEX/2019clg-slides-4.pdf
% «.verbatim»			(to "verbatim")
% «.colors»			(to "colors")
% «.myhbox»			(to "myhbox")
% «.bgcolorhbox»		(to "bgcolorhbox")
%
% «.title-page»	(to "title-page")
\documentclass[oneside]{book}
\usepackage[colorlinks,urlcolor=violet]{hyperref} % (find-es "tex" "hyperref")
%\usepackage[latin1]{inputenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{pict2e}
\usepackage[x11names]{xcolor}     % (find-es "tex" "xcolor")
\usepackage{colorweb}             % (find-es "tex" "colorweb")
%
\usepackage{edrx15}               % (find-LATEX "edrx15.sty")
\input edrxaccents.tex            % (find-LATEX "edrxaccents.tex")
\input edrxchars.tex              % (find-LATEX "edrxchars.tex")
\input edrxheadfoot.tex           % (find-LATEX "edrxheadfoot.tex")
\input edrxgac2.tex               % (find-LATEX "edrxgac2.tex")
%
% (find-angg ".emacs.papers" "latexgeom")
% (find-LATEXfile "2016-2-GA-VR.tex" "{geometry}")
% (find-latexgeomtext "total={6.5in,8.75in},")
\usepackage[paperwidth=11cm, paperheight=8.5cm,
            %total={6.5in,4in},
            %textwidth=4in,  paperwidth=4.5in,
            %textheight=5in, paperheight=4.5in,
            %a4paper,
            top=1.5cm, bottom=.5cm, left=1cm, right=1cm, includefoot
           ]{geometry}
%
\begin{document}
\catcode`\^^J=10
\directlua{dofile "dednat6load.lua"}  % (find-LATEX "dednat6load.lua")
% «verbatim» (to ".verbatim")
\directlua{dofile "2018tug-dednat6.lua"} % (find-LATEX "2018tug-dednat6.lua")
\def\verbahbox#1{\hbox{\tt#1}}
% «myhbox» (to ".myhbox")
% (find-es "tex" "hbox")
\def\myhbox#1#2#3{\setbox0=\hbox{#3}\ht0=#1\dp0=#2\box0}
% \bhbox{\myhbox{7pt}{2pt}{\tt pb}}
\def\verbahbox#1{\myhbox{7pt}{2pt}{{\tt#1}}}
% «colors» (to ".colors")
% (find-LATEX "2017ebl-slides.tex" "colors")
% (find-LATEX "2017ebl-slides.tex" "colors" "\\def\\ColorGreen")
\long\def\ColorRed   #1{{\color{Red}#1}}
\long\def\ColorViolet#1{{\color{MagentaVioletLight}#1}}
\long\def\ColorGreen #1{{\color{SpringDarkHard}#1}}
\long\def\ColorGreen #1{{\color{SpringGreenDark}#1}}
\long\def\ColorGray  #1{{\color{GrayLight}#1}}
% (find-LATEXfile "istanbulglyphs.el" "Bold:")
\catcode`𝐚=13 \def𝐚{\color{SpringGreenDark}}
\catcode`𝐛=13 \def𝐛{\color{black}}
\catcode`𝐠=13 \def𝐠{\color{SpringGreenDark}}
\catcode`𝐫=13 \def𝐫{\color{Red}}
\catcode`𝐧=13 \def𝐧{\color{blue}}
\catcode`𝐮=13 \def𝐮{\color{blue}}
\catcode`𝐜=13 \def𝐜{\color{pink}}
\catcode`𝐰=13 \def𝐰{\color{YellowOrangeLight}}
% «bgcolorhbox» (to ".bgcolorhbox")
% (find-LATEX "edrx15.sty" "colors")
% (find-es "tex" "fbox")
\def\bgcolorhbox#1#2{{%
  \setbox0\hbox{#2}%
  \setbox0\vbox{\vskip\fboxsep\box0\vskip\fboxsep}%
  \setbox0\hbox{\kern\fboxsep\box0\kern\fboxsep}%
  {\color{#1}{\smashedvrule{\wd0}{\ht0}{\dp0}}}%
  \box0%
  }}
%\bgcolorhbox{blue}{Hello}
%\bgcolorhbox{YellowOrangeLight}{Hello}
\def\bgbox#1{\bgcolorhbox{YellowOrangeLight}{#1}}
\def\myvcenter#1{\begin{matrix}#1\end{matrix}}
\catcode`\^^O=13 \def*{{\color{red}*}}
\setlength{\parindent}{0em}
% (find-es "tex" "co")
% \co: a low-level way to typeset code; a poor man's "\verb"
\def\co#1{{%
  \def\\{\char92}%
  \def\^{\char94}%
  \def\~{\char126}%
  \tt#1%
  }}
\def\qco#1{`\co{#1}'}
\def\qqco#1{``\co{#1}''}
%  _____ _ _   _                               
% |_   _(_) |_| | ___   _ __   __ _  __ _  ___ 
%   | | | | __| |/ _ \ | '_ \ / _` |/ _` |/ _ \
%   | | | | |_| |  __/ | |_) | (_| | (_| |  __/
%   |_| |_|\__|_|\___| | .__/ \__,_|\__, |\___|
%                      |_|          |___/      
%
% «title-page» (to ".title-page")
% (cl1p 1)
% (find-es "tex" "huge")
% (find-kopkadaly4page (+ 12 63) "\\Huge")
\begin{tabular}[b]{c}
{\huge {\bf Um curso de \LaTeX{},}}                \\[1.5pt]
{\LARGE {\bf \TeX works e \ColorGreen{Emacs+eev}}} \\[0pt]
\phantom{mmmmmmmmmmmm} \ColorRed{\scriptsize ($↑$ Supresa!!!)} \\
\\
%\includegraphics[width=2cm]{2018tug-edrx-hoop.png}\\
Eduardo Ochs (UFF, Rio das Ostras) \\
UFF, Niterói - 6,7,8 e \ColorRed{13},14,15/fev 2019 \\
no Laboratório do bloco H do Gragoatá \\
\url{http://angg.twu.net/\#eev} \\
\url{http://angg.twu.net/\#clg} \\
{\scriptsize (``CLG'' $=$ Curso de \LaTeX{} do Gragoatá)} \\
\\
{\Large \bf \ColorRed{Aula 4}}
\end{tabular}
% https://www.tug.org/tug2018/ TUG2018
\newpage
\noedrxfooter
{\bf Revisão}
O material do curso está em:
 \url{http://angg.twu.net/2019-2019-curso-latex.html}
Na aula 1 nós vimos:
uma introdução ao \LaTeX{}, ao Emacs e ao eev,
como instalar o eev copiando um script para o terminal
e executando-o (``copy e paste para o terminal''),
e seguimos o tutorial do eev.
\newpage
{\bf Revisão (2)}
Na aula 2 nós vimos:
como usar o eev para abrir PDFs no xpdf,
como instalar o \co{clg} com copy e paste para o terminal,
como usar o \qco{find-latex-links},
como `c'ompilar um \co{.tex} e `d'isplayar o \co{.pdf},
como abrir o \co{.tex} no \TeX`w'orks,
como copiar hiperlinks do \co{.emacs.clg} pro \co{.tex}...
\newpage
{\bf Hoje}
Introdução ao \co{\\def}, a environments e ao math mode
Introdução a catcodes e verbatim
...e aí a gente vai se {\sl preparar} pra entender 
essas coisas complicadas aprendendo muitas coisas mais simples.
\newpage
{\bf Um exemplo}
\footnotesize
\begin{verbatim}
$\begin{pmatrix}
     & one  &       \\
 two &      & three \\
     & four &       \\
     & five &       \\
 \end{pmatrix}
$
\def\foo#1#2#3#4#5{
  \begin{pmatrix}
     & #1 &    \\
  #2 &    & #3 \\
     & #4 &    \\
     & #5 &    \\
  \end{pmatrix}
}
\end{verbatim}
\newpage
\begin{verbatim}
$\foo12345
 \foo abcde
 \foo{one}{two}{three}
     {four}{five}
$
\end{verbatim}
\newpage
Exercício:
Descubra como typesettear isto aqui:
$a'' + \sqrt{x^2 + y^2}$
\end{document}
{\bf O que é o \LaTeX?}
Visão simplista: uma ``markup language'' -- como HTML.
HTML gera webpages (control-P no browser $→$ PDFs).
\LaTeX{} gera PDFs \ColorGray{(e DVIs)}.
\TeX{} gera PDFs \ColorGray{(e DVIs)}.
O \LaTeX{} é implementado em cima do \TeX.
\msk
Visão realista: o \TeX{} é uma linguagem de programação;
o \LaTeX{} é o \TeX{} ``com bibliotecas extras''.
História: \TeX76 $→$ \TeX82 $→$ \TeX Book (1984)
O \TeX Book é tão detalhado e preciso,
e o \TeX82 é tão bug-free, que...
\newpage
{\bf O que é o \LaTeX? (2)}
Visão realista: o \TeX{} é uma linguagem de programação;
o \LaTeX{} é o \TeX{} ``com bibliotecas extras''.
História: \TeX76 $→$ \TeX82 $→$ \TeX Book (1984)
O \TeX Book é tão detalhado e preciso,
e o \TeX82 é tão bug-free,
e eles foram tão revolucionários
e tão usados pela comunidade acadêmica
que se tornaram ``standard'' pra preparar
artigos e livros...
\newpage
{\bf O que é o \LaTeX? (3)}
...que a \ColorRed{comunidade} começou a criar \ColorRed{extensões} pro \TeX...
Exemplo: o arquivo {\tt meuartigo.tex} (em plain text!)
começa com uma parte que faz o \TeX{} entrar em
modo ``two-column'', e depois disso todo o resto dele é
texto com um mark-up simples.
{\color{SpringGreenDark}
 \color{Chocolate4}
\begin{verbatim}
\documentclass[twocolumn]{article}
\usepackage{lipsum}
\begin{document}
\lipsum  % Parágrafos 1 a 7 do "Lorem ipsum"
\end{document}
\end{verbatim}
}
\newpage
{\bf `\%' inicia um comentário}
Linguagens de programação admitem \ColorRed{comentários}.
Tudo numa linha de \TeX{} depois de um `\%' é ignorado.
No exemplo abaixo o único comando \co{\\documentclass} \ColorRed{ativo}
é o que seleciona a ``classe'' \co{article} com a opção \co{twocolumn}.
{\color{Chocolate4}\footnotesize
\begin{verbatim}
%\documentclass[twocolumn]{book}
 \documentclass[twocolumn]{article}
%\documentclass           {book}
%\documentclass           {article}
\usepackage{lipsum}
\begin{document}
  \lipsum  % Parágrafos 1 a 7 do "Lorem ipsum"
\end{document}
\end{verbatim}
}
\newpage
{\bf Como assim, ``a comunidade''?}
TUG: \TeX{} users group
Revista: TUGBoat (vamos ver como acessá-la!)
Site: \url{http://www.tug.org/}
\msk
CTAN: Comprehensive \TeX{} Archive Network
Site: \url{http://mirror.ctan.org/}
\msk
\TeX Live: distribuição (com parte do CTAN)
Debian: pacotes \co{texlive*}
Pro curso nós instalamos a versão ``upstream'':
\url{https://www.tug.org/texlive/quickinstall.html}
\newpage
{\bf O \TeX Live é MUITO grande}
Zilhõõõõões (mais de 3000!) pacotes,
incluindo FAQs e tutoriais...
Como é que a gente vai lidar com isso?
\msk
Resposta: \ColorGreen{Emacs+eev}
\newpage
{\bf O que é o Emacs?}
Resposta simplista: um editor de texto.
Resposta melhor: um ambiente Lisp.
\ColorRed{A idéia de software livre surgiu do Emacs.}
($↑$) O Emacs também tem/é uma comunidade.
\msk
Na década de 70 criaram um editor de texto chamado
TECO, que era extensível por ``macros''.
As pessoas começaram a criar extensões incríveis
pra ele pra deixá-lo mais poderoso.
As pessoas começaram a \ColorRed{compartilhar extensões},
mas o código de cada extensão era feio,
elas eram difíceis de entender e às vezes
algumas eram incompatíveis entre si.
\newpage
{\bf O que é o Emacs? (2)}
``Nós precisamos de um TECO melhor!''
Solução: pegue a linguagem de programação
mais elegante e extensível de todas: \ColorRed{Lisp},
adicione algumas funções básicas de
``editor de texto'' nela,
e faça {\sl todo o resto} em Lisp.
\msk
O Emacs é um \ColorRed{ambiente Lisp}
que geralmente é usado como editor de texto.
\newpage
{\bf ``Lisp is available from anywhere''}
Lisp:
\begin{verbatim}
   (* 2 3)           --> 6
           (* 4 5)   --> 20
(+ (* 2 3) (* 4 5))  --> 26
(+       6      20)  --> 26
\end{verbatim}
Essas expressões entre parênteses ---
listas sem vírgulas entre os elementos ---
são chamadas de ``S-expressions'', ou ``\ColorGreen{sexps}''.
O Emacs tem um comando chamado \qco{eval-last-sexp}
que executa a expressão em Lisp \ColorGreen{antes do cursor}.
\newpage
{\bf ``Lisp is available from anywhere'' (2)}
O Emacs tem um comando chamado \qco{eval-last-sexp}
que executa a expressão em Lisp \ColorGreen{antes do cursor}...
ou: a ``\ColorGreen{sexp}'' antes do ``\ColorGreen{point}'' --- e mostra o resultado
na ``\ColorGreen{echo area}''.
\begin{verbatim}
  (+ (* 2 3) (* 4 5))
            ^       ^^
            |       | \
            6      20  26
\end{verbatim}
Se digitarmos \qco{M-x find-file RET \~/2019-CLG/}
Isto equivale a: \co{(find-file "\~/2019-CLG/")}
O Emacs ``visita'' o diretório \qqco{\~/2019-CLG/}.
\newpage
{\bf ``Lisp is available from anywhere'' (3)}
LShort: ``The Not So Short Introduction to \LaTeX$2_ε$'',
um tutorial que todo mundo usa.
Isto é uma sexp que abre o LShort
num PDF viewer (o xpdf) \ColorRed{na p.23}:
\begin{verbatim}
(find-lshortpage (+ 14 9) "\\documentclass")
\end{verbatim}
O eev é uma extensão pro Emacs que define
``elisp hyperlinks''... esses ``elisp hyperlinks'' podem
aparecer em comentários ---
por exemplo, depois do `\co{\%}' num arquivo \co{.tex}.
\newpage
{\bf ``Lisp is available from anywhere'' (4)}
Se editarmos este arquivo \co{.tex} \ColorRed{no Emacs} podemos
seguir os hyperlinks para páginas do LShort
usando `\co{eval-last-sexp}':
{\color{Chocolate4}\footnotesize
\begin{verbatim}
% (find-lshortpage (+ 14  9) "1.6.1 Document Classes")
% (find-lshortpage (+ 14  9)   "\\documentclass")
% (find-lshortpage (+ 14 10)   "twocolumn")
\documentclass[twocolumn]{article}
% (find-lshortpage (+ 14  7) "1.4 Input File Structure")
% (find-lshorttext (+ 14  7)   "\\begin{document}")
\begin{document}
Hello
\end{document}
\end{verbatim}
}
\newpage
{\bf \TeX works}
O \TeX works é um ambiente beginner-friendly
para \TeX{} e \LaTeX{}.
\msk
Nós vamos aprender \ColorRed{um pouquinho} de Emacs+eev...
o suficiente pra usar (e criar) links para páginas
de alguns PDFs que nos interessam --- por exemplo
o LShort, o manual do \TeX works,
um FAQ do CTAN, estes slides...
\msk
Nós vamos aprender a editar arquivos \co{.tex}
com o \TeX works e \ColorRed{ao mesmo tempo}
com o Emacs+eev --- que (por enquanto!)
vai servir principalmente para os hiperlinks.
% (find-tlsh "find * | sort")
% (find-tlfile "texmf-dist/doc/generic/FAQ-en/faq-getit.tex")
% (find-angg ".emacs.papers" "tlfaq")
\end{document}
% Local Variables:
% coding: utf-8-unix
% End: