diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/morehype/docsrc |
Initial commit
Diffstat (limited to 'macros/latex/contrib/morehype/docsrc')
-rw-r--r-- | macros/latex/contrib/morehype/docsrc/README.tex | 12 | ||||
-rw-r--r-- | macros/latex/contrib/morehype/docsrc/blog.tex | 477 | ||||
-rw-r--r-- | macros/latex/contrib/morehype/docsrc/blogexec.tex | 117 | ||||
-rw-r--r-- | macros/latex/contrib/morehype/docsrc/fdatechk.tex | 19 | ||||
-rw-r--r-- | macros/latex/contrib/morehype/docsrc/hypertoc.tex | 79 | ||||
-rw-r--r-- | macros/latex/contrib/morehype/docsrc/markblog.tex | 39 | ||||
-rw-r--r-- | macros/latex/contrib/morehype/docsrc/srcfiles.tex | 41 | ||||
-rw-r--r-- | macros/latex/contrib/morehype/docsrc/texlinks.tex | 198 |
8 files changed, 982 insertions, 0 deletions
diff --git a/macros/latex/contrib/morehype/docsrc/README.tex b/macros/latex/contrib/morehype/docsrc/README.tex new file mode 100644 index 0000000000..a4bf82368f --- /dev/null +++ b/macros/latex/contrib/morehype/docsrc/README.tex @@ -0,0 +1,12 @@ +\ProvidesFile{README.tex}[2012/03/18 make README.pdf] +\listfiles + +\documentclass[12pt]{article} +\usepackage{verbatim} +\pagestyle{empty} +\begin{document} +\vspace*{-3\baselineskip} +\enlargethispage{2\baselineskip} +% \small %% 2011/02/14 +\verbatiminput{README.txt} +\end{document} diff --git a/macros/latex/contrib/morehype/docsrc/blog.tex b/macros/latex/contrib/morehype/docsrc/blog.tex new file mode 100644 index 0000000000..712eeeb986 --- /dev/null +++ b/macros/latex/contrib/morehype/docsrc/blog.tex @@ -0,0 +1,477 @@ +\ProvidesFile{blog.tex}[2013/01/04 documenting blog.sty] +\title{\textsf{blog.sty}\\---\\% + Generating \HTML\ Quickly with \TeX\thanks{This + document describes version + \textcolor{blue}{\UseVersionOf{\jobname.sty}} + of \textsf{\jobname.sty} as of \UseDateOf{\jobname.sty}.}} +% \listfiles +{ \RequirePackage{makedoc} + \ProcessLineMessage{} + %% three section levels 2012/08/07: + \renewcommand\mdSectionLevelOne {\string\subsection} + \renewcommand\mdSectionLevelTwo {\string\subsubsection} + \renewcommand\mdSectionLevelThree{\string\paragraph} + \MainDocParser{\SectionLevelThreeParseInput} + \HeaderLines{16} %% 2012/10/03 + \MakeSingleDoc{blog.sty} + \HeaderLines{18} %% 2012/11/28 + \MakeSingleDoc{blogligs.sty} + \HeaderLines{18} %% 2012/11/28 + \MakeSingleDoc{markblog.sty} + \HeaderLines{18} %% 2012/10/05 + \MakeSingleDoc{lnavicol.sty} + \HeaderLines{17} %% 2012/10/05 + \MakeSingleDoc{blogdot.sty} +} +\documentclass[fleqn]{article}%% TODO paper dimensions!? +\sfcode`-=1001 %% 2011/10/15 +\input{makedoc.cfg} %% shared formatting settings +\usepackage{filesdo} \MDfinaldatechecks %% 2012/12/20 +\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 +\newcommand*{\CSS}{\acro{CSS}} %% 2011/11/09 +\newcommand*{\secref}[1]{Sec.~\ref{sec:#1}} %% 2011/11/23 +\providecommand*{\LuaTeX}{Lua\TeX} %% 2012/12/20 +\sloppy +\begin{document} +\maketitle +\begin{abstract}\noindent +'blog.sty' provides \TeX\ macros for generating web pages, +based on processing text files using the 'fifinddo' package. +Some \LaTeX\ +commands %%% command names +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. +[\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 \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 \HTML\ code and entirely \emph{ignores} +\TeX's typesetting capabilities.%%%---What about +% such a ``small" \TeX\ with macros only and +% \emph{no} typesetting capabilities ...!? +---'lnavicol.sty' adds a more \strong{professional} look +(towards CMS?), and 'blogdot.sty' uses 'blog.sty' +for \HTML\ \strong{beamer} presentations. +\end{abstract} +\tableofcontents + +\section{Installing and Usage} +The file 'blog.sty' is provided ready, +\strong{installation} only requires +putting it somewhere where \TeX\ finds it +(which may need updating the filename data + base).\urlfoot{ukfaqref}{inst-wlcf} + +\strong{User commands} are described near their implementation below. + +However, we must present an \strong{outline} of the procedure +for generating \HTML\ files: + +At least one \strong{driver} file and one \strong{source} file are +needed. + +The \strong{driver} file's name is stored in `\jobname'. +It loads 'blog.sty' by +\begin{verbatim} + \RequirePackage{blog} +\end{verbatim} +and uses file handling commands from 'blog.sty' and +\CtanPkgRef{nicetext}{fifinddo} +(cf. `mdoccheat.pdf' from the \ctanpkgref{nicetext} bundle).\urlfoot{CtanPkgRef}{nicetext} +%% <- \urlfoot 2012/11/30 +It chooses \strong{source} files and the name(s) for the resulting +\HTML\ file(s). It may also need to load local settings, such as +%% 2012/11/29: +`\uselangcode' with the \ctanpkgdref{langcode} package %% dref 2012/11/30 +and settings for converting the editor's text encoding +into the encoding that the head of the resulting \HTML\ file +advertises---or into \HTML\ named entities +(for me, `atari_ht.fdf' has done this). + +The driver file could be run a terminal dialogue in order to choose source +and target files and settings. So far, I rather have programmed a +dialogue just for converting UTF-8 into an encoding that my +Atari editor \textsc{xEDIT} can deal with. +I do not present this now because it was conceptually mistaken, +I must set up this conversion from scratch some time. +% [TODO: present in 'nicetext']. %% 2011/01/24 + +The \strong{source} file(s) should contain user commands defined below +to generate the necessary \xmltagcode{head} section and the +\xmltagcode{body} tags. + +\section{Examples} +\subsection{Hello World!} +This is the \strong{source} code for a ``Hello World" example, +in `hellowor.tex': +\MDsamplecodeinput{hellowor} +The \HTML\ file `hellowor.htm' is generated from `hellowor.tex' +by the following \strong{driver} file `mkhellow.tex': +\pagebreak[2] +\MDsamplecodeinput{mkhellow} + + \iffalse %% 2012/11/29 +\subsection{A Very Plain Style} +My ``\TeX-generated +pages"{\foothttpurlref{www.webdesign-bu.de/% + uwe\string_lueck/texmap.htm}} +use a \strong{driver} file `makehtml.tex'. +To choose a page to generate, I ``uncomment"ed just one +of several lines that set the ``current conversion job" +from a list (for some time). +I choose the example of a simple ``site map:" +`texmap.htm' is generated from \strong{source} file +`texmap.tex'.---More recently however, I have started to +read the job name and perhaps extra settings from a file +`jobname.tex' that is created by a Bash script. + +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' +(or `texblog.fdf' may be together with the `.sty' files), +perhaps you can use them as templates. + +\begingroup + \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 \texttt{texmap.tex}} + \listinginput[5]{1}{CTAN/morehype/demo/texblog/texmap.tex} +\endgroup + + \fi +\subsection{A Style with a Navigation Column} +\label{sec:example-lnavicol} +A style of web pages looking more professional +% than %% rm. 2012/11/29 +% `texmap.htm' %% was `texhax.hmt' 2011/09/02 +(while perhaps becoming outdated) has a small navigation column +on the left, side by side with a column for the main content. +Both columns are spanned by a header section above and a footer +section below. The package 'lnavicol.sty' provides commands +`\PAGEHEAD', `\PAGENAVI', `\PAGEMAIN', `\PAGEFOOT', `\PAGEEND' +(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', +so much may change later. + +With things like these, can 'blog.sty' become a part of a +``\Wikienref{content management system}" for \TeX\ addicts? +This idea rather is based on the +\wikideref{Content Management System}{\meta{German}} +Wikipedia article. + +As an example, I present parts of the source for my +``home page"{\foothttpurlref{www.webdesign-bu.de/% + uwe\string_lueck/schreibt.html}}. +As the footer is the same on all pages of this style, +it is added in the driver file `makehtml.tex'. +`schreibt.tex' is the source file for generating `schreibt.html'. +You should find \emph{this} `makehtml.tex', a cut down version of +`schreibt.tex', and `writings.fdf' with my extra macros for these pages +in a directory +`blogdemo/writings', %% blog 2012/11/30 +hopefully useful as templates. + +\begingroup + \MakeActive\ \def{\"a} %% 2011/10/05 + \MakeActive\ \def{\"u} + \hfuzz=\textwidth \advance \hfuzz by 10pt + %% 2012/11/29 CTAN/morehype/demo -> blogdemo: +\subsubsection{Driver File `makehtml.tex'} + \listinginput[5]{1}{blogdemo/writings/makehtml.tex} +\subsubsection{Source File `schreibt.tex'} + \listinginput[5]{1}{blogdemo/writings/schreibt.tex} +\endgroup + +\pagebreak %% 2013/01/04 +\section{The File \file{blog.sty}} %% 2011/11/09 +% \section{The File \texttt{blog.sty}} +% \section{The File {\tt blog.sty}} +%% <- strange 2011/11/08 -> +% \section{The File `blog.sty'} %% 2011/10/04 allow other files +\subsection{Preliminaries} %% 2012/10/03 +\subsubsection{Package File Header (Legalese)} %% ize -> ese, subsub 2012/10/03 +\ResetCodeLineNumbers +\input{blog.doc} + +\section{``Pervasive Ligatures" with 'blogligs.sty'} %% 2012/11/29 +\label{sec:moreligs} +% \AddQuotes +This is the code and documentation of the package mentioned in +Sec.~\ref{sec:ligs}, loadable by option |[ligs]|. +See below for what is offered. +\ResetCodeLineNumbers +\input{blogligs.doc} +% \DontAddQuotes + +\section{Wiki Markup by 'markblog.sty'} %% 2012/11/29 +\label{sec:mark} +\subsection{Introduction} %% 2012/12/20 +\AddQuotes +This is the code and documentation of the package mentioned in +Sec.~\ref{sec:ligs}, loadable by option |[mark]|. +See below for what is offered. You should also find a file +`markblog.htm' that sketches it. Moreover, `texlinks.pdf' +describes in detail to what extent Wikipedia's +``\wikiref{Help:Links#Piped_links}{piped links}" +with `[[<wikipedia-link>]]' is supported. %% <...> 2012/12/20 + +\subsection{Similar Packages} %% 2012/12/20 +'wiki.sty' from the \ctanpkgdref{nicetext} bundle has offered +some Wikipedia-like markup as a front-end for ordinary +typesetting with \LaTeX\ (for \acro{DVI}/\acro{PDF}), +implemented in a way very different from what is going on here, +rather converting markup sequences \emph{during} typesetting. + +More similar to the present approach is the way how +Wikipedia section titles in package documentation +is implemented by 'makedoc' from the 'nicetext' bundle, +based on \strong{preprocessing} by 'fifinddo'. + +In general, John MacFarlane's +\httpref{johnmacfarlane.net/pandoc}{\pkg{pandoc}} +(cf.~\wikideref{pandoc}{German Wikipedia}) +converts between wiki-like (simplified) markup and +\LaTeX\ markup. (It deals with rather fixed +markup rules, while we here process markup sequences +independently of an entire markup \emph{language}.) + +Another straightforward and well-documented way to +\emph{preprocess} source files for converting simplified +markup into \TeX\ markup is \ctanpkgauref{isambert}{Paul Isambert}'s +\ctanpkgref{interpreter}. It relies on \wikiref{LuaTeX}{\LuaTeX} +where Lua does the preprocessing. + +\subsection{Package File Header} %% 2012/12/20 +\ResetCodeLineNumbers +\input{markblog.doc} +\DontAddQuotes + +%% rm. \pagebreak 2013/01/04 +\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 'blogdot.sty'} +\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>}| \ %% not metavar 2012/07/19 + ``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 \ctanfileref{info/fifinddo-info}{dantev45.htm} +%% <- 2011/10/21 -> +(\ctanpkgref{fifinddo-info} bundle), +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. + +%% 2011/10/11, 2011/10/15: +\strong{Limitations:} \ +First I was happy about how it worked on my netbook, +but then I realized how difficult it is to present the ``slides" ``online." +Screen sizes (centering) are one problem. +(Without the ``restart" idea, this might be much easier.) +Another problem is that the ``hidden links" don't work with +\Wikienref{Internet Explorer} as they work with +\Wikienref{Firefox}, \Wikienref{Google Chrome}, and +\Wikiendisambref{Opera}{web browser}. +% I am now working at an easy choice of ``recompiling options." +And finally, in internet shops some +\HTML\ entities/symbols were not supported. +In any case I (again) became aware of the fact +that \HTML\ is not as \strong{``portable"} as \acro{PDF}. + +Some \strong{workarounds} are described in Sec.~\ref{sec:cfgs}. +|\FillBlogDotTypeArea| has two effects: \ (i)~providing an additional +link to the \emph{next} slide for MSIE, \ (ii)~\emph{widening} +and centering the \emph{type area} on larger screens +than the one which the presentation originally was made for. \ +An optional argument of |\TryBlogDotCFG| is offered for a `.cfg' file +overriding the original settings for the presentation. +Using it, I learnt that for ``portability," some manual line breaks +(`\\', \xmltagcode{br}) should be replaced by ``ties" between the +words \emph{after} the intended line break +(when the line break is too ugly in a wider type area). +For keeping the original type area width on wider screens +(for certain ``slides", perhaps when line breaks really are wanted + to be preserved), the |{textblock}| environment may be used. +Better \HTML\ and \acro{CSS} expertise may eventually +lead to better solutions. + +The \strong{name} \qtd{blogdot} is a ``pun" on the name of the +\ctanpkgref{powerdot} package (which in turn refers to +``\Wikienref{PowerPoint}"). + +\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 +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 +2011/10/11 limitations of blogdot, corrected makedoc code +2011/10/15 more on limitations of blogdot; + abstract on lnavicol and blogdot +2011/10/21 links to fifinddo-info/dantev45.htm +2011/11/05 using \MakeSingleDoc from makedoc.sty v0.42 +2011/11/08 playing with alternatives to defective `blog.sty' + in page head +2011/11/09 so use \file with new makedoc.cfg for hyperref; \CSS +2011/11/23 \secref +2012/07/19 `textblock' not metavar +2012/08/07 three section levels +2012/10/03 ize -> ese, some restructuring, corr. \HeaderLines +2012/10/05 adjusted \HeaderLines (differ!) +2012/11/29 adding `blogligs' and `markblog' +2012/11/30 hello world, texblog sample removed, url foots +2012/12/20 filedate checks, doc. more about `markblog' +2013/01/04 \pagebreak +/- diff --git a/macros/latex/contrib/morehype/docsrc/blogexec.tex b/macros/latex/contrib/morehype/docsrc/blogexec.tex new file mode 100644 index 0000000000..791cfdafde --- /dev/null +++ b/macros/latex/contrib/morehype/docsrc/blogexec.tex @@ -0,0 +1,117 @@ +\ProvidesFile{blogexec.tex}[2012/12/20 documenting blogexec.sty] +\title{{\huge\pkg{blogexec.sty}}\\---\\Overcoming + \pkg{blog.sty}'s Pure Expansion\thanks{This + document describes version + \textcolor{blue}{\UseVersionOf{\jobname.sty}} + of \textsf{\jobname.sty} as of \UseDateOf{\jobname.sty}.}} +% \listfiles +{ \RequirePackage{makedoc} + \ProcessLineMessage{} %%% {\message{.}} + \MakeJobDoc{17} + {\SectionLevelThreeParseInput} } +\documentclass[fleqn]{article}%% TODO paper dimensions!? +\input{makedoc.cfg} %% shared formatting settings +\usepackage{filesdo} \MDfinaldatechecks %% 2012/12/20 +\providecommand*{\HTML}{\acro{HTML}} +\ReadPackageInfos{blogexec} +\sloppy +\begin{document} +\maketitle +\begin{abstract}\noindent +'blog.sty' before v0.7 generated \HTML\ by pure macro expansion +and could use \LaTeX\ macros (redefined) only to a very limited +extent. On adding 'blogexec.sty', some macros (configurable) are +``intercepted" before expansion in a 'blog' run for +``running" some code, basically `\begin', `\end', +and a new general `\EXECUTE'. +A table environment with active characters inside only is +provided---perhaps ``nicer than \LaTeX." +\end{abstract} +\tableofcontents + +% \newpage +\section{Features and Usage} + +% \subsection{Installing and Calling} +The file 'blogexec.sty' is provided ready, installation only requires +putting it somewhere where \TeX\ finds it +(which may need updating the filename data + base).\urlfoot{ukfaqref}{inst-wlcf} %% corr. 2011/02/08 + +'blogexec.sty' may be loaded by +\begin{verbatim} + \RequirePackage{blogexec} +\end{verbatim} +in a driver file for 'blog.sty'. \strong{Alternatively}, +the following commands in a 'blog' driver file +(in a certain way even in a \emph{source} file) +load 'blogexec.sty' and then are carried out according to their +definitions in 'blogexec': +\begin{description} + \cmdboxitem|\BlogInterceptExecute| \ intercepts |\EXECUTE| only. + \cmdboxitem|\BlogInterceptEnvironments| \ intercepts |\EXECUTE|, + |\begin|, and |\end| only; the latter two then work much + as with \LaTeX. They expand to \HTML\ code as with 'blog'; + `\begin{<env>}' additionally executes commands according + to an (optional) + \[|\MakeBlogBeginRun{<env>}<arguments>{<begin-code>}|.\] + \cmdboxitem|\BlogInterceptExtra| \ intercepts all the commands + in certain lists (using the \ctanpkgref{dowith} package), + including `\EXECUTE', `\begin', `\end'. E.g., + \[|\MakeBlogOneArgInterception{<cmd>}{<run>}{<write>}|\] + adds <cmd> to such a list and tells that <run> should be + carried out and that <cmd><one-argument> should be replaced + by <write> in a line containing <cmd> + (not hidden in braces, and there better should not be much more + in the line). + \cmdboxitem|\BlogInterceptHash| \ does \emph{not} choose an + \strong{``interception level"} as the previous commands do, + but may be necessary for allowing parameters in macro + definitions to be run in the course of an interception. + It is automatically (``implicitly") envoked by the star forms + of the above commands, i.e., by either of + \begin{itemize} + \item |\BlogInterceptExecute*| + \item |\BlogInterceptEnvironments*| + \item |\BlogInterceptExtra*| + \end{itemize} +\end{description} +The reader may find additional details in the following sections +near the code implementing the commands. + +'blogexec.sty' also modifies 'blog.sty''s (v0.7) +|{stdallrulestable}| environment as follows: +\begin{itemize} + \item[\InlineCmdBox{\texttt{&|}}] + The vertical stroke becomes an active character + that closes a table cell and opens another one + (being an alias for 'blog.sty''s v0.7 `\endcell')---just + as |&| does it with \TeX/\LaTeX. + \cmdboxitem|&| The ampersand becomes an active character + that---\strong{differently to \TeX\slash\LaTeX}---as an alias for + 'blog.sty''s |\figurespace| produces the Unicode figure space + for alignment of figures. +\end{itemize} +\emph{Outside} the `{stdallrules}' environment, both characters +have their ``usual" meaning, i.e., |&| may be used for accessing +\HTML\ entities (as 'blog.sty' allows it). |\cr| (and |\endline|, +provided by 'blog.sty' v0.7) ends a table row and starts a new one. +|\\| is not touched---a \strong{difference to \LaTeX} and may still be +used for breaking a line within a table cell. + +% \section{Example} + +% \pagebreak +% \section{Implementation} +\section{Package File Header (Legalize)} +\input{blogexec.doc} +\end{document} + +VERSION HISTORY + +2011/11/04 for v0.1 very first +2011/11/09f. something more +2011/11/20 star forms +2012/12/20 for v0.21 date checks + + diff --git a/macros/latex/contrib/morehype/docsrc/fdatechk.tex b/macros/latex/contrib/morehype/docsrc/fdatechk.tex new file mode 100644 index 0000000000..2b45acd55e --- /dev/null +++ b/macros/latex/contrib/morehype/docsrc/fdatechk.tex @@ -0,0 +1,19 @@ +\ProvidesFile{fdatechk.tex}[2012/12/20 morehype filedate checks] +%% load earlier: +%\RequirePackage{filedate,filesdo} +%\UseReferenceDate{\thepdfmoddate} +\ModDates +\DatesDiffErrors +\FileDateAutoChecks %% 2012/12/20 +\DoWithBasesExts\ReadFileInfos{ + blog,blogexec,hypertoc,markblog,texlinks}{sty,tex} +%\DoWithBasesExts\CheckDateOfGiven{blogdot}{cfg,sty} +\DatesDiffWarnings +\ReadFileInfos{blogdot.cfg} +\DatesDiffErrors +\DoWithExtBases\ReadFileInfos{sty}{blogdot,blogligs} +\DoWithExtBases\ReadFileInfos{fdf}{atari_ht,texblog} +\ReadFileInfos{mkhellow,hellowor,wiki_mwe,fdatechk,srcfiles} +\ReadFileInfos{morehype.RLS} +\DatesDiffWarnings +\CheckDateOfToday{morehype.RLS} diff --git a/macros/latex/contrib/morehype/docsrc/hypertoc.tex b/macros/latex/contrib/morehype/docsrc/hypertoc.tex new file mode 100644 index 0000000000..bd5091f3f5 --- /dev/null +++ b/macros/latex/contrib/morehype/docsrc/hypertoc.tex @@ -0,0 +1,79 @@ +\ProvidesFile{hypertoc.tex}[2011/01/27 documenting hypertoc.sty] +\title{\textsf{hypertoc.sty}\\---\\Decent Links + in Tables of Contents\thanks{This + document describes version + \textcolor{blue}{\UseVersionOf{\jobname.sty}} + of \textsf{\jobname.sty} as of \UseDateOf{\jobname.sty}.}} +% \listfiles +{ \RequirePackage{makedoc} \ProcessLineMessage{} + \MakeJobDoc{18}% %% 2011/01/23 + {\SectionLevelOneParseInput} } +\documentclass{article}%% TODO paper dimensions!? +\input{makedoc.cfg} %% shared formatting settings +\usepackage{color} %% readprov in makedoc.cfg 2011/01/23 +\sloppy +\begin{document} +\maketitle +\begin{abstract}\noindent +'hypertoc.sty' changes macros for the table of contents +so that colored frames to indicate links look acceptable. +In the present version, this is achieved by inserting struts +and only addresses \LaTeX's standard 'article.cls'. +\end{abstract} + +\tableofcontents + +\section{Why} +By default, the 'hyperref' package highlights sectioning titles +as printed in the table of contents (TOC) by red-framed boxes. +It looks horrible, because of +(\textit{i})~the aggressive color and +(\textit{ii})~the irregular, ``random" shapes of the boxes. + +To avoid this, it seems to be standard to use 'hyperref''s +package option `[colorlinks]'. I don't like this either. +It is confusing as to how the printed output will look like, +the chosen color doesn't create a much more pleasant look; +indeed, the publisher's graphical designer may have chosen +colors for printing the table of contents---this design +then is spoiled. + +Therefore I prefer (\textit{a})~choosing a more decent color +and (\textit{b})~using struts so that the boxes have a more +regular shape. + +In a publisher's package I even have found the idea +to make a box for the entire TOC entry, including the page number. +Then the frames look regular indeed, and you need less precision +in moving the mouse for clicking at an entry. +It would be nice if this could be integrated here later. + +\section{Usage} +The file 'hypertoc.sty' is provided ready, installation only requires +putting it somewhere where \TeX\ finds it +(which may need updating the filename data + base).\urlfoot{ukfaqref}{inst-wlcf} %% 2011/01/27 + +Below the `\documentclass' line(s) and above `\begin{document}', +you load 'hypertoc.sty' (as usually) by +\begin{verbatim} + \usepackage{hypertoc} +\end{verbatim} + +This controls the \emph{shapes} of the frames. +The \emph{color} must be chosen by the 'hyperref' package option +`[linkbordercolor]', I have used +\[`linkbordercolor={1 .9 .7},'\] +---cf.~`makedoc.cfg'. + +\section{The Package File} +The package essentially has just \emph{six} code lines at present. + +\input{hypertoc.doc} +\end{document} + +VERSION HISTORY + +2011/01/23 for v0.1, very first +2011/01/24 \ProvidesFile date corrected +2011/01/27 uses \urlfoot diff --git a/macros/latex/contrib/morehype/docsrc/markblog.tex b/macros/latex/contrib/morehype/docsrc/markblog.tex new file mode 100644 index 0000000000..581ac15de4 --- /dev/null +++ b/macros/latex/contrib/morehype/docsrc/markblog.tex @@ -0,0 +1,39 @@ +\ProvidesFile{markblog.tex}[2012/11/29 extended blog markup] +\EXECUTE{\def\pkg{\code}\def\HTML{\abbr{HTML}} + \def\mystrong{\textcolor{\#aa0000}} + \def\myalert{\textcolor{red}}} +\head %%% \texmetadata 2012/09/23 + \metanamecontent{author}{Uwe L\"uck} + \metanamecontent{date}{\isotoday} + \robots{index,follow,noarchive} +\title{blog.sty \& wikis} %%% CMS} +\body +\begin{center} +\heading2{\CtanPkgRef{morehype}{markblog.sty} %%%{{blog[exec].sty}} + \& + [[Wiki]]s} %%% \wikiref{content management system}{\abbr{CMS}}} +\begin{stdallrulestable} + \EXECUTE{\let\blogcode\code \def\code#1{\textcolor{\#003300}{\blogcode{#1}}}} %% vs. CSS + %% ^^ war 66 2012/09/23 + \pkg{blog.sty} Syntax | Output | cf. \HTML | cf. \TeX | cf. ... \cr + \code{''italics''} | ''italics'' | \xmleltcode{i}{italics} + | \code{\{\cs{it} italics\}} | Wikipedia \cr + \code{'''boldface'''} | '''boldface''' | \xmleltcode{b}{boldface} + | \code{\{\cs{bf} boldface\}} | Wikipedia \cr + \code{[[Wikipedia]]} | [[Wikipedia]] | \xmleltattrcode{a}{href=...}{Wikipedia}} + | \code{\cs{href}\{...\}\{Wikipedia\}} + | Wikipedia \cr + \code{**mystrong**} | **mystrong** | \xmleltattrcode{span}{style=...}{mystrong}} + | \code{\cs{textcolor}\{...\}\{mystrong\}} + | [[Markdown]] \cr + \code{***myalert***} | ***myalert*** | \xmleltattrcode{span}{style=...}{myalert} + | \code{\cs{textcolor}{red}{myalert}} + | [[Markdown]] \cr + \code{...} | ... | \code{\…} | \cs{dots} | \cr + \code{--}, \code{---} | --, --- | \code{\–}, \code{\—} + | \code{--}, \code{---} -- "ligs" | \cr + \code{->}, \code{<-} | ->, <- | \code{\→}, \code{\←} + | \cs{to}, \cs{gets} | +\end{stdallrulestable} +\end{center} +\finish diff --git a/macros/latex/contrib/morehype/docsrc/srcfiles.tex b/macros/latex/contrib/morehype/docsrc/srcfiles.tex new file mode 100644 index 0000000000..186eeda3c0 --- /dev/null +++ b/macros/latex/contrib/morehype/docsrc/srcfiles.tex @@ -0,0 +1,41 @@ +\ProvidesFile{srcfiles.tex}[2012/12/20 file infos -> SrcFILEs.txt] +\RequirePackage{filedate} +\RequirePackage[r,wrap]{nicefilelist}[2012/10/24] +%\MFfieldtemplate{f-base}{nicefilelist} +%\RequirePackage{myfilist}[2012/10/25] +%\EmptyFileList[nicefilelist.sty] %%% [readprov.sty,myfilist.sty] +\MaxBaseEmptyList* %% 2012/11/29 +%\FileDateAutoChecks +\FileListRemark[ ----]{-RELEASE.---} +\ReadFileInfos{morehype.RLS} +%\ReadFileInfos{USE....} +\FileListRemark[ ----]{-----USE.---} +\ReadPackageInfos{blog,blogdot} +\DatesDiffWarnings +\ReadFileInfos{blogdot.cfg} +\DatesDiffErrors +\ReadPackageInfos{blogexec,blogligs,hypertoc, + lnavicol,markblog,texlinks} +\ReadFileInfos{atari_ht.fdf,texblog.fdf} +%% examples: +%\ReadFileInfos{makehtml,texmap} +%% documentation main sources: +\FileListRemark[ ----]{-----DOC.SRC} +\ReadFileInfos{blog,blogexec, + hellowor,hypertoc,markblog,texlinks,wiki_mwe} +%% documentation settings and auxiliaries: +%\ReadFileInfos{NICETEXT....} +\NoFileDateAutoChecks +\FileListRemark[ ----]{-----DOC.FMT} +\ReadFileInfos{README} +%\ReadPackageInfos{nicefilelist} +\ReadFileInfos{fdatechk,mkhellow,srcfiles} %% fdatechk 2012/12/20 +\FileListRemark[ ----]{NICETEXT.---} +\ReadPackageInfos{fifinddo,makedoc,niceverb} +\ReadFileInfos{makedoc.cfg,mdoccorr.cfg} +\NoStopListInfos[SrcFILEs.txt] +%\ListInfos[SrcFILEs.txt] +\RequirePackage{filesdo} +%\EqualityMessages +\input{fdatechk} +\stop diff --git a/macros/latex/contrib/morehype/docsrc/texlinks.tex b/macros/latex/contrib/morehype/docsrc/texlinks.tex new file mode 100644 index 0000000000..4c81991f9c --- /dev/null +++ b/macros/latex/contrib/morehype/docsrc/texlinks.tex @@ -0,0 +1,198 @@ +\ProvidesFile{texlinks.tex}[2015/05/24 documenting texlinks.sty] +\title{{\Huge\textsf{texlinks.sty}}\\---\\\TeX-Related Links + for \textsf{hyperref}, \textsf{blog.sty}\\ + (and maybe more)\thanks{This + document describes version + \textcolor{blue}{\UseVersionOf{\jobname.sty}} + of \textsf{\jobname.sty} as of \UseDateOf{\jobname.sty}.}} +% \listfiles +{ \RequirePackage{makedoc} \ProcessLineMessage{} +% %% 2011/01/24: + \MakeJobDoc{17}% %% 2011/01/24 + {\SectionLevelThreeParseInput} +% \renewcommand*{\mdSectionLevelOne}{\string\subsection} +% \renewcommand*{\mdSectionLevelTwo}{\string\subsubsection} +% % \renewcommand*{\mdSectionLevelThree}{\string\paragraph} +% \HeaderLines{2} +% \MakeSingleDoc{wikimed.sty} +} +\documentclass[fleqn]{article} %% TODO paper dimensions!? +\input{makedoc.cfg} %% shared formatting settings +\newcommand*{\xmltagcode}[1]{\texttt{<#1>}} +\providecommand*{\CTAN}{\acro{CTAN}} +\providecommand*{\HTML}{\acro{HTML}} +\providecommand*{\URL} {\acro{URL}} +\providecommand*{\TUG} {\acro{TUG}} +\providecommand*{\ctanpkgdref}[1]{% + \ctanpkgref{#1}\,\urlfoot{CtanPkgRef}{#1}} +\providecommand*{\secref}[1]{Section~\ref{sec:#1}} %% 2012/12/15 +\providecommand*{\codedots}{\code{...}} %% 2012/12/18 +%% TODO following to new `makedox.sty' 2012/12/30 +%% {example} 2012/12/19, more 2013/01/20: +\setlength\labelsep{.6667em} +\newenvironment*{singthm}[1] + {\trivlist \item[\skiplabelsep\bf #1]} + {\endtrivlist} +\newenvironment*{example}{\singthm{Example:}}{\endtrivlist} +\newcommand*{\skiplabelsep}{\hskip\labelsep} +\newcommand*{\simpleexample}[1]{% + {\example\simplecodefbox{#1}\skiplabelsep + for\skiplabelsep \simplecodeoutfbox{#1}% + \endexample}} +\newcommand*{\simplecodefbox}[1]{% %% 2012/12/30 + \fbox{\def~{\string~}%% TODO etc. + \strut\CmdSyntaxVerb#1}} +\newcommand*{\simplecodeoutfbox}[1]{% + \fbox{\MakeActiveLetHere\&\empty \strut %% 2015/05/21: +% \pdfstringdefDisableCommands{\MakeActiveLetHere\&\PDFempty}% + \let\nvCSV\empty + #1}} +% \newcommand*{\PDFempty}{\134} +\newlet\nvCSV\CmdSyntaxVerb +\newenvironment*{simpleexamples}{% + \fboxrule=0pt + \let\simpleexample\innersimpleexample %% 2015/05/21 + %% <- TODO by Plain TeX -> + \center\strong{Examples}\\[\topsep]% + \def\arraystretch{1.5} + \tabular{|l|l|}% + \hline +% \exampletitlefbox{\strong{Code}}\endcell +% \exampletitlefbox{\strong {Outcome}}\cr\hline\hline}{% +%% 2015/05/21: + \exampletitlefbox{\strong{Code:}}\endcell + \exampletitlefbox{\strong{clickable:}}\cr\hline\hline}{% + \endtabular + \endcenter} +\newcommand*{\exampletitlefbox}[1]{% + \fbox{\exampletablenarrow#1\exampletablenarrow}} +\newcommand*{\exampletablenarrow}{\kern-.3333em} %% 2015/05/21 +\newcommand*{\innersimpleexample}[1]{% +% \hskip-\fboxsep %% ?? 2015/05/21 + \exampletablenarrow + \simplecodefbox{#1}\exampletablenarrow\endcell + \exampletablenarrow + \simplecodeoutfbox{#1}\exampletablenarrow\cr + \hline} +\newcommand*{\simpleyields}[1]{% %% 2012/12/30 + \simplecodefbox{#1} yields \simplecodeoutfbox{#1}} +\newcommand*{\longsimpleexample}[1]{% %% 2015/05/22f. + \example\leavevmode\[\simplecodefbox{#1}\]% + \makebox[\mathindent][l]{for}\simplecodeoutfbox{#1}% + \endexample} +% %% 2015/05/23: +% \newcommand*{\titlefootnote}[1]{% +% \IfTypesetting{\footnote{#1}{}}} +% \makeatletter +\pdfstringdefDisableCommands{\let\titlefootnote\@gobble} +\makeatother +\RequirePackage{filesdo} \MDfinaldatechecks %% 2012/12/20 +\sloppy +\begin{document} +\maketitle +\begin{MDabstract} +'texlinks.sty' provides a couple of shorthands for making hyperlinks +with \ctanpkgref{hyperref}'s\urlpkgfoot{hyperref} `\href' command, +linking to \URL s %% \ 2012/12/15 +that one often refers to in discussing \TeX-related material. +\URL s for \TUG\ material %% Especially -> \URL s to 2012/12/16 +(including texhax postings and + \TUG boat articles) and %% \ 2012/12/15 +\CTAN\ pages (package descriptions, directories, Catalogue), +% are supported, also %% rm. 2012/12/16 +the \acro{UK~FAQ}, %% \acro 2012/12/15 +the \LaTeX\ +and the \TeX\ %% 2012/12/16 +Wikibook, %% 2011/08/27 +and Wikipedia +(where much \TeX-related software is described in a + visually appealing manner) +are generated from minimal identifiers by pure expansion. %% 2012/12/16 +% However, up to now %% rm. 2012/12/16 +I have used them for documenting my packages %% 2012/12/16 +(\acro{PDF}) as well as for %% 2012/12/16 +\HTML\ overviews generated with 'blog.sty'. %% rm. \emph 2012/12/16 +They may furthermore %% was "as well" 2012/12/17 +be useful with better known (and better developed) +\TeX\,$\to$\,\HTML\ software such as %% \HTML 2012/12/15 +\ctanpkgdref{tex4ht} or %% d 2012/12/16 +\CtanPkgRef{latex2html}{LaTeX2HTML}% +\,\urlpkgfoot{latex2html} %% \, 2012/12/16 +(I don't know, doubt latter). %% doubt 2012/12/16 +\MDaddtoabstract{Related packages} %% 2012/12/28 +\ctanpkgref{uri}, \ctanpkgref{url} +\end{MDabstract} + +\tableofcontents + +\newpage +\section{Related Packages} %% 2012/12/30 +\begin{itemize} + \item \ctanpkgauref{muench-hm}{Martin M\"unch}'s %% u after \" 2012/12/31 + \ctanpkgref{uri} provides links for + scientific online publications. %% TODO landscape? + \item \ctanpkgauref{arseneau}{Donald Arseneau}'s + \ctanpkgref{url} is about \emph{typesetting} \URL s, + especially allowing linebreaks. It becomes relevant for + 'texlinks' in \secref{fonts}. +\end{itemize} + +\section{Usage} +The file 'texlinks.sty' is provided ready, installation only requires +putting it somewhere where \TeX\ finds it +(which may need updating the filename data + base).\urlfoot{ukfaqref}{inst-wlcf} + % \footnote{\url{http://www.tex.ac.uk/cgi-bin/texfaq2html?label=inst-wlcf}} + +Below the `\documentclass' line(s) and above `\begin{document}', +you load 'texlinks.sty' (as usually) by +\begin{verbatim} + \usepackage{texlinks} +\end{verbatim} +Package options and user commands are described near their definitions +below in the implementation section. + +\section{Preliminaries} +%% <- 2013/01/21 for \newlet -> +\subsection{Package File Header (Legalese)} %% ize -> ese 2012/11/09 +\input{texlinks.doc} + +% \section{\file{wikimed.sty}} +% \ResetCodeLineNumbers +% \input{wikimed.doc} + +%% rm. 2012/12/30 for \MDfinaldatechecks: +% \ModDates +% \CheckDateOfPDFmod{texlinks.sty} +% \CheckDateOfPDFmod{texlinks.tex} +\end{document} + +VERSION HISTORY + +2011/01/24 for v0.1, very first +2011/01/27 for v0.2, use \urlfoot{ukfaq} +2011/07/23 using \acro +2011/08/27 mentioning LaTeX Wikibook in abstract +2011/09/03 \Huge first line +2011/10/10 [fleqn] +2011/10/20 \HTML, \URL +2012/11/09 Legalize -> Legalese +2012/11/28 \ctanpkgdref +2012/12/01 date checks +2012/12/15 \secref, more \acro and \HTML, \TUG +2012/12/16 mod. abstract +2012/12/17 color.sty obsolete, \pdfstringDisable..., mod. abstract +2012/12/18 \secref \provide'd only, \codedots, rm. \pdfstring... +2012/12/19 {example} etc. +2012/12/20 filedate checks again +2012/12/28 folding example defs, {MDabstract} +2012/12/29 {simpleexamples} +2012/12/30 \simplecodefbox etc., \simpleyields +2012/12/31 corr. M\"unch; see sec:fonts +2013/01/20 {singthm} +2013/01/21 \section{Preliminaries} +2015/03/28 wikimed.sty +2015/05/21 \awfulsimpleexample -- replaced by \nvCSV, + \longsimpleexample, \exampletablenarrow +2015/05/22 \longcodesimpleexample corrected +2015/05/23 -> longsimpleexample |