summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/morehype/blog.tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-10-11 22:54:02 +0000
committerKarl Berry <karl@freefriends.org>2011-10-11 22:54:02 +0000
commitf5d5dc04a3a9336da726ed2dcf9bcb741f8dad4b (patch)
tree7e40e516d0eaf09e1ae5e6474326a08ea152be78 /Master/texmf-dist/source/latex/morehype/blog.tex
parent662cda48313c1615e5b117f827f245bd4a4fc22a (diff)
morehype (11oct11)
git-svn-id: svn://tug.org/texlive/trunk@24269 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/morehype/blog.tex')
-rw-r--r--Master/texmf-dist/source/latex/morehype/blog.tex201
1 files changed, 171 insertions, 30 deletions
diff --git a/Master/texmf-dist/source/latex/morehype/blog.tex b/Master/texmf-dist/source/latex/morehype/blog.tex
index 31f95d86470..9b070325ef2 100644
--- a/Master/texmf-dist/source/latex/morehype/blog.tex
+++ b/Master/texmf-dist/source/latex/morehype/blog.tex
@@ -1,6 +1,6 @@
-\ProvidesFile{blog.tex}[2011/09/02 documenting blog.sty]
+\ProvidesFile{blog.tex}[2011/10/10 documenting blog.sty]
\title{\textsf{blog.sty}\\---\\%
- Generating \acro{HTML} Quickly with \TeX\thanks{This
+ Generating \HTML\ Quickly with \TeX\thanks{This
document describes version
\textcolor{blue}{\UseVersionOf{\jobname.sty}}
of \textsf{\jobname.sty} as of \UseDateOf{\jobname.sty}.}}
@@ -8,13 +8,17 @@
{ \RequirePackage{makedoc} \ProcessLineMessage{}
\renewcommand\mdSectionLevelOne{\string\subsection}
\renewcommand\mdSectionLevelTwo{\string\subsubsection}
- \MakeJobDoc{17}{\SectionLevelTwoParseInput} }
-\documentclass{article}%% TODO paper dimensions!?
+ \MakeJobDoc{17}{\SectionLevelTwoParseInput}
+ \MakeCloseDoc{lnavicol}
+ \MakeCloseDoc{blogdot}
+}
+\documentclass[fleqn]{article}%% TODO paper dimensions!?
\input{makedoc.cfg} %% shared formatting settings
\ReadPackageInfos{blog}
%% \tagcode seems to be a quite recent pdfTeX primitive,
%% cf. microtype.pdf ... %% 2010/11/06
\newcommand*{\xmltagcode}[1]{\texttt{<#1>}}
+\newcommand*{\HTML}{\acro{HTML}} %% 2011/09/08
\sloppy
\begin{document}
\maketitle
@@ -23,24 +27,24 @@
based on processing text files using the 'fifinddo' package.
Some \LaTeX\
commands %%% command names
-are redefined to access their \acro{HTML}
-equivalents, other new macro names ``quote" the names of
-\acro{HTML} elements. The package has evolved in several little steps
+are redefined to access their \HTML\
+equivalents, other new macro names ``quote" the names of \HTML\ elements.
+The package has evolved in several little steps
each aiming at getting pretty-looking ``hypertext" \textbf{notes}
with little effort,
where ``little effort" also has meant avoiding studying
documentation of similar packages already existing.
-[TODO: list them!]
+[\textcolor{blue}{TODO:} list them!]
% Version v0.3 is the remainder of v0.2 after moving some stuff
% to 'fifinddo.sty' (especially `\CopyFile');
% moreover, the new `\BlogCopyFile' replaces empty source lines
-% by \acro{HTML}'s \xmltagcode{p} (starting a new paragraph).---Real
+% by \HTML's \xmltagcode{p} (starting a new paragraph).---Real
% \emph{typesetting} from the same `.tex' source
% (pretty printable output) has not been tried yet.
%% <- 2011/01/24 ->
The package %%% rather
\emph{``misuses"} \TeX's macro language
-for generating \acro{HTML} code and entirely \emph{ignores}
+for generating \HTML\ code and entirely \emph{ignores}
\TeX's typesetting capabilities.%%%---What about
% such a ``small" \TeX\ with macros only and
% \emph{no} typesetting capabilities ...!?
@@ -57,7 +61,7 @@ putting it somewhere where \TeX\ finds it
\strong{User commands} are described near their implementation below.
However, we must present an \strong{outline} of the procedure
-for generating \acro{HTML} files:
+for generating \HTML\ files:
At least one \strong{driver} file and one \strong{source} file are
needed.
@@ -71,12 +75,12 @@ and uses file handling commands from 'blog.sty' and
\CtanPkgRef{nicetext}{fifinddo}
(cf. `mdoccheat.pdf' from the \ctanpkgref{nicetext} bundle).
It chooses \strong{source} files and the name(s) for the resulting
-\acro{HTML} file(s). It may also need to load local settings, such as
+\HTML\ file(s). It may also need to load local settings, such as
for the language
%% modified 2011/01/25:
(`lang-de.fdf', `lang-en.fdf'),
and settings for converting the editor's text encoding
-into the encoding that the head of the resulting \acro{HTML} file advertises
+into the encoding that the head of the resulting \HTML\ file advertises
(`atari.fdf' in the 'nicetext' bundle).
The driver file could be run a terminal dialogue in order to choose source
@@ -110,20 +114,27 @@ In order to make it easier for the reader to see what is essential,
I~have moved many `.cfg'-like extra definitions into a file
`texblog.fdf'. Some of these definitions may later move into
`blog.sty'. You should find `makehtml.tex', `texmap.tex', and
-`texblog.fdf' in a directory `demo/texblog', perhaps you can use them
-as templates.
+`texblog.fdf' in a directory `demo/texblog'
+(or `texblog.fdf' may be together with the `.sty' files),
+perhaps you can use them as templates.
\begingroup
- \MakeOther\|\MakeOther\`\MakeOther\'\MakeOther\<
+ \MakeOther\|
+% \MakeOther\`\MakeOther\' %% disables \tt! 2011/09/08
+ \MakeOther\<
+ \MakeActive\ \def{\"o} %% 2011/10/10
\MakeActive\ \def{\"u}
\hfuzz=\textwidth \advance \hfuzz by 28pt
\subsubsection{Driver File `makehtml.tex'}
+ %% <- TODO \file needs protection for PDF 2011/09/08
+ \enlargethispage{1\baselineskip}
\listinginput[5]{1}{CTAN/morehype/demo/texblog/makehtml.tex}
-\subsubsection{Source File `texmap.tex'}
+\subsubsection{Source File \texttt{texmap.tex}}
\listinginput[5]{1}{CTAN/morehype/demo/texblog/texmap.tex}
\endgroup
\subsection{A Style with a Navigation Column}
+\label{sec:example-lnavicol}
A style of web pages looking more professional than
`texmap.htm' %% was `texhax.hmt' 2011/09/02
(while perhaps becoming outdated) has a small navigation column
@@ -134,6 +145,7 @@ section below. The package 'lnavicol.sty' provides commands
(and some more) for structuring the source so that the code
following `\PAGEHEAD' generates the header, the code following
`\PAGENAVI' forms the content of the navigation column, etc.
+Its code is presented in Sec.~\ref{sec:lnavicol}.
For real professionality, somebody must add some fine \acro{CSS},
and the macros mentioned may need to be redefined to use the `@class'
attribute. Also, I am not sure about the table macros in 'blog.sty',
@@ -156,7 +168,7 @@ You should find \emph{this} `makehtml.tex', a cut down version of
in a directory `demo/writings', hopefully useful as templates.
\begingroup
- \MakeOther\|\MakeOther\`\MakeOther\'\MakeOther\<
+ \MakeActive\ \def{\"a} %% 2011/10/05
\MakeActive\ \def{\"u}
\hfuzz=\textwidth \advance \hfuzz by 10pt
\subsubsection{Driver File `makehtml.tex'}
@@ -165,21 +177,150 @@ in a directory `demo/writings', hopefully useful as templates.
\listinginput[5]{1}{CTAN/morehype/demo/writings/schreibt.tex}
\endgroup
-
-\section{The Package File}
+\section{The File `blog.sty'} %% 2011/10/04 allow other files
\subsection{Package File Header (Legalize)}
- \errorcontextlines=5
- \ResetCodeLineNumbers
+\ResetCodeLineNumbers
\input{blog.doc}
+
+\pagebreak %% 2011/10/10
+\section{Real Web Pages with 'lnavicol.sty'}
+\label{sec:lnavicol}
+This is the code and documentation of the package mentioned in
+Sec.~\ref{sec:example-lnavicol}.
+\ResetCodeLineNumbers
+\input{lnavicol.doc}
+
+\section{Beamer Presentations with the 'blogdot' Package}
+\subsection{Overview}
+'blogdot.sty' extends 'blog.sty' in order to construct ``\HTML\
+slides." One ``slide" is a 3$\times$3 table such that
+\begin{enumerate}
+ \item it \strong{fills} the computer \strong{screen},
+ \item the center cell is the \strong{``type area,"}
+ \item the ``margin cell" below the center cell
+ is a \strong{link} to the \strong{next} ``slide,"
+ \item the lower right-hand cell is a \strong{``restart"} link.
+\end{enumerate}
+Six \strong{size parameters} listed in Sec.~\ref{sec:dot-size}
+must be adjusted to the screen in `blogdot.cfg'
+(or in a file with project-specific definitions).
+
+We deliver a file `blogdot.css' containing \strong{\acro{CSS}} font size
+declarations that have been used so far; you may find better ones
+or ones that work better with your screen size, or you may need to add
+style declarations for additional \HTML\ elements.
+
+Another parameter that the user may want to modify is the
+\strong{``restart" anchor name} |\BlogDotRestart|
+(see Sec.~\ref{sec:dot-fin}).
+Its default value is |START| for the ``slide" opened by the command
+|\titlescreenpage| that is defined in Sec.~\ref{sec:dot-start}.
+
+That slide is meant to be the ``\strong{title} slide"
+of the presentation. In order to \strong{display} it,
+I recommend to make and use a \strong{link} to |START| somewhere
+(such as with 'blog.sty''s `\ancref' command).
+The \emph{content} of the title slide is \emph{centered} horizontically,
+so certain commands mentioned \emph{below}
+(centering on other slides) may be useful.
+
+\emph{After} `\titlescreenpage', the next main \strong{user commands}
+are
+\begin{description}
+ \cmdboxitem|\nextnormalscreenpage{<anchor-name>}| \
+ starts a slide whose content is aligned flush left,
+ \cmdboxitem|\nextcenterscreenpage{<anchor-name>}| \
+ starts a slide whose content is centered horizontally.
+\end{description}
+---cf.~Sec.~\ref{sec:dot-next}. Right after these commands,
+as well as right after `\title'\-`screen`\-'page', code is used to
+generate the content of the \strong{type area} of the corresponding
+slide. Another `\next...' command closes that content and opens
+another slide. The presentation (the content of the very last slide)
+may be finished using |\screenbottom{<final>}| where <final> may be
+arbitrary, or `START' may be a fine choice for <final>.
+
+Finally, there are user commands for \strong{centering} slide content
+horizontically (cf.~Sec.~\ref{sec:dot-type}):
+\begin{description}
+ \cmdboxitem|\cheading{<digit>}{<title>}| \
+ ``printing" a heading centered horizontically---even on slides
+ whose remaining content is aligned \emph{flush left}
+ (I have only used <digit>=2 so far),
+ \cmdboxitem|\begin{textblock}{width}| \
+ ``printing" the content of a `{textblock}' environment with
+ maximum line width <width> flush left,
+ while that ``block" as a whole may be centered
+ horizontically on the slide due to choosing
+ `\nextcenterscreenpage'---especially for \strong{list}
+ environments with entry lines that are shorter than the
+ type area width and thus would not look centered
+ (below a centered heading from `\cheading').
+\end{description}
+
+The so far single \strong{example} of a presentation prepared using 'blogdot'
+is `dantev45.htm', a sketch of applying 'fifinddo' to package
+documentation and \HTML\ generation. A ``driver" file is needed
+for generating the \HTML\ code for the presentation from a `.tex'
+source by analogy to generating any \HTML\ file using 'blog.sty'.
+For the latter purpose, I have named my driver files `makehtml.tex'.
+For `dantev45.htm', I have called that file `makedot.tex',
+the main difference to `makehtml.tex' is loading `blogdot.sty'
+in place of `blog.sty'.
+
+This example also uses a file `dantev45.fdf' that defines some
+commands that may be more appropriate as user-level commands
+than the ones presented here (which may appear to be still too
+low-level-like):
+\begin{description}
+ \cmdboxitem|\teilpage{<number>}{<title>}|
+ making a ``cover slide" for announcing a new ``part"
+ of the presentation in German,
+ \cmdboxitem|\labelsection{<label>}{<title>}|
+ starting a slide with heading <title>
+ and with anchor <label>
+ (that is displayed on clicking a \emph{link} to
+ <label>)---using
+ \[`\nextnormalscreenpage{<label>}'\mbox{ and }
+ `\cheading2{<title>}',\]
+ \cmdboxitem|\labelcentersection{<label>}{<title>}|
+ like the previous command except that the slide content will be
+ \emph{centered} horizontally, using
+ \[`\nextcenterscreenpage{<title>}'.\]
+\end{description}
+
+%% 2011/10/10:
+\strong{Reasons} to make \HTML\ presentations may be:\ \
+(i)~As opposed to office software, this is a transparent light-weight
+approach.\ \
+Considering \emph{typesetting} slides with \TeX,\ \
+(ii)~\TeX's advanced typesetting abilities such as automatical
+page breaking are not very relevant for slides;\ \
+(iii)~a typesetting run needs a second or a few seconds,
+while generating \HTML\ with 'blog.sty' needs a fraction of a second;\ \
+(iv)~adjusting formatting parameters such as sizes and colours
+needed for slides is somewhat more straightforward with \HTML\
+than with \TeX.
+
+\subsection{File Header}
+\ResetCodeLineNumbers
+\input{blogdot.doc}
+
\end{document}
HISTORY
-2010/11/05 for v0.2
-2010/11/11 for v0.3
-2011/01/23 using readprov and color
-2011/01/27 using \urlfoot
-2011/09/01 using new makedoc.cfg incl. \acro and \foothttp...;
- extension for twocolpg.sty
-with morehype release r0.4
-2011/09/02 twocolpg.sty renamed into lnavicol.sty, typo fixes
+2010/11/05 for v0.2
+2010/11/11 for v0.3
+2011/01/23 using readprov and color
+2011/01/27 using \urlfoot
+2011/09/01 using new makedoc.cfg incl. \acro and \foothttp...;
+ extension for twocolpg.sty
+with morehype RELEASE r0.4
+2011/09/02 twocolpg.sty renamed into lnavicol.sty, typo fixes
+2011/09/08 \HTML
+2011/09/23 TODO in abstract blue again
+2011/10/05 umlaut-a in schreibt.tex
+2011/10/07f. blogdot
+2011/10/09 lnavicol
+2011/10/10 tuning; reasons for blogdot