diff options
author | Karl Berry <karl@freefriends.org> | 2012-12-02 23:18:36 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2012-12-02 23:18:36 +0000 |
commit | 59e52a9aaf7ccb545c0e6c410f3859a7b79b43aa (patch) | |
tree | a9d353045009336295b169b1cd9f46a9f8f1e5ab /Master/texmf-dist/tex | |
parent | ecbf2241f32ef261ee58622856756a9e42211886 (diff) |
morehype (2dec12)
git-svn-id: svn://tug.org/texlive/trunk@28418 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r-- | Master/texmf-dist/tex/latex/morehype/atari_ht.fdf | 5 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/morehype/blog.sty | 416 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/morehype/blogdot.sty | 20 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/morehype/blogexec.sty | 280 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/morehype/blogligs.sty | 103 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/morehype/lang-de.fdf | 10 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/morehype/lang-en.fdf | 8 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/morehype/markblog.sty | 70 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/morehype/morehype.RLS | 2 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/morehype/texblog.fdf | 494 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/morehype/texlinks.sty | 208 |
11 files changed, 1178 insertions, 438 deletions
diff --git a/Master/texmf-dist/tex/latex/morehype/atari_ht.fdf b/Master/texmf-dist/tex/latex/morehype/atari_ht.fdf index 9081480584e..864eb6773d5 100644 --- a/Master/texmf-dist/tex/latex/morehype/atari_ht.fdf +++ b/Master/texmf-dist/tex/latex/morehype/atari_ht.fdf @@ -1,9 +1,8 @@ -\ProvidesFile{atari_ht.fdf}[2012/05/13 Atari umlauts for blog.sty] +\ProvidesFile{atari_ht.fdf}[2012/10/05 Atari umlauts for blog.sty] \def\TextCodes{% \MakeActiveDef{\"A}\MakeActiveDef{\"O}\MakeActiveDef{\"U}% \MakeActiveDef{\"a}\MakeActiveDef{\"o}\MakeActiveDef{\"u}% - \MakeActiveDef{\ss} - %% <- TODO \MakeActiveLet, catcode package, from niceverb + \MakeActiveLet\ss %% 2012/10/05 } \endinput diff --git a/Master/texmf-dist/tex/latex/morehype/blog.sty b/Master/texmf-dist/tex/latex/morehype/blog.sty index 174ef0c5638..5b99b2758de 100644 --- a/Master/texmf-dist/tex/latex/morehype/blog.sty +++ b/Master/texmf-dist/tex/latex/morehype/blog.sty @@ -1,4 +1,4 @@ -\ProvidesPackage{blog}[2012/05/15 v0.7 simple fast HTML (UL)] +\ProvidesPackage{blog}[2012/11/29 v0.8 simple fast HTML (UL)] %% copyright (C) 2010 2011 2012 Uwe Lueck, %% http://www.contact-ednotes.sty.de.vu %% -- author-maintained in the sense of LPPL below. @@ -14,8 +14,11 @@ %% %% http://www.contact-ednotes.sty.de.vu %% +%% == \cs{newlet} == %% 2012/10/03 +%% |\newlet<cmd><cnd>| is also useful in surrounding files: +\newcommand*{\newlet}[2]{\@ifdefinable#1{\let#1#2}} +%% %% == Processing == -%% \label{sec:process} %% === Requirement === %% We are building on the 'fifinddo' package %% (using `\protected@edef' for \secref{ligs}): @@ -46,6 +49,7 @@ %% |\BlogProvidesFile| (for the time being, 2011/02/22): \@ifdefinable\BlogProvidesFile{% \def\BlogProvidesFile#1[#2]{% + <!DOCTYPE html>\CLBrk %% TODO more!? 2012/09/06 \comment{ generated from\CLBrk\CLBrk \ \ \ \ \ \ \ \ \ #1, #2,\CLBrk\CLBrk \ \ \ \ \ with blog.sty, @@ -76,7 +80,7 @@ % \catcode`\~\active \MakeActiveDef\~{ }%% for \FDpseudoTilde 2012/01/07 %% \qtd{&'} for \HTML\ convenience (cf. \secref{quotes}): - \MakeActiveDef\'{’}% %% here 2011/11/08 + \MakeActiveLet\'\rq %% actcodes 2012/08/28 \BasicNormalCatCodes} % \MakeOther\< \MakeOther\> %% rm. 2011/11/20 %% @@ -146,7 +150,7 @@ %% OK, let's not remove |\BlogCopyFile| altogether, rebirth: \newcommand*{\BlogCopyFile}{\BlogCopyLines\BlogProcessFile} %% -%% === ``Ligatures" === +%% === ``Ligatures", Package Options === %% \label{sec:ligs} %% With v0.7, we introduce a preliminary method to use the %% ``ligatures" `--' and `---' with pure expansion. @@ -169,10 +173,14 @@ %% could apply the replacements on their arguments---using %% |\ParseLigs{<arg>}|: %% 2011/11/27 \newcommand*{\ParseLigs}[1]{\ProcessStringWith{#1}{BlogLIGs}} -%% (`\ProcessStringWith' is from 'fifinddo'.) +%% (`\ProcessStringWith' is from 'fifinddo'.)---The package +%% 'blogligs.sty' described in \secref{moreligs} does these +%% things in a more powerful way. You can load it by calling +%% 'blog.sty''s package option |[ligs]| (v0.8): +\DeclareOption{ligs}{\AtEndOfPackage{\RequirePackage{blogligs}}} %% %% The replacement chain follows (TODO move to `.cfg'). -%% As opposed to `mdoccorr.cfg' for 'makedoc.sty', +%% As opposed to the file `mdoccorr.cfg' for 'makedoc.sty', %% we are dealing with ``normal \TeX" code %% (regarding category codes, 'fifinddo.sty' %% as of 2011/11/21 is needed for `\protect'). @@ -196,6 +204,11 @@ \CopyFDconditionFromTo{blog<-}{BlogLIGs} %% % TODO: Seems to slow down processing by a major part of a second. %% % Reduce replacements? Maybe do all of this within source file!? +%% The package 'markblog.sty' described in \secref{mark} extends this +%% to some markup resembling \Wikiref{wiki} editing. +%% This package may be loaded by 'blog.sty''s package option |[mark]| +%% (v0.8): +\DeclareOption{mark}{\AtEndOfPackage{\RequirePackage{markblog}}} %% %% === \xmltagcode{p} from Empty Line, Package Option === %% \label{sec:autopars} @@ -224,12 +237,12 @@ %% The following stuff is required for any web page %% (or hardly evitable). %% === General Tagging === -%% %% $$ -> \[ ... 2011/10/10: -%% \[|\TagSurr{<el-name>}{<attr>}{<content>}|\] +%% %% $$ -> \[ ... 2011/10/10 el-name -> elt-name 2012/09/14: +%% \[|\TagSurr{<elt-name>}{<attr>}{<content>}|\] %% (I hoped this way code would be more readable %% than with `\TagSurround' ...) -%% and \[|\SimpleTagSurr{<el-name>}{<content>}|\] -%% are used to avoid repeating element names <el-name> in +%% and \[|\SimpleTagSurr{<elt-name>}{<content>}|\] +%% are used to avoid repeating element names <elt-name> in %% definitions of \TeX\ macros that refer to ``entire" %% elements---as opposed to elements whose content often %% spans lines (as readable \HTML\ code). @@ -243,7 +256,15 @@ %% `\SimpleTagSurr' that is useful as the `\SimpleTagSurr' %% function occurs so frequently: \newcommand*{\SimpleTagSurr}[2]{<#1>#2</#1>} -\newcommand*{\STS}{} \let\STS\SimpleTagSurr %% 2010/05/23 +\newlet\STS\SimpleTagSurr %% 2010/05/23 +%% %% 2012/09/08: +%% With the space in `\declareHTMLattrib' as of 2012/08/28, +%% we remove the space between #1 and #2. +%% (Doing this by an option may be better TODO; +%% any separate attribute definitions must take care of this.) +% \newcommand*{\TagSurr}[3]{<#1#2>#3</#1>} +%% ... undone 2012/11/16, bad with ``direct" use of #2 +%% (with attributes not declared): \newcommand*{\TagSurr}[3]{<#1 #2>#3</#1>} %% %% === Attributes === %%% (General) %%% @@ -262,8 +283,8 @@ %% whether `\@<attr>' has been defined before: \newcommand*{\declareHTMLattrib}[1]{% \def\reserved@a{@#1}% - \@ifundefined{@#1}% - {\@namedef{@#1}##1{#1="##1"}}% + \@ifundefined\reserved@a %% \res... 2012/09/06 + {\@namedef{@#1}##1{ #1="##1"}}%% space 2012/08/28 \@notdefinable} %% So after `\declareHTMLattrib{<attr>}', `\@<attr>' is a %% \TeX\ macro expecting one parameter for the specification. @@ -311,14 +332,17 @@ \PackageWarning{blog}{Redefining \protect\@height} \let\@height\relax \declareHTMLattrib{height} %% 2010/07/24 +%% \pagebreak[3] %% 2012/09/08 %% We can enumerate the specifications allowed for %% |@align|: %% reimpl. 2011/04/24 \newcommand*{\@align@c}{\@align{center}} \newcommand*{\@align@l}{\@align{left}} \newcommand*{\@align@r}{\@align{right}} -\newcommand*{\@align}[1]{align="#1"} +% \newcommand*{\@align}[1]{ align="#1"} +\declareHTMLattrib{align} %% 2012/09/08 %% |@valign@t|: -\newcommand*{\@valign@t}{v\@align{top}} %% 2011/04/24 +% \newcommand*{\@valign@t}{v\@align{top}} %% 2011/04/24 +\newcommand*{\@valign@t}{ valign="top"} %% 2012/09/08 %% Some other uses of `\declareHTMLattrib' essential for %% \emph{tables:} %% emph 2011/04/24 \declareHTMLattrib{border} %% 2011/04/24 @@ -361,39 +385,70 @@ %% \label{sec:html-verb} %% 2011/11/23 %% |\xmltagcode{<chars>}| yields \qtd{\xmltagcode{<chars>}}: \newcommand*{\xmltagcode}[1]{\code{\lt#1\gt}} +%% %% elements 2012/09/14: +%% |\xmleltcode{<name>}{<content>}| displays the code for an entire +%% <name> element containing <content> without attributes: +\newcommand*{\xmleltcode}[2]{\code{\lt#1\gt#2\lt/#1\gt}} +%% |\xmleltcode{<name>}{<attrs>}{<content>}| displays the code for an entire +%% <name> element \emph{with} attribute text \qtd{<attrs>} +%% containing <content>: +\newcommand*{\xmleltattrcode}[3]{\code{\lt#1 #2\gt#3\lt/#1\gt}} %% |\xmlentitycode{<name>}| yields the code \qtd{`&&<name>;'} for an %% entity with name <name>: \newcommand*{\xmlentitycode}[1]{\code{\}} %% %% === Head === %% |\head| produces the first two tags that an \HTML\ file must start: -\newcommand*{\head}{<html><head>} %% ^^J rm 2010/10/10 +\newcommand*{\head}{<html><head>} %% ^^J rm 2010/10/10 %% |\MetaTag{<inside>}| creates a \xmltagcode{meta} tag: -\newcommand*{\MetaTag}[1]{\indenti<meta #1>} %% \indenti 2011/11/05 -%% |\charset{<code-page>}| +\newcommand*{\MetaTag}[1]{\indenti<meta #1>} +%% |\charset{<code-page>}| %% Content-T -> content-t 2012/09/06 \newcommand*{\charset}[1]{% - \MetaTag{http-equiv="Content-Type" \@content{text/html; #1}}} -%% TODO: \xmltagcode{meta \@name{description} \@content{<text>}} -%% %% <- 2011/11/05 -%% -%% |\robots{<instructions>}|: -\newcommand*{\robots}[1]{%% juergenf: index, follow, noarchive - \MetaTag{\@name{robots} \@content{#1}}} -%% |\norobots| for privacy: %% 2011/03/16 + \MetaTag{ http-equiv="content-type"\@content{text/html; #1}}} + %% <- space 2012/09/08 +%% \pagebreak[3] %% 2012/09/07 +%% |\metanamecontent{<name>}{<content>}| obviously: %% 2012/09/06 +\newcommand*{\metanamecontent}[2]{% + \MetaTag{\@name{#1}\@content{#2}}} +%% %% 2012/09/07: +%% |\author{<name>}| and |\date{<date>}| set according metadata, +%% somewhat opposing \LaTeX\ (TODO!?): +\renewcommand*{\author}{\metanamecontent{author}} +\renewcommand*{\date}{\metanamecontent{date}} +%% The name of |\metadescription{<text>}| allows using +%% `\begin{description}' (cf. secref{env}): +\newcommand*{\metadescription}{\metanamecontent{description}} +%% |\keywords{<text>}|: +\newcommand*{\keywords}{\metanamecontent{keywords}} +%% |\robots{<instructions>}|: %% using above 2012/09/06 +\newcommand*{\robots}{\metanamecontent{robots}} + %% #2 juergenf: index, follow, noarchive +%% |\norobots| for privacy %% 2011/03/16 +%% (cf. \urlhttpref{noarchive.net/meta} %% 2012/09/07 +%% and \wikienref{Robots meta tag\#The_robots_attribute}{% +%% \meta{Wikipedia}}: \newcommand*{\norobots}{\robots{noarchive,nofollow,noindex}} +%% |\metanamelangcontent{<name>}{<lang>}{<content>}|,\\ %% 2012/09/06 +%% in addition to the above, uses language code <lang>: %% 2012/09/07 +\newcommand*{\metanamelangcontent}[3]{% + \MetaTag{\@name{#1}\@lang{#2}\@content{#3}}} +%% So there can be language-dependent descriptions and keywords:\\ +%% |\langdescription{<text>}| and |\langkeywords{<>}| +\newcommand*{\langdescription}{\metanamelangcontent{description}} +\newcommand*{\langkeywords} {\metanamelangcontent{keywords}} %% |\stylesheet{<media>}{<css>}| uses <css>`.css' for %% `media="<media>"': \newcommand*{\stylesheet}[2]{% - \space\space %% 2010/09/10 - <link rel="stylesheet" media="#1" - \@type{text/css} %% \@type 2011/10/05 + \space\space %% 2010/09/10 + <link rel="stylesheet" media="#1"% + \@type{text/css}% %% \@type 2011/10/05 \@href{#2.css}>} %% %% 2011/10/05: %% Alternatively, style declarations may occur in the %% \xmltagcode{style} element. It can be accessed by the %% |{style}| environment (cf. \secref{env}): \newenvironment*{style}[1] - {<style \@type{text/css} media="#1">} + {<style\@type{text/css} media="#1">} {</style>} %% With |\title{<text>}|, <text> heads %% grammar? TODO 2010/04/08 %% the browser window: @@ -426,6 +481,11 @@ \newenvironment{commentlines}[1] %% 2010/05/17 {<!--#1} {-->} +%% === \CSS === %% 2012/07/30 spanstyle -> stylespan 2012/10/28 +%% |\stylespan{<css-style>}{<text>}| applies the \CSS\ styling +%% <css-style> to <text>: +\newcommand*{\stylespan}[1]{\TagSurr{span}{\@style{#1}}} +%% Not sure about \xmltagcode{div} yet ... TODO %% %% == Paragraphs and Line Breaks == %% \label{sec:p-br} @@ -443,8 +503,8 @@ %% commands---or ...: %% 2011/11/23 % \def\par{<p>} %% + empty lines !? 2010/04/26 %% <- difficult with `\stop'; 2010/09/10: -%% |\endgraf| produces \xmltagcode{/p}---TODO!? %% todo 2011/11/23 -\renewcommand*{\endgraf}{</p>} +%% |\endgraf| produces \xmltagcode{p}---TODO!? %% todo 2011/11/23 +\renewcommand*{\endgraf}{<p>} %% was </p> 2012/11/19 %% %% 2011/11/23: %% However, I rather have decided for inserting a literal %% \qtd{\xmltagcode{p}} using an editor (keyboard) shortcut. @@ -452,23 +512,14 @@ %% |\rightpar{<text>}| places <text> flush right. %% I have used this for \qtd{Last revised \dots} and for placing %% navigation marks. -\newcommand*{\rightpar}{\TagSurr p\@align@r} %% 2010/06/17 +\newcommand*{\rightpar}{\TagSurr p\@align@r} %% 2010/06/17 %% %% 2011/04/29: %% Often I use `\rightpar' with \textit{italics}, %% now there is |\rightitpar{<text>}| for this purpose: \newcommand*{\rightitpar}[1]{\rightpar{\textit{#1}}} %% -%% == Fonts == -%% \label{sec:fonts} -%% |\heading{<level>}{<text>}| prints <text> with size dependent -%% on <level>. The latter may be one out of -%% `1', `2', `3', `4', `5', `6'. %% 2011/05/12 -\newcommand*{\heading}[1]{\SimpleTagSurr{h#1}} -%% ... I might use `\section' etc. one day, I made `\heading' -%% when I could not control the sizes of the section titles -%% properly and decided first to experiment with the level numbers. -%% %% <- TODO re-order alltogether, cf. SelfHTML 2011/05/12 -%% +%% == Physical Markup (Inline) == %% mod. 2012/09/13 +%% \label{sec:phys} %% We ``re-use" some \LaTeX\ commands for specifying font attributes, %% rather than (re)defining macros `\i', `\b', `\tt', ... %% \[|\textit{<text>}| \qquad @@ -477,20 +528,35 @@ \renewcommand*{\textit}{\SimpleTagSurr i} %% etc. for |\textbf|, |\texttt| ...: \renewcommand*{\textbf}{\SimpleTagSurr b} -\renewcommand*{\texttt}{\SimpleTagSurr{tt}} %% 2010/06/07 -%% |\textsf{<text>}| chooses some sans-serif: %% 2011/10/20 -\renewcommand*{\textsf}{% - \TagSurr{span}{\@style{font-family:sans-serif}}} -%% |\textcolor| is from \LaTeX's 'color' package +\renewcommand*{\texttt}{\SimpleTagSurr{tt}} %% 2010/06/07 +%% |\textsf{<text>}| chooses some sans-serif: %% 2011/10/20 2012/07/30 +\renewcommand*{\textsf}{\stylespan{font-family:sans-serif}} +%% |\textup{<text>}| may undo surrounding slanting or ...: %% 2012/08/01 +\renewcommand*\textup{\stylespan{font-style:normal}} +%% |\textcolor{<color>}{<text>}| %% args 2012/08/01 +%% is from \LaTeX's 'color' package %% that we won't load for generating \HTML, %% so it is ``new" here, it is just natural to use it -%% for coloured text. %% (2010/05/15): -%% \xmltagcode{font} is deprecated, use %% 2011/10/20 -%% \xmltagcode{span} instead: -% \newcommand*{\textcolor}[1]{\TagSurr{font}{color="#1"}} -\newcommand*{\textcolor}[1]{\TagSurr{span}{\@style{color:#1}}} +%% for coloured text. %% (2010/05/15): +%% \xmltagcode{font} is deprecated, use %% 2011/10/20 +%% \xmltagcode{span} instead: %% \span... 2012/07/30: +\newcommand*{\textcolor}[1]{\stylespan{color:#1}} +%% %% moves here from "Misc." 2012/09/13: +%% \TeX/\LaTeX's |\underbar{<text>}| is redirected to the \xmltagcode{u} +%% element: %% 2012/06/07 +\renewcommand*{\underbar}{\SimpleTagSurr u} +%% +%% == Logical Markup == +%% %% \heading moves here from former section 2012/09/13: +%% |\heading{<level>}{<text>}| prints <text> with size dependent +%% on <level>. The latter may be one out of +%% `1', `2', `3', `4', `5', `6'. %% 2011/05/12 +\newcommand*{\heading}[1]{\SimpleTagSurr{h#1}} +%% ... I might use `\section' etc. one day, I made `\heading' +%% when I could not control the sizes of the section titles +%% properly and decided first to experiment with the level numbers. +%% %% <- TODO re-order alltogether, cf. SelfHTML 2011/05/12 %% -%% == Logical Markup == %% |\code{<text>}| marks <text> as ``code," %% just accessing te \xmltagcode{code} element, %% while standard \LaTeX\ does not provide a `\code' command: @@ -511,18 +577,25 @@ %% For tagging acronyms, %% \HTML\ offers the \xmltagcode{acronym} element, %% and the \httpref{ctan.org/pkg/tugboat}{\acro{TUG}boat macros} -%% provide |\acro{<chars>}|. I have used the latter for some +%% provide |\acro{<LETTERS>}|. I have used the latter for some %% time in my package documentations anyway. For v0.7, %% 2012/01/06 -%% I add the latter here as an alias for |\acronym{<chars>}| -%% (supporting both naming policies mentioned in Sec.~\ref{name-policy}): +%% I add the latter here as an alias for |\acronym{<LETTERS>}| +%% (supporting both naming policies mentioned in \secref{name-policy}): \newcommand*{\acronym}{\SimpleTagSurr{acronym}} -\newcommand*{\acro}{} \let\acro\acronym +\newlet\acro\acronym %% %% 2012/02/04: %% |\newacronym{<LETTERS>}| saves you from doubling the <LETTERS> %% when you want to create the shorthand macro `\<LETTERS>': \newcommand*{\newacronym}[1]{% \expandafter\newcommand\expandafter*\csname#1\endcsname{% \acronym{#1}}} +%% However, \xmltagcode{acronym} is +%% \wikienref{HTML elements#Phrase_elements}{deprecated}. +%% You may use |\abbr{<LETTERS>}| and |\newabbr{<LETTERS>}| instead: +\newcommand*{\abbr}{\SimpleTagSurr{abbr}} %% 2012/09/13 +\newcommand*{\newabbr}[1]{% + \expandafter\newcommand\expandafter*\csname#1\endcsname{% + \abbr{#1}}} %% %% == Environments == %% \label{sec:env} @@ -550,9 +623,9 @@ %% 2010/05/22 ...%% doc 2010/11/06 %% %% As formerly with -%% \hyperref[sec:fonts]{fonts}, %% \hyperref 2012/01/06 +%% \hyperref[sec:phys]{physical markup}, %% \hyperref 2012/01/06 %% we have \emph{two} policies for -%% \label{name-policy} %% 2012/01/06 +%% \label{sec:name-policy} %% 2012/01/06 2012/11/28 %% \textbf{choosing macro names}: %% (i)~using an \emph{existing} \HTML\ element name, %% (ii)~using a \LaTeX\ command name for accessing a somewhat @@ -622,7 +695,7 @@ %% (that we actually provide as well, %% towards printing from the same source): \newcommand*{\hanc}[1]{\TagSurr a{\@name{#1}}} -\@ifdefinable\hypertarget{\let\hypertarget\hanc} +\newlet\hypertarget\hanc %% |\hancref{<name>}{<target>}{<text>}| makes <text> an anchor with %% \HTML\ label <name> and at the same time a link to <target>: \newcommand*{\hancref}[2]{\TagSurr a{\@name{#1} \@href{#2}}} @@ -640,7 +713,7 @@ %% list of links to sections of the page. %% It is just like 'hyperref''s |\hyperlink{<name>}{<text>}|: \newcommand*{\ancref}[1]{\href{\##1}} -\@ifdefinable\hyperlink{\let\hyperlink\ancref} +\newlet\hyperlink\ancref %% |\autref{<text>}| makes <text> a link to an anchor %% named <text> itself: \newcommand*{\autref}[1]{\ancref{#1}{#1}} %% 2010/07/04 @@ -707,15 +780,16 @@ %% With v0.4, macros based on `\httpref' are moved to 'texlinks.sty': \RequirePackage[blog]{texlinks}[2011/02/10] %% Former |\urlref| appears as |\urlhttpref| there ... -\newcommand \urlref {} \let\urlref\urlhttpref +\newlet\urlref\urlhttpref %% ... and `\ctanref' has changed its meaning there as of 2011/10/21. %% %% 2011/02/07: %% 'texlinks' sometimes uses a ``permanent alias" %% |\NormalHTTPref| of `\httpref': -\@ifdefinable \NormalHTTPref {\let\NormalHTTPref\httpref} +\newlet\NormalHTTPref\httpref %% |\httpsref| is the analogue of `\httpref' for `https://': \newcommand*{\httpsref}{\hnewref{https://}} %% +%% % \pagebreak %% 2012/07/30 rm. 2012/09/13 %% == Characters/Symbols == %% `Symbols' until 2011/09/25 %% === Basic Preliminaries === %% |&| is made `other' for using it to call \HTML's @@ -729,7 +803,7 @@ %% (TODO; but sometimes redefining ...) %% 2011/02/26 \newcommand*{\declareHTMLsymbol}[1]{\@namedef{#1}{}} %% %% TODO replace \@namedef with \defcsname -%% |\declareHTMLsymbols{{<name>}<list>}| essentially issues +%% |\declareHTMLsymbols{<name>}{<list>}| essentially issues %% corr. br. 2012/08/02 %% \[`\declareHTMLsymbol{<attr>}\declareHTMLsymbols{<list>}'\] %% while `\declareHTMLsymbols{}' essentially does nothing---great, %% this is an explanation by recursion! @@ -780,18 +854,36 @@ {thetasym}{upsih}{piv} } %% %% === Arrows === -%% Arrows: |\gets|, |\to|, |\uparrow|, |\downarrow| ... -\renderHTMLsymbol {\gets} {larr} -\renderHTMLsymbol {\to} {rarr} -\renderHTMLsymbol {\uparrow} {uarr} %% 2010/09/15 -\renderHTMLsymbol {\downarrow}{darr} %% 2010/09/15 +%% ---somewhat completed 2012/07/25. +%% +%% |\downarrow|, |\leftarrow|, |\leftrightarrow|, |\rightarrow|, |\uparrow|: +\renderHTMLsymbol {\downarrow} {darr} %% 2010/09/15 +\renderHTMLsymbol {\leftarrow} {larr} +\renderHTMLsymbol {\leftrightarrow}{harr} +\renderHTMLsymbol {\rightarrow} {rarr} +\renderHTMLsymbol {\uparrow} {uarr} %% 2010/09/15 +%% Aliases |\gets| and |\to| were implemented first as stand-alones, +%% now are treated by `\let': +\let \gets \leftarrow +\let \to \rightarrow +%% |\Downarrow|, |\Leftarrow|, |\Leftrightarrow|, +%% |\Rightarrow|, |\Uparrow| (i.e., double variants): +\renderHTMLsymbol {\Downarrow} {dArr} +\renderHTMLsymbol {\Leftarrow} {lArr} +\renderHTMLsymbol {\Leftrightarrow}{hArr} +\renderHTMLsymbol {\Rightarrow} {rArr} +\renderHTMLsymbol {\Uparrow} {uArr} +%% |\crarrow| accesses \HTML's `crarr' entity (symbol for return key), +%% named ``downwards arrow with tip leftwards" in Unicode (U+21b2): +\newcommand*{\crarrow}{↵} %% 2012/09/13 %% %% === Dashes === %% The ligatures `--' and `---' for en~dash and em~dash %% don't work in our expanding mode. Now, \HTML's policy %% for choosing names often prefers shorter names than %% are recommended for (La)\TeX, so here I adopt a \emph{third} -%% police besides (i) and (ii) earlier; cf. \LaTeX's +%% policy %% was "police" 2012/07/25 +%% besides (i) and (ii) earlier; cf. \LaTeX's %% `\textemdash' and `\textendash'.---`\newcommand' %% does not accept macros whose names start with `end', so: %% |\endash|, |\emdash| ... @@ -818,7 +910,7 @@ %% (U+2007, cf.~\wikienref{Figure space}{\meta{Wikipedia}}): \newcommand*{\figurespace}{&\#8199;} %% -%% === Quotes, Apostrophe, Prime === +%% === Quotes, Apostrophe === %% \label{sec:quotes} %% |\lq|, |\rq| \renderHTMLsymbol{\lq} {lsquo} @@ -832,42 +924,75 @@ % \newcommand*{\screenqtd}[1]{`#1'} %% rm. 2011/11/08 \newcommand*{\urlapostr} {'} %% 2010/09/10 %% The actual change of |'| is in `\BlogCodes' -%% (\secref{process}). +%% (\secref{catcodes}). %% -%% |\bdquo|, |\ldquo|, |\rdquo|, |\sbquo|, |\prime|, |\Prime| ... +%% %% mod. 2012/10/24f.: +%% |\bdquo| (bottom), |\ldquo|, |\rdquo|, |\sbquo| (single bottom): \declareHTMLsymbol{bdquo} %% 2011/09/23 -\declareHTMLsymbol{ldquo} -\declareHTMLsymbol{rdquo} +\declareHTMLsymbols{{ldquo}{rdquo}} \declareHTMLsymbol{sbquo} %% 2010/07/01 -\renewcommand*{\prime}{′} -\declareHTMLsymbol{Prime} -%% A special 'blog.sty' service is |\asciidq| for a ``straight" -%% double quotation mark. It is useful for \emph{typesetting code} -%% and also can be used to get around automatical conversion -%% of straight into typographical quotation marks as with -%% `\catchdq': %% 2011/12/21 -\newcommand*{\asciidq}{\string"} +\declareHTMLsymbols{{laquo}{raquo}} +%% Angled quotes |\laquo| and |\raquo| as well as their +%% ``single" versions |\lsaquo| and |\rsaquo|: +\declareHTMLsymbols{{laquo}{lsaquo}{raquo}{rsaquo}} %% 2012/10/25 +%% As of 2012/09/17, |\asciidq| and |\asciidqtd{<no-dqs>}| +%% (e.g., for attributes after `\catchdqs' +%% or typesetting code) +%% move to package 'catchdq.sty' in the 'catcodes' bundle. +%% %% |\quot| accesses the same symbol in \HTML's terms %% (e.g., for displaying code): \declareHTMLsymbol{quot} %% 2012/01/21 %% |\endqtd{<text>}| quotes in the English style using double quote %% marks, |\enqtd{<text>}| uses single quote marks instead, %% |\dedqtd{<text>}| quotes in German style, %% 2011/12/21: -%% and |\asciidqtd{<text>}| and |\quoted{<text>}| %% 2012/01/21 -%% use straight double quotation marks: -\def\endqtd#1{\ldquo#1\rdquo} %% \newcommand: ``\end" -\newcommand*\enqtd[1]{\lq#1\rq} %% 2010/09/08, \new... 2010/11/08 -\newcommand*{\dedqtd} [1]{\bdquo#1\ldquo} -\newcommand*{\deqtd} [1]{‚#1‘} %% corr. 2011/05/14 -\newcommand*{\asciidqtd}[1]{\asciidq#1\asciidq} %% 2011/12/21 +%% |\quoted{<text>}| uses straight double quotation marks. +%% %% 2012/10/24: +%% Settings from the \ctanpkgref{langcode} package may need to +%% be overridden. (A warning might be nice then TODO) +\def\endqtd#1{\ldquo#1\rdquo} +\def\enqtd #1{\lq#1\rq} %% 2010/09/08 +\def\dedqtd#1{\bdquo#1\ldquo} +\def\deqtd #1{\sbquo#1\lq} %% corr. 2012/10/25 \newcommand*{\quoted} [1]{\quot#1\quot} %% 2012/01/21 %% |\squoted{<text>}| surrounds <text> with ``straight" %% single quotation marks, useful for other kinds %% of quoting in computer code: \newcommand*{\squoted}[1]{\urlapostr#1\urlapostr} %% 2012/01/21 -%% TODO `\glqq' from 'german.sty' etc. %% 2011/09/22 +%% +%% === (Sub- and) Superscript Digits/Letters === %% 2012/10/25 +%% As Plain \TeX\ and \LaTeX\ provides an alias `\sp' for +%% `^', I use |\spone|, |\sptwo|, |\spthree|, |\spa|, and +%% |\spo| for superscript 1, 2, 3, \qtd{a}, and \qtd{o}: +\newcommand*{\spone}{¹} +\newcommand*{\sptwo}{²} +\newcommand*{\spthree}{³} +\newcommand*{\spa}{ª} +\newcommand*{\spo}{º} +%% For slanted fractions, I think of \ctanpkgref{xfrac}'s +%% `\sfrac{<numerator>}{<denominator>}'. +%% |\sfrac{1}{2}|, |\sfrac{1}{4}|, and |\sfrac{3}{4}| work so far: +\newcommand*{\sfrac}[2]{&frac#1#2;} %% %% === Math === +%% %% divided/reordered section 2012/08/07 +%% ==== Symbols ==== +%% (\TeX\ math type ``Ord")---|\aleph|: +\renderHTMLsymbol{\aleph}{alefsym} +%% I provide |\degrees| for the degree symbol. +%% \LaTeX\ already has `\deg' as an operator, +%% therefore I do not want to use `\declareHTMLsymbol' +%% here. +\newcommand*{\degrees}{°} +%% We stick to \TeX's |\emptyset| %% 2011/05/08 +\renderHTMLsymbol{\emptyset}{empty} %% 2011/04/14 +%% |\exists| and |\forall|: %% 2012/10/05 +\renderHTMLsymbol{\exists}{exist} +\declareHTMLsymbol{forall} +%% |\prime| can be used for minutes, |\Prime| for seconds: +\renderHTMLsymbol{\prime}{prime} \declareHTMLsymbol{Prime} +%% +%% ==== Relations ==== %% %% doc. extended 2011/05/08: %% Because \verb+<+ and \verb+>+ are used for \HTML's %% element notation, we provide aliases |\gt|, |\lt| @@ -880,6 +1005,15 @@ %% We also provide their \TeX\ aliases %% |\geq|, |\leq|, |\neq|: %% 2011/05/11 \let\geq\ge \let\leq\le \let\neq\ne +%% Besides \TeX's |\subset| and |\subseteq|, +%% we provide short versions |\sub| and |\sube| %% 2011/05/08 +%% inspired by \HTML: +\declareHTMLsymbol{sub} %% 2011/04/04 +\let\subset\sub %% 2011/05/08 +\declareHTMLsymbol{sube} %% 2011/03/29 +\let\subseteq\sube %% 2011/05/08 +%% +%% ==== Delimiters ==== %% Angle braces |\langle| and |\rangle|: \renderHTMLsymbol{\langle}{lang} \renderHTMLsymbol{\rangle}{rang} @@ -891,24 +1025,22 @@ \begingroup \Delimiters\[\] \gdef\{[{] \gdef\}[}] \endgroup +%% +%% ==== Binary Operations ==== %% \TeX's |\ast| corresponds to the ``lower" version -%% of the asterisk: -\renderHTMLsymbol{\ast}{lowast} %% 2011/03/29 -%% Besides \TeX's |\subset| and |\subseteq|, -%% we provide short versions |\sub| and |\sube| %% 2011/05/08 -%% inspired by \HTML: -\declareHTMLsymbol{sub} %% 2011/04/04 -\let\subset\sub %% 2011/05/08 -\declareHTMLsymbol{sube} %% 2011/03/29 -\let\subseteq\sube %% 2011/05/08 -%% \TeX\ and \HTML\ agree on |\cap|, |\cup|, %% 2011/05/08 -%% and |\times|: %% 2011/04/04 +%% of the asterisk: %% here 2012/10/05 +\renderHTMLsymbol{\ast}{lowast} %% 2011/03/29 +%% |\pm| renders the plus-minus symbol: %% 2012/08/07 +\renderHTMLsymbol{\pm}{plusmn} +%% \TeX\ and \HTML\ agree on |\cap|, |\cup|, +%% and |\times|: +%% 2011/05/08 +%% 2011/04/04 \declareHTMLsymbols{{cap}{cup}{times}} %% 2012/01/06 -%% We stick to \TeX's |\emptyset| %% 2011/05/08 -\renderHTMLsymbol{\emptyset}{empty} %% 2011/04/14 %% We need |\minus| since math mode switching is %% not supported by 'blog': %% 2011/05/08 \declareHTMLsymbol{minus} %% 2011/03/31 +%% %% We override \HTML's \lq`ˆ'\rq\ %% \lq\rq 2011/09/08 %% to get \TeX's \cs{circ} %% (i.e., $\circ$; %% 2011/05/08: @@ -921,11 +1053,17 @@ %% the \wikideref{Malzeichen\#Skalarprodukt} %% {German \meta{Wikipedia}} %% 2011/09/08! \declareHTMLsymbol{sdot} %% 2011/05/08 -%% I provide |\degrees| for the degree symbol. -%% \LaTeX\ already has `\deg' as an operator, -%% therefore I do not want to use `\declareHTMLsymbol' -%% here. -\newcommand*{\degrees}{°} +%% +%% ==== Operators ==== %% 2012/08/07 +%% |\prod|, |sum|: +\renderHTMLsymbol{\prod}{product} +\declareHTMLsymbol{sum} +%% +%% +%% === Currencies === %% 2012/08/06 +%% |\cent|, |\currency|, |\euro|, |\pound|, |\yen|: %% ...symbols 2012/08/07: +\declareHTMLsymbols{{cent}{currency}{euro}{pound}{yen}} +%% You get the \$ symbol simply by |$|. %% %% === Other === %% The tilde |~| is used for its wonderful purpose, @@ -947,17 +1085,17 @@ \renderHTMLsymbol{\ss}{szlig} %% |\copyright|: \renderHTMLsymbol{\copyright}{copy} -%% |\bullet| %% 2011/03/29 +%% |\bullet| %% 2011/03/29 \renderHTMLsymbol{\bullet}{bull} -%% |\euro|: %% 2011/05/09 -\declareHTMLsymbol{euro} %% \LaTeX's |\S| prints the \dqtd{\Wikienref{section sign}} %% \qtd{\S}. In \HTML, the latter accessed by `§', %% we \dqtd{redirect} `\S' to this: %% 2011/05/18 \renderHTMLsymbol{\S}{sect} -%% |\dagger|, |\ddagger|: %% 2011/10/01 +%% |\dagger|, |\ddagger|: %% 2011/10/01 \renderHTMLsymbol{\dagger}{dagger} \renderHTMLsymbol{\ddagger}{Dagger} +%% |\P| renders the paragraph sign or pilcrow: %% 2012/08/07 +\renderHTMLsymbol{\P}{para} %% Sometimes (due to certain local settings) the notations %% \dqtd{`&&<characters>;'} or \dqtd{`&&&#<number>;'} %% (for \Wikienref{Unicode}) may not be available. @@ -984,7 +1122,7 @@ %% and typewriter imitations usually look terrible on %% web pages. So I am waiting for a better idea and %% let `\prg' just remove the braces. -\newcommand*{\prg}[1]{} \let\prg\@firstofone +\newlet\prg\@firstofone \newcommand*{\BibTeX}{\prg{BibTeX}} %% 2010/09/13 \renewcommand*{\TeX}{\prg{TeX}} \renewcommand*{\LaTeX}{\prg{LaTeX}} @@ -1026,7 +1164,7 @@ \newcommand*{\startTable}[1]{<table #1>} \def\endTable{</table>} %% |\@frame@box| among the `\startTable' <attributes> -%% draws a frame about the table, |\@frame@groups| +%% draws a frame around the table, |\@frame@groups| %% about -> around %% separates ``groups" by rules: \newcommand*{\@frame@box}{\@frame{box}} \newcommand*{\@frame@groups}{\@frame{groups}} @@ -1205,10 +1343,10 @@ %% Plain \TeX's and \LaTeX's |\cr| and |\endline| are redefined %% for closing and opening rows and cells, including code cosmetic: \renewcommand*{\cr}{\indentii\endTd\CLBrk\indenti\endtr\CLBrk - \indenti\starttr\CLBrk\indentii\StartTd} + \indenti\startTR\CLBrk\indentii\StartTd} \let\endline\cr -%% TODO variants like `\CR' for special (colored, boldface?) cells -%% starting row +%% |\startTR| is a hook defaulting to `\starttr': %% 2012/08/23 +\newlet\startTR\starttr %% %% === Filling a Row with Dummy Cells === %% These macros were made, e.g., for imitating a program window @@ -1399,3 +1537,41 @@ v0.7 2011/11/03 {tablecoloredboldrow} 2012/05/13 \ss; better comment on \uml; #EEEEEE not "web-safe" 2012/05/15 xEDIT folding in tables section +part of MOREHYPE RELEASE r0.6 +v0.8 2012/06/07 \underbar + 2012/07/25 arrows completed [no: 2012/09/13]; + doc. "police" -> "policy" + 2012/07/30 \spanstyle, applied; doc. \pagebreak + 2012/08/01 \textup + 2012/08/02 doc. corr. braces for \DeclareHTMLsymbols + 2012/08/06 sec. currencies + 2012/08/07 divided math section, using \declareHTMLsymbols, + various additional symbols + 2012/08/23 \startTR + 2012/08/28 \MakeActiveLet\'\rq with `actcodes.sty', + attributes start with space + 2012/09/02 about -> around + 2012/09/06 Content-T -> content-t - bugfix?, + \BlogProvidesFile with DOCTYPE, some attribute + lists rely on space from \declareHTMLattrib, + there another \reserved@a; + "Head": \metanamecontent, \metanamelangcontent + 2012/09/07 "Head": \author, \date, \metadescription, + \keywords; lang variants + 2012/09/08 \TagSurr and \MetaTag without space, + \declareHTMLattrib{align}, \@valign@t adjusted; + \pagebreak[3] + 2012/09/13 \crarrow, "Fonts" -> "Physical markup" etc., + \abbr, \newabbr + 2012/09/14 \xmleltcode, \xmleltattrcode; el-name -> elt-name + 2012/09/17 \asciidq + \asciidqtd move to `catchdq.sty' + 2012/10/03 \newlet; + doc.: label process -> catcodes, using \secref + 2012/10/05 moved \ast; \exists, \forall + 2012/10/24 quotes: completed, override `langcode.sty' + 2012/10/25 using \DeclareHTMLsymbols for quotes, corr. there, + \spone etc., \sfrac + 2012/10/28 spanstyle -> stylespan + 2012/11/16 \TagSurr and \MetaTag with space again + 2012/11/19 \endgraf -> <p> + 2012/11/29 `blogligs.sty', `markblog.sty' ([ligs], [mark]) diff --git a/Master/texmf-dist/tex/latex/morehype/blogdot.sty b/Master/texmf-dist/tex/latex/morehype/blogdot.sty index 900025e9d35..a54c9d08603 100644 --- a/Master/texmf-dist/tex/latex/morehype/blogdot.sty +++ b/Master/texmf-dist/tex/latex/morehype/blogdot.sty @@ -1,5 +1,5 @@ \NeedsTeXFormat{LaTeX2e}[1994/12/01] %% \newcommand* etc. -\ProvidesPackage{blogdot}[2011/10/22 v0.4 HTML presentations (UL)] +\ProvidesPackage{blogdot}[2012/11/21 v0.41 HTML presentations (UL)] %% copyright (C) 2011 Uwe Lueck, %% http://www.contact-ednotes.sty.de.vu %% -- author-maintained in the sense of LPPL below. @@ -77,12 +77,16 @@ %% \label{sec:dot-start} %% |\startscreenpage{<style>}{<anchor-name>}| \newcommand*{\startscreenpage}[2]{%% 0 2011/09/25!?: + \\\CLBrk %% 2012/11/19 +%% <- `\\' suddenly necessary, likewise in `texblog.fdf' +%% with `\NextView' and `\nextruleview'. +%% Due to recent `firefox'? %% 2012/11/21 \startTable{% \@cellpadding{0} \@cellspacing{0}% - \maybe@blogdot@borders %% 2011/10/12 - \maybe@blogdot@frame %% 2011/10/14 + \maybe@blogdot@borders %% 2011/10/12 + \maybe@blogdot@frame %% 2011/10/14 }% - \CLBrk %% 2011/10/03 + \CLBrk %% 2011/10/03 \starttr %% First cell determines both %% height of upper page margin |\upperpagemargin| @@ -106,7 +110,7 @@ \starttr \emptycell\startTd{\@height{\typeareaheight}#1}% } -%% |\titlescreenpage| (`\STARTscreenpage' TODO?) %% 2011/10/03 +%% |\titlescreenpage| \ (`\STARTscreenpage' TODO?) \ %% 2011/10/03 \ 2012/11/19 %% opens the title page (I thought). To get it to your screen, %% (make and) click a link like %% \[`\ancref{START}{start presentation}':\] @@ -160,7 +164,7 @@ %% and aligning it flush left. \newcommand*{\nextscreenpage}[2]{% \screenbottom{#2}\CLBrk - \hrule \CLBrk + \hrule \CLBrk \startscreenpage{#1}{#2}} %% |\nextcenterscreenpage{<anchor-name>}| chooses centering %% the slide content: @@ -296,6 +300,7 @@ } \TryBlogDotCFG %% +%% \pagebreak %% 2012/11/21 %% == The End and HISTORY == \endinput %% VERSION HISTORY @@ -321,3 +326,6 @@ v0.3 2011/10/11 \HVspace, \BlogDotFillText v0.4 2011/10/21 \usecurrdirctan 2011/10/22 FillText with <p> instead of </p>, its color uses <font>; some more reworking of doc. + part of morehype RELEASE r0.6 +v0.41 2012/11/19 \startscreenpage with \\; doc. \ + 2012/11/21 updating version infos, doc. \pagebreak diff --git a/Master/texmf-dist/tex/latex/morehype/blogexec.sty b/Master/texmf-dist/tex/latex/morehype/blogexec.sty new file mode 100644 index 00000000000..917b847d556 --- /dev/null +++ b/Master/texmf-dist/tex/latex/morehype/blogexec.sty @@ -0,0 +1,280 @@ +\NeedsTeXFormat{LaTeX2e}[1994/12/01] %% \newcommand* etc. +\ProvidesPackage{blogexec}[2012/08/29 v0.2 + assignments with blog.sty (UL)] +%% copyright (C) 2011 Uwe Lueck, +%% http://www.contact-ednotes.sty.de.vu +%% -- author-maintained in the sense of LPPL below. +%% +%% This file can be redistributed and/or modified under +%% the terms of the LaTeX Project Public License; either +%% version 1.3c of the License, or any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% We did our best to help you, but there is NO WARRANTY. +%% +%% Please report bugs, problems, and suggestions via +%% +%% http://www.contact-ednotes.sty.de.vu +%% +%% == Requirements == +%% The \ctanpkgref{dowith} package is needed for managing +%% and running lists of macros to be intercepted: +\RequirePackage{dowith} +%% Admittedly, `\do' and `\@elt' lists (as discussed in `dowith.pdf') +%% would be faster than the 'dowith' method, which might be relevant +%% here (TODO: how much?). I may abandon 'dowith' later, I just cannot +%% afford removing it now (2011/11/05, TODO). +%% +%% == Processing Source Files == +%% With |\BlogInterceptExtra|, 'blog.sty' +%% deals with \emph{empty} input lines just like +%% \[`\BlogCopyFile[<changes>]{<src-file>}'\] +%% does; \emph{otherwise} the content of `\fdInputLine' is copied to +%% |\fdOutputCode|. Before the latter is writen to the output file +%% <output> (as determined by a recent `\ResultFile{<output>}'), +%% |\BlogInterceptions| is run, its purpose is to extract assignment and other +%% ``execution" commands and to turn `\fdOutputCode' into an +%% expandable macro. We use `\def' because 'blog.sty' may have +%% provided a preliminary definition earlier: +\def\blog@icl@xtra{% + \let\BlogProcessLine\BlogAllowIntercepting + \let\BlogInterceptions\AllBlogInterceptions} +\def\BlogInterceptExtra{\@ifstar@intercept@hash\blog@icl@xtra} +\def\@ifstar@intercept@hash#1{\@ifstar{#1\BlogInterceptHash}#1} +%% And this is the default setting (TODO!?): +\BlogInterceptExtra +%% Below, there are commands for restricted (faster---TODO: relevant? +%% or less complex, to reduce danger) +%% interception functionality. (Maybe the file should be restructured.) +%% |\AllBlogInterceptions| first is nothing: +\InitializeListMacro\AllBlogInterceptions +%% ---and should become more below. +%% +%% |\BlogAllowIntercepting| stores the difference to 'blog.sty': +\newcommand*{\BlogAllowIntercepting}{% + \let\fdOutputCode\fdInputLine + \BlogInterceptions +%% When, after removing the intercepted command, the line is +%% empty, it is \emph{not} written into output: + \ifx\fdOutputCode\@empty \else + \WriteResult{% + \ProcessExpandedWith\fdOutputCode\BlogOutputJob}% +%% ... enabling ``ligatures" with 'blog.sty' v0.7. %% 2011/11/21 + \fi} +%% ... TODO: in 'fifinddo' with something like `\fdInterceptions'? +%% +%% Especially for storing file-specific macro definitions +%% with `\EXECUTE' (below), a parameter character +%% (usually hash mark) is needed. +%% %% mod. 2011/11/20: +%% 'fifinddo.sty' (so far---2011/11/20) +%% does not include it with `\BasicNormalCatCodes', +%% and 'blog.sty' +%% does not include it with `\BlogCodes' +%% ---the following |\BlogInterceptHash| does. +%% Moreover, |\MakeHashParameter| enables such definitions +%% when placed in a source file within the argument of a +%% separate(!) `\EXECUTE'. +\providecommand*{\MakeHashParameter}{\catcode`\#6 } +\def\BlogInterceptHash{% + \ToListMacroAdd\BlogCodes\MakeHashParameter + \MakeHashParameter} +%% TODO: default? 0-arg interception? +%% +%% == Intercepting Single-Parameter Commands == +%% === The General Method === +%% Macros to be intercepted that have a single argument will be +%% collected in |\blogOneArgInterceptions|: +\InitializeListMacro\blogOneArgInterceptions +\ToListMacroAdd\AllBlogInterceptions{% + \DoWithAllIn\blogTryOneArgCmd + \blogOneArgInterceptions} +%% Here |\blogTryOneArgCmd{<cmd>}| creates a ``sandbox" for parsing +%% in a similar way as 'fifinddo' does it, searching for <cmd>. +%% The method there was made thinking of reading files with +%% ``plain text" category codes, not aware of 'blog.sty'. +%% Maybe this was a mistake, and I will reconsider it. +%% There I also introduce a separate sandbox macro +%% for each search pattern, thinking of different types of sandboxes. +%% This is not done/needed here (strangely, TODO).---The sandbox +%% starts with the parsing macro. The latter's name derives from +%% <cmd> by prefixing something to its name. +%% |\StripEsc| is a little helper for removing the backslash +%% from a macro name. +\providecommand*{\StripEsc}{\expandafter\@gobble\string} +%% Name spaces: %% 2012/08/29 +\newcommand*{\blog@x}{\StripEsc\blogx} +\newcommand*{\blogTryOneArgCmd}[1]{% + \csname \blog@x:\StripEsc#1\expandafter\endcsname + \fdOutputCode \@gobble#1\@empty\@nil} +%% Here, `\@empty' is the dummy argument for <cmd>---this is what +%% must be modified for <cmd> with more than one parameter. +%% At present (2011/11/05), that tail starting with `\@gobble' +%% may stay at the end of `\fdOutputCode' for each interception per +%% `\fdInputLine', until it expands to nothing in the `\write'. +%% +%% |\MakeBlogOneArgInterception{<cmd>}{<run>}{<write>}| \ \ +%% says that when <cmd> is found in `\fdOutputCode', +%% <run> should be executed, and `<cmd><arg>' should be replaced +%% by <write> in `\fdOutputCode' where <arg> is the argument for +%% <cmd> found in `\fdOutputCode'. Let <arc> be <arg> without +%% delimiting braces if `<arg>' is `{<arc>}' +%% (otherwise `<arc>' is the same as `<arg>'). +%% Then use `#2' for referring to <arc> inside <run> and <write>. +%% (Sorry, I cannot afford replacing `#2' by a more natural +%% placeholder right now.) +\begingroup + \catcode`\|\z@ |MakeOther|\% %% \z@ 2011/11/22 + |@ifdefinable|MakeBlogOneArgInterception{% + |gdef|MakeBlogOneArgInterception#1#2#3{% +%% First we add <cmd> to `\blogOneArgInterceptions', +%% unless it is already there: %% 2011/11/07 + |TestListMacroForToken|blogOneArgInterceptions#1% + |ifin@ + |PackageWarning{blogexec}{Redeclaring |string#1.}% + |else + |ToListMacroAdd|blogOneArgInterceptions#1% + |fi +%% Now the parsing macro is defined, together with the actions +%% depending on the result: +%% %% TODO csnames/namemod.sty 2011/11/22 + |@namedef{|blog@x:|StripEsc#1}##1#1##2##3|@nil{% +%% #3 will be empty if and only if <cmd> does \emph{not} occur +%% in `\fdOutputCode'. A backslash made ``other" will not occur +%% in `\fdOutputCode', therefore the following +%% `\ifx' becomes true if and only if #3 is empty, i.e., +%% <cmd> does \emph{not} occur in `\fdOutputCode': + |ifx\##3\% +%% In this case we just do nothing. + |else +%% Otherwise, we apply <run> and <write>: + #2% + |def|fdOutputCode{##1#3##3}% + |fi}% + }% + }% +|endgroup +%% %% was single `%' 2011/11/20 +%% === &\EXECUTE === +%% |\EXECUTE{<run>}| runs <run> and is removed from the +%% output line: +\MakeBlogOneArgInterception\EXECUTE{#2}{} +%% You can \strong{store settings} <set> for processing a source +%% file in this file by `\EXECUTE{<set>}' +%% (e.g., shorthand macros only useful in this single file). +%% You even can switch off the interception functionality +%% after running the other settings <set> +%% by `\EXECUTE{<set>\BlogCopyLines}'. +%% +%% `\EXECUTE{<run>}' may be a great relief thinking of pure +%% expansion with 'blog.sty'. You may be happy enough with it +%% and \emph{restrict} the interception functionality to `\EXECUTE' +%% by |\BlogInterceptExecute|. Its definition may be a +%% redefinition of the preliminary macro in 'blog.sty'. +%% (TODO: option for stopping here, avoid 'dowith'.) +\def\blog@icl@exec{% + \let\BlogProcessLine\BlogAllowIntercepting + \def\BlogInterceptions{\blogTryOneArgCmd\EXECUTE}} +\def\BlogInterceptExecute{\@ifstar@intercept@hash\blog@icl@exec} +%% +%% === &\begin\ and &\end === +%% At present (2011/11/06), only |\begin{<env>}| will run %% box 2012/08/28 +%% settings. Macros `\<env>' and `\end<env>' will expand +%% in the `.html' as with 'blog.sty' alone, not touched here. +%% Settings to be \emph{run} must be stored in a macro +%% `\blogx.b:<env>'. If this has not been done, only `\relax' +%% (from `\csname') will be ``run." +\MakeBlogOneArgInterception\begin{% +%% Indeed, we have a ``modified selection" from \LaTeX's original `\begin': + \@ifundefined{#2}% + {\def\@tempa{\@latex@error{Environment #2 undefined}\@eha}}% + {\def\@tempa{\def\@currenvir{#2}% +% \edef\@currenvline{\on@line}% %% not in source + \csname \blog@x.b:#2\endcsname}}% %% \StripEsc->: 2012/08/28 + \begingroup \@tempa}{% + \csname #2\endcsname} +%% % %% TODO single token!? %% rm. 2011/12/15 +%% \[|\MakeBlogBeginRun{<env>}<args>{<begin-code>}|\] resembles +%% \[`\newenvironment*{<env>}<args>{<begin-code>}{<end-code>}'\] except that +%% it does not have `{<end-code>}': +\newcommand*{\MakeBlogBeginRun}{\@makeblogbeginrun\newcommand} +%% v0.2 allows redefinition by +%% \[|\ChangeBlogBeginRun{<env>}<args>{<begin-code>}|\] +\newcommand*{\@makeblogbeginrun}[2]{% + \expandafter #1\expandafter *% + \csname \blog@x.b:#2\endcsname} %% \StripEsc->: 2012/08/28 +\newcommand*{\ChangeBlogBeginRun}{\@makeblogbeginrun\renewcommand} +%% Moreover, v0.2 allows copying that action by +%% \[|\CopyBlogBeginRunTo{<env>}{<enw>}|\] +\newcommand*{\CopyBlogBeginRunTo}[2]{% + \withcsname \let \blog@x.b:#2\expandafter\endcsname + \csname \blog@x.b:#1\endcsname} +%% |\end{<env>}|: +\MakeBlogOneArgInterception\end{\@checkend{#2}\endgroup}{\end{#2}} +% \expandafter\show\csname blogx:end\endcsname +%% \[|\BlogInterceptEnvironments|\] restricts interception functionality +%% to `\EXECUTE', `\begin', and `\end': +\def\blog@icl@envs{% + \BlogInterceptExecute + \ToListMacroAdd\BlogInterceptions{% + \blogTryOneArgCmd\begin\blogTryOneArgCmd\end}} +\def\BlogInterceptEnvironments{\@ifstar@intercept@hash\blog@icl@envs} +%% TODO: \ 1.~imitate \LaTeX's toggling with `\emph' +%% (redefine it in italic environments) +%% \ 2.~code indenting (cf.~\ctanpkgref{inputtrc}) +%% +%% === A Comfortable Table Environment === +%% As an application of |\MakeBlogBeginRun| for 'blog.sty''s +%% |{stdallrulestable}|, we provide \lq`|'\rq\ as an active character +%% invoking 'blog.sty''s `\endcell' (move to next cell) %% was \cr 2011/11/10 +%% and an active character \lq`&'\rq\ for `\figurespace', +%% i.e., a Unicode symbol for aligning figures. +%% Indeed, we are \emph{not} going back to \LaTeX\ and Plain \TeX\ +%% by using `&' for moving to the next cell, I consider the present +%% choice more intuitive. +\MakeBlogBeginRun{stdallrulestable}{% + \MakeActiveDef\|{\endcell}\MakeActiveDef\&{\figurespace}} +%% I hope nobody will confuse `&' and `8'. A little drawback may be +%% that you now can't use `&' for inserting \acro{HTML} entities. +%% However, recall that these settings are restricted to the +%% `{stdrulestable}' environment, and that you can use +%% `\MakeBlogBeginRun{stdallrulestable}' again for your own choice +%% of shorthands. +%% (TODO: `\MakeActiveLet') +%% +%% +%% == Intercepting Two-Parameter Macros == +%% Here especially I have a macro +%% |\labelsection{<label>}{<title>}| \emph{in mind} +%% (TODO). +%% It could be handled by the one-argument approach +%% by storing the first argument and inserting another macro +%% that reads the second argument. Therefore I am not sure ... +%% (2011/11/04) +%% +%% == Leaving and HISTORY == +\endinput +%% \enlargethispage{2\baselineskip} %% 2012/08/28 + VERSION HISTORY + +v0.1 2011/11/04 started; arrived at \EXECUTE + 2011/11/05 rm. \blogx@dummy, corrected loop, + \BlogInterceptExtra, \BlogInterceptExecute + 2011/11/06 \BlogAllowIntercepting, emptiness test + with "other" backslash, \begin/\end + 2011/11/07 debugging (\catcode... in \@ifdefinable); + warning on reusing interceptor, + \BlogInterceptEnvironments; + doc.: raise interception level in \EXECUTE + 2011/11/08 \BlogInterceptHash (understanding needed hours) + 2011/11/10 `v0.1' in \Provides..., doc. fix, + removing experimental code, doc. all 1-arg + interceptions in one section + 2011/11/20 \BlogInterceptHash improved + 2011/11/20 doc. `%' doubled + 2011/11/21 \BlogOutputJob + 2011/11/22 TODO + \z@ for \MakeBlogOne... + 2011/12/15 rm. TODO +v0.2 2012/08/28 \begin/\end revised (\StripEsc wrong) + 2012/08/29 \ChangeBlogBeginRun, \CopyBlogBeginRun, + \blog@x diff --git a/Master/texmf-dist/tex/latex/morehype/blogligs.sty b/Master/texmf-dist/tex/latex/morehype/blogligs.sty new file mode 100644 index 00000000000..75beb5beff7 --- /dev/null +++ b/Master/texmf-dist/tex/latex/morehype/blogligs.sty @@ -0,0 +1,103 @@ +\NeedsTeXFormat{LaTeX2e}[1994/12/01] %% \newcommand* etc. +\ProvidesPackage{blogligs}[2012/11/29 v0.2 + pervasive blog ligatures (UL)] +%% copyright (C) 2012 Uwe Lueck, +%% http://www.contact-ednotes.sty.de.vu +%% -- author-maintained in the sense of LPPL below. +%% +%% This file can be redistributed and/or modified under +%% the terms of the LaTeX Project Public License; either +%% version 1.3c of the License, or any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% We did our best to help you, but there is NO WARRANTY. +%% +%% Please report bugs, problems, and suggestions via +%% +%% http://www.contact-ednotes.sty.de.vu +%% +%% == 'blog' Required == +%% 'blogdot' is an extension of 'blog', and must be loaded \emph{later} +%% (but what about options? TODO): +\RequirePackage{blog} +%% == Task and Idea == +%% |\UseBlogLigs| as offered by 'blog.sty' does not work +%% inside macro arguments. You can use |\ParseLigs{<text>}| +%% at such locations to enable ``ligatures" again. +%% 'blogligs.sty' saves you from this manual trick. +%% Many macros have one ``text" argument only, +%% others additionally have ``attribute" arguments. +%% Most macros `<elt-cmd>{<text>}' of the first kind are defined +%% to expand to `\SimpleTagSurr{<elt>}{<text>}' +%% or to `\TagSurr{<elt>}{<attrs>}{<text>}' for some +%% \HTML\ element <elt> and some attribute assignments <attrs>. +%% When a macro in addition to a ``text" element has +%% ``attribute" parameters, `\TagSurr' is used as well. +%% %% 2012/01/08, eigentlich schon 2012/01/04, verloren ...: +% \let\blogtextcolor\textcolor +% \renewcommand*{\textcolor}[2]{\blogtextcolor{#1}{\ParseLigs{#2}}} +%% +%% \pagebreak[2] +%% == Quotation Marks == +%% ``Inline quote" macros `<qtd>{<text>}' to surround <text> +%% by quotation marks do not follow this rule. We are just +%% dealing with English and German double quotes +%% that I have mostly treated by `catchdq.sty'. +%% `"<text>"' then (eventually) expands to either +%% `\deqtd{<text>}' or `\endqtd{<text>}', so we redefine these: +%% %% 2012/01/10: +\let\blogdedqtd\dedqtd +\renewcommand*{\dedqtd}[1]{\blogdedqtd{\ParseLigs{#1}}} +%% %% 2012/08/20: +\let\blogendqtd\endqtd +\renewcommand*{\endqtd}[1]{\blogendqtd{\ParseLigs{#1}}} +%% +%% == \HTML\ Elements == +%% When the above rule holds: +%% %% 2012/01/19: +\let\BlogTagSurr\TagSurr +\renewcommand*{\TagSurr}[3]{% + \BlogTagSurr{#1}{#2}{\ParseLigs{#3}}} +\let\BlogSimpleTagSurr\SimpleTagSurr +\renewcommand*{\SimpleTagSurr}[2]{% + \BlogSimpleTagSurr{#1}{\ParseLigs{#2}}} +%% +%% == Avoiding ``Ligatures" though == +%% |\noligs{<text>}| saves <text> from ``ligature" replacements +%% (except in arguments of macros inside <text> where +%% 'blogligs' enables ligatures): +\newcommand*{\noligs}{} \let\noligs\@firstofone %% !!! +%% I have found it useful to disable replacements within +%% |\code{<text>}|: +\renewcommand*{\code}[1]{\STS{code}{\noligs{#1}}} +%% TODO: kind of mistake, `\STS' has not been affected anyway so far, +%% then defining `\code' as `\STS{code}' should suffice. +%% +%% |\NoBlogLigs| has been meant to disable ``ligatures" altogether again. +%% I am not sure about everything ... +%% %% 2012/03/14, not optimal TODO: +\renewcommand*{\NoBlogLigs}{% + \def\BlogOutputJob{LEAVE}% +% \let\deqtd\blogdeqtd %% rm. 2012/06/03 + \let\TagSurr\BlogTagSurr + \let\SimpleTagSurr\BlogSimpleTagSurr + \FDnormalTilde + \MakeActiveDef\~{ }% %% TODO new blog cmd +} +%% TODO: |\UseBlogLigs| might be redefined likewise +%% (\textcolor{red}{in fact 'blogligs' activates ligatures +%% inside text arguments unconditionally at present}, +%% I keep this for now since I have used it this way with `texblog.fdf' +%% over months, and changing it may be dangerous +%% where I have used tricky workarounds to overcome the +%% `texblog.fdf' mistake). +%% But with \[`\BlogInteceptEnvironments'\] this is not needed +%% when you use `\NoBlogLigs' for the contents of some \LaTeX\ +%% environment. +%% +%% == The End and \acro{HISTORY} == +\endinput +%% VERSION HISTORY +v0.1 2012/01/08ff. developed in `texblog.fdf' +v0.2 2012/11/29 own file + diff --git a/Master/texmf-dist/tex/latex/morehype/lang-de.fdf b/Master/texmf-dist/tex/latex/morehype/lang-de.fdf deleted file mode 100644 index b211f6c130b..00000000000 --- a/Master/texmf-dist/tex/latex/morehype/lang-de.fdf +++ /dev/null @@ -1,10 +0,0 @@ -\ProvidesFile{lang-de.fdf}[2011/09/24 German settings for blog.sty] -%% previous: 2011/05/12 -\def\dqtd {\dedqtd} -\def\qtd {\deqtd} -\def\pardash {\depardash} %% 2011/05/12 -\def\lastrev {\delastrev} -\def\totopofpage{\detotopofpage} -\RequirePackage{dhua} %% 2011/09/24 -\endinput - diff --git a/Master/texmf-dist/tex/latex/morehype/lang-en.fdf b/Master/texmf-dist/tex/latex/morehype/lang-en.fdf deleted file mode 100644 index 22600f7d61a..00000000000 --- a/Master/texmf-dist/tex/latex/morehype/lang-en.fdf +++ /dev/null @@ -1,8 +0,0 @@ -\ProvidesFile{lang-en.fdf}[2011/01/25 English settings for blog.sty] -\def\dqtd {\endqtd} -\def\qtd {\enqtd} -\def\pardash {\enpardash} %% 2011/05/12 -\def\lastrev {\enlastrev} -\def\totopofpage{\entotopofpage} -\endinput - diff --git a/Master/texmf-dist/tex/latex/morehype/markblog.sty b/Master/texmf-dist/tex/latex/morehype/markblog.sty new file mode 100644 index 00000000000..0b0be279b99 --- /dev/null +++ b/Master/texmf-dist/tex/latex/morehype/markblog.sty @@ -0,0 +1,70 @@ +\NeedsTeXFormat{LaTeX2e}[1994/12/01] %% \newcommand* etc. +\ProvidesPackage{markblog}[2012/11/29 v0.2 + wiki markup with blog.sty (UL)] +%% copyright (C) 2012 Uwe Lueck, +%% http://www.contact-ednotes.sty.de.vu +%% -- author-maintained in the sense of LPPL below. +%% +%% This file can be redistributed and/or modified under +%% the terms of the LaTeX Project Public License; either +%% version 1.3c of the License, or any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% We did our best to help you, but there is NO WARRANTY. +%% +%% Please report bugs, problems, and suggestions via +%% +%% http://www.contact-ednotes.sty.de.vu +%% +%% == 'blog' Required == +%% 'blogdot' is an extension of 'blog' and must be loaded \emph{later} +%% (but what about options? TODO): +\RequirePackage{blog} +%% == Replacement Rules == +%% 2012/01/06f.: +\FDpseudoTilde +%% |[[<wikipedia-link>]]|: a 'fifinddo' job is defined that +%% passes to the ``ligature" job for arrows in 'blog.sty': +\MakeExpandableAllReplacer{blog[[}{[[}{\protect\catchdbrkt}{blog<-} +\def\catchdbrkt#1]]{\Wikiref{#1}} %% + t 2012/01/09 +%% The stars are inspired by \Wikiref{Markdown} +%% (thanks to Uwe Ziegenhagen October 2011), +%% while I have own ideas about them. +\MakeExpandableAllReplacer{blog**}{**} + {\protect\doublestar:}{blog[[} +\MakeExpandableAllReplacer{blog***}{***} + {\protect\triplestar:}{blog**} +% \CopyFDconditionFromTo{blog***}{BlogLIGs} +%% Apostrophes: %% 2012/01/11: +\MakeActiveDef\'{\noexpand'} +\MakeExpandableAllReplacer{blog\string'\string'}{''} + {\protect\doubleapostr:}{blog***} +\MakeExpandableAllReplacer{blog\string'\string'\string'}{'''} + {\protect\tripleapostr:}{blog\string'\string'} +\MakeOther\' +%% Replacing three apostrophes by `\tripleapostr' +%% becomes the first job called with `\UseBlogLigs': +\CopyFDconditionFromTo{blog'''}{BlogLIGs} +%% +%% == Connecting to \LaTeX\ commands == +%% |\MakePairLaTeXcmd#1#2| replaces `#1<text>#1' by `#2{<text>}': +\newcommand*{\MakePairLaTeXcmd}[2]{% + \@ifdefinable#1{\def#1:##1#1:{#2{##1}}}} + %% ":" for "..." 2012/01/30 +%% %% 2012/01/15: +%% |**<text>**| is turned into `\mystrong{<text>}', +%% and |***<text>***| is turned into `\myalert{<text>}'. +%% I have used two shades of red for them: +\MakePairLaTeXcmd\doublestar\mystrong +\MakePairLaTeXcmd\triplestar\myalert +%% As in editing Wikipedia, |''<text>''| renders <text> +%% in italics (or \emph{slanted}), +%% and |'''<text>'''| renders <text> bold. +\MakePairLaTeXcmd\doubleapostr\textit +\MakePairLaTeXcmd\tripleapostr\textbf +%% +%% == The End and \acro{HISTORY} == +\endinput +%% VERSION HISTORY +v0.1 2012/01/06ff. developed in `texblog.fdf' +v0.2 2012/11/29 own file diff --git a/Master/texmf-dist/tex/latex/morehype/morehype.RLS b/Master/texmf-dist/tex/latex/morehype/morehype.RLS index 737c0ad2953..1e3e8635dd8 100644 --- a/Master/texmf-dist/tex/latex/morehype/morehype.RLS +++ b/Master/texmf-dist/tex/latex/morehype/morehype.RLS @@ -1,3 +1,5 @@ \ProvidesFile{morehype.RLS} %% RELEASE INFO + [2012/11/30 r0.7 blog.sty wiki-like, more blog^^J& + texlinks, piped links, use `langcode'] [2012/05/30 r0.6 blogexec, blogligs, langcode, bad] [2011/10/23 r0.52 CTAN URL choice, hyperref] diff --git a/Master/texmf-dist/tex/latex/morehype/texblog.fdf b/Master/texmf-dist/tex/latex/morehype/texblog.fdf index da4d60253f4..57cddc96973 100644 --- a/Master/texmf-dist/tex/latex/morehype/texblog.fdf +++ b/Master/texmf-dist/tex/latex/morehype/texblog.fdf @@ -1,18 +1,25 @@ -\ProvidesFile{texblog.fdf}[2012/05/15 extra blog settings] +\ProvidesFile{texblog.fdf}[2012/11/29 extra blog settings] %% %% macros I use for my note pages %% -- Uwe Lueck, www.contact-ednotes.sty.de.vu %% %% page head: \newcommand*{\texrobots}{\robots{index,follow,noarchive}} +%% TODO: all \newcommand*{\texstylesheet}{\stylesheet{all}{plain}} +%% 2012/09/06: +\newcommand*{\texmetadata}{% + \metanamecontent{author}{Uwe L\"uck}\CLBrk + \metanamecontent{date}{\isotoday}\CLBrk + \texrobots} %% 2011/04/24: -\newcommand*{\TeXtopofpage}{%% 2011/06/19: - \topofpageline{\code{uwe_lueck} \code{>} }{\texmapName}} +\newcommand*{\TeXtopofpage}{%% 2011/06/19, \gt 2012/09/08: + \topofpageline{\code{uwe_lueck} \code{\gt} }{\texmapName}} \newcommand*{\texmapName}{texmap} -%% 2011/05/17: +%% 2011/05/17, \pubfilename 2012/09/19: +\newcommand*{\pubfilename}{\htmljob} \newcommand*{\reloadTeXtopofpage}[2]{% - \TeXtopofpage{\pardash\fileref\htmljob{\meta{#1}}% + \TeXtopofpage{\pardash\fileref\pubfilename{\meta{#1}}% \pardash#2}} %% mv. brace here 2011/12/20 \newcommand*{\deTeXtopofpage}{\reloadTeXtopofpage{neu~laden}} \newcommand*{\enTeXtopofpage}{\reloadTeXtopofpage{reload}} @@ -21,33 +28,40 @@ % \pardash\fileref{\htmljob}{reload}} %% 2011/06/19: \newcommand*{\topofpageline}[3]{% - \hanc{top-of-page}{% +% \hanc{top-of-page}{% \CLBrk\indenti %% 2011/10/12 \begin{small}% + \hanc{top-of-page}{% %% 2012/09/08 #1% + }% %% 2012/09/08 \ifx\htmljob#2\else \CLBrk\indenti - \Fileref{#2} \code{>} \fi + \Fileref{#2} \code{\gt} \fi %% \gt 2012/09/08 \file\htmljob#3% \end{small}% - \CLBrk}% %% 2011/10/12 +% \CLBrk}% %% 2011/10/12 + \CLBrk %% 2012/09/08 } \newcommand*{\privtopofpage}[1]{% \topofpageline{}{\privmapName}% {\depardash\fileref{\htmljob}{\textit{neu~laden}}% \depardash#1}} \newcommand*{\privmapName}{privmap} - +%% \makeatletter %% 2011/10/12 \@ifpackageloaded{blogexec}{% %% 2012/03/14 \newenvironment*{noblog}{}{} %% 2012/03/04 from ... -\MakeBlogBeginRun{noblog}{\let\WriteResult\@gobble} +\MakeBlogBeginRun{noblog}{% + \BlogInterceptEnvironments %% 2012/06/22 + \let\WriteResult\@gobble} }{} %% body colors (started 2010/09/15): +\let\simplebody\body \renewcommand*{\body}{% % </head><body \@bgcolor{\bodybgcolor}>} %% \@bgcolor 2011/10/03 </head>% - <body \@style{background-color:\bodybgcolor}>} %% 2011/11/09 + <body\@style{background-color:\bodybgcolor}>} %% 2011/11/09 + %% <- no space 2012/09/08 \newcommand*{\bodybgcolor}{\#fffff0} %% CSS ivory 2011/08/03 % \newcommand*{\bodybgcolor}{\#ffffe7} %% 2010/11/23 2011/06/29 % \newcommand*{\bodybgcolor}{\#f5f5dc} %% CSS beige 2011/07/31 @@ -146,17 +160,27 @@ \rightpar{\ancref{#1}{[\to}|% \ancref{top-of-page}{~\uparrow~]}}} \newcommand*{\Nextview}[1]{% %% 2011/05/12 - \nextview{#1}\hanc{#1}{}} + \nextview{#1}\\\lineanc{#1}} %% \\ 2012/11/21 \newcommand*{\nextruleview}[1]{% %% 2010/09/15 - \nextview{#1}\hrule\hanc{#1}{}} + \nextview{#1}\hrule\vspace{4}\lineanc{#1}} %% \vspace 2012/11/21 \newcommand*{\NRV}{\nextruleview} %% 2011/03/15 %% Diary date sections: -\newcommand*{\datepar}[1]{% +% \newcommand*{\datepar}[1]{% +%% <- 2012/10/24 -> +\newcommand*{\Datepar}[2]{% % \endgraf\hanc{#1}{\latexdatepar#1\latexdatepar}}%% 2011/08/12: - \vspace{3} %%% 2011/08/16 \\% - \lineanc{\isodateplus#1\isodateplus}% - \lineanc{#1}% - \heading4{\isodateplus#1\isodateplus}} +% \vspace{3} %%% 2011/08/16 \\% + \vspace{12} %% 2012/09/13 + %% TODO CSS!? <- 2012/09/13 -> +% \heading4{% + \lineanc{\isodateplus#1\isodateplus}% + \lineanc{#1}% + %% mod. 2012/10/24: + \heading4{\noligs{\isodateplus#1\isodateplus + \ifx\@nnil#2\@nnil\else + \pardash\ParseLigs{#2}\fi}}} +% \isodateplus#1\isodateplus}} +\newcommand*{\datepar}[1]{\Datepar{#1}{}} %% #5 allows modifications like time, `b', `f.': % \def\latexdatepar#1/#2/#3#4#5\latexdatepar{% % \endgraf\heading4{#1-#2-#3#4#5}} @@ -180,11 +204,18 @@ \nextview{kw#1}\hrule \hanc{kw#1}{\SimpleTagSurr{big}{KW#1}}% } +%% 2012/10/26: +\newcommand*{\zeitref}[2]{\ancref{#1-#2}{#2}} +\newcommand*{\zeitanc}[2]{\hanc{#1-#2}{#2}} %% 2011/08/18 [private - 2011/08/26]: \newcommand*{\geldpref}{\ancref{geld}{\euro}} \newcommand*{\jobspref}{\autref{jobs}} -%% bar of internal links -- dosepwit.sty %% 2011/12/23 / 2012/02/07 +%% offline links: %% 2012/09/18 +\newcommand*{\Offlineref}[1]{% + \hnewref{}{../../www-Kopien/#1}{\offlinetext}} +\newcommand*{\offlinetext}{\small~[0]\endsmall} %% 2012/09/22 +%% bar of internal links %% 2011/12/23 / 2012/02/07 \newcommand*{\internallinksbar}[1]{% % \samehtmlline{% %% irrelevant 2011/12/25 [\,\DoSeparateWithMore\ancref @@ -197,79 +228,26 @@ % \else#2#1{#3}% % \expandafter\do@separate@with\expandafter % #1\expandafter#2\fi} -%% More 2012/01/17: -% \newcommand*{\DoWithMore}[2]{% -% \ifx\StopDoing#2% -% \else#1#2\expandafter\DoWithMore\expandafter#1\fi} -% \newcommand*{\DoWithMore}{\d@with\@both} -\newcommand*{\d@with}[3]{% - \ifx\StopDoing#3% - \else#1#2{#3}% - \expandafter\d@with\expandafter#1\expandafter#2\fi} -\newcommand{\@both}[2]{#1#2} -\renewcommand*{\DoWith}{\d@with\@empty} -% \newcommand*{\DoSeparateWith}[3]{#1{#3}\d@with#2#1} -% \newcommand{\DoSeparateWithMore}[3]{#1#3\d@sepwithm@re#1#2} -\newcommand*{\d@sepwithm@re}[3]{% - \ifx\StopDoing#3% - \else#2#1#3% - \expandafter\d@sepwithm@re\expandafter - #1\expandafter#2\fi} +%% More 2012/01/17 [`\Do...' moved to `domore.sty' 2012/08/07]: % \newcommand*{\make@ancref}[1]{\ancref#1} \newcommand*{\BlogVertNoBreakSep}{~|~} %% 2011/12/25 \newcommand*{\BlogVertSep} {~| } %% 2011/12/25 -\newcommand*{\ancrefslist}[1]{% %% 2011/12/28 - \DoSeparateWithMore\ancref\BlogVertSep %% 2012/01/17 +\newcommand*{\BlogVertLine} {~|\CLBrk} %% 2012/09/06 +\newcommand*{\ancrefs}[1]{% %% 2011/12/28 +% \DoSeparateWithMore\ancref\BlogVertSep %% 2012/01/17 + \DoSeparateWithMore\ancref\BlogVertLine %% 2012/01/17 #1\StopDoing} -\newcommand*{\autrefslist}[1]{% %% 2011/12/28 +\newcommand*{\ancrefslist}{} \let\ancrefslist\ancrefs %% 2012/08/02 TODO +\newcommand*{\varancrefs}[2]{% %% 2012/06/19 /08/07 + \DoSeparateWithMore\ancref{#1}#2\StopDoing} +\newcommand*{\autrefs}[1]{% %% 2011/12/28 \DoSeparateWith\autref\BlogVertSep #1\StopDoing} -%% 2012/01/17 later: -\renewcommand{\DoWith}[2]{% -% \ifx\StopDoing#2\expandafter\@gobble -% \else\expandafter\@firstofone\fi -% {#1{#2}\DoWith{#1}}} - \ifx\StopDoing#2\@empty %% for empty #2 2012/01/17!!! -% \else\after@fi#1{#2}\DoWith{#1}\fi} -% \newcommand*{\after@fi}{} \def\after@fi#1\fi{\fi#1} - \else\@reversetwo{#1{#2}\DoWith{#1}}\fi} -\newcommand{\@reversetwo}[2]{#2#1} -\newcommand{\DoWithMore}[1]{\DoWith{\@both{#1}}} -\newcommand*{\DoSeparateWith}[3]{#1{#3}\DoWith{#2#1}} -% \newcommand*{\DoSeparateWithMore}[3]{#1#3\DoWith{#2\@both{#1}}} -\newcommand*{\DoSeparateWithMore}[2]{\DoSeparateWith{\@both{#1}}{#2}} -\renewcommand*{\setdo}[1][1]{\renewcommand\do[#1]} -%% (/2012/01/17) +%% 2012/01/17 later [moved to `domore.sty' 2012/08/07]: +\RequirePackage{domore} %% 2012/01/18: %% accesses all possibilities: -% \newcommand*{\DoSeparateWithSetsPresentedAs}[4]{% -% \csname \expandafter\@gobble\string -% \DoSeparateWith #4\endcsname{% -% \ifx #3M\@empty %% TODO better #3 beginning of "More"!? -% \expandafter\@both -% \else \expandafter\@firstofone \fi {#1}}{#2}} -% % \show\DoSeparateWithSetsPresentedAs -% %% TODO: #1, #2 better #4 #3 for saving tokens!? -% %% but #1 was used for reducing "More". -% %% `\DoWithModes' -\newcommand*{\DoSeparateWithY}[3]{% - \DoSeparateWithZ{#1}{#2}#3\StopDoing} -\newcommand*{\DoSeparateWithX}[3]{% - \expandafter\@reversetwo\expandafter{% - #3\StopDoing}{\DoSeparateWithZ{#1}{#2}}} -\newcommand*{\DoWithModes}[3]{% - %% #1 X/Y/Z (presentation of list), #2 Sets, #3 Do - \csname \expandafter\@gobble\string - \DoSeparateWith #1\endcsname{% - \ifx #2M\@empty %% TODO better #2 beginning of "More"!? - \expandafter\@both - \else \expandafter\@firstofone \fi {#3}}} -%% basic: -\newcommand*{\DoSeparateWithZ}[3]{% - \ifx\StopDoing#3\@empty - \else\@reversetwo{#1{#3}\DoWithZ{#2#1}}\fi} -%% \DoWith: -% \else\@reversetwo{#1{#2}\DoWith{#1}}\fi} -\newcommand*{\DoWithZ}[2]{\DoSeparateWithZ{#1}{}{#2}} +%% 2012/08/07 moved to `domodes.sty' + \iffalse %% TEST doowith 2012/06/03 \let\DoWith\DoWithZ %% !!! % \renewcommand*{\DoSeparateWithMore}[2]{% %% !!? % \DoSeparateWithSetsPresentedAs{#1}{#2}{M}{Z}} @@ -281,6 +259,7 @@ %% argument. % \newcommand*{\AddAncRef}[1]{\ancref#1~| } %% 2011/12/28 % \newcommand*{\AddAutRef}[1]{\autref{#1}~| } %% 2011/12/28 + \fi \newcommand*{\topfilesbar}[1]{% %% 2011/12/26 |~% \DoSeparateWith \Fileref @@ -305,6 +284,16 @@ \newcommand*{\emailpref}{\ancref{email}{@\,}|\webdefmref{\,fm}} %% TODO mit \EXECUTE auslagern? +%% link in new code line TODO!? bad in parentheses: %% 2012/09/06 +% \renewcommand*{\href}[1]{\CLBrk\TagSurr a{\@href{#1}}} +% \renewcommand*{\hnewref}[2]{% +% \CLBrk\TagSurr a{\@href{#1#2" target="_blank}}} +%% 2012/09/08: +\newcommand*{\LinkLinesBroken}{% + \def\@href##1{\CLBrk\indenti href="##1"}} +\newcommand*{\LinkLinesNormal}{% + \def\@href##1{ href="##1"}} +%% %% page bottom: %% `\isotoday' moves to `blog.sty' 2011/11/20 \newcommand*{\genlastrev}[2]{% %% 2011/11/02 @@ -324,10 +313,21 @@ %% external navigation: \renewcommand*{\htmakeext}{.htm} %% 2011/10/05 \newcommand*{\Fileref}[1]{\fileref{#1}{\file{#1}}} %% 2010/09/10 +\newcommand*{\Fileancref}[2]{% %% 2012/09/11 + \fileancref{#1}{#2}{\file{#1\##2}}} %% 2012/09/11 \newcommand*{\urlhref}[1]{\href{#1}{\urlfmt{#1}}} %% 2011/08/19 +\newcommand*{\domainref}[2]{% %% 2012/06/08 + \httpref{#1/#2}{\urlfmt{#1}}} \newcommand*{\localfilenewref}{\hnewref{}} %% 2011/10/12 +%% Ubuntu-Wiki 2012/09/13: +\newcommand*{\ubuntuurl}{wiki.ubuntuusers.de} +\newcommand*{\ubunturef}{\httpbaseref\ubuntuurl} +\newcommand*{\ubuntucmd}[1]{\ubunturef{#1}{\code{#1}}} +\newcommand*{\Ubunturef}[1]{\ubunturef{#1}{#1}} \newcommand*{\siehewiki}[1]{% %% 2011/05/06 \to\wikideref{#1}{\textit{Wikipedia}}} +\newcommand*{\Wref}[1]{\wikiref{#1}{Wikipedia}} %% 2012/01/19 +%% Wikipedia piped links emulation moves to `texlinks.sty' 2012/11/28 %% 2011/11/23, 2012/01/06, 2012/03/11: \newcommand*{\wiktionarylangref}[1]{% \httpbaseref{#1.wiktionary.org/wiki}} @@ -345,7 +345,9 @@ \newcommand*{\wikiquotelangref}[1]{% \httpbaseref{#1.wikiquote.org/wiki}} \newcommand*{\Wikquenref}[1]{\wikiquotelangref{en}{#1}{#1}} -%% +%% 2012/11/15: +\newcommand*{\AAOwikiref}{% + \httpbaseref{vps8324694103.serverpool.info/aaowiki}} %% to do: \newcommand*{\wormsmusref}{% %% 2011/04/30, 2012/03/11 \httpbaseref{www.worms.de/deutsch/kultur/museen}} @@ -370,104 +372,25 @@ \newcommand*{\webdesignurlref}[1]{% \webdesignref{#1}% {\urlfmt{www.webdesign-bu.de/uwe_lueck/#1}}} -\newcommand*{\Wref}[1]{\wikiref{#1}{Wikipedia}} %% 2012/01/19 %% TeX links: % \newcommand*{\CPR}{\ctanpkgref} %% 2011/03/15, rm. 2011/11/06 -\newcommand*{\THPR}{\texhaxpref} %% 2011/03/15 -\newcommand*{\THpref}[1]{\texhaxpref{#1}{texhax}} %% 2011/03/24 -%% month page 2011/12/22, reworked for langcode 2012/01/17: -\newcommand*{\enmonthname}[1]{% - \ifcase #1\or - January\or February\or March\or April\or - May\or June\or July\or August\or - September\or October\or November\or December% - \fi} -%% <- TODO -> texlinks.sty or langcode.sty -\newcommand*{\texlistyearmonthref}[2]{\texlist@yearmonthref#1#2\@nil} -\def\texlist@yearmonthref#1#2-#3\@nil{#1{20#2-\enmonthname{#3}}} -\newcommand*{\texhaxyearmonthref}{\texlistyearmonthref\texhaxref} -\newcommand*{\ctanannyearmonthref}{\texlistyearmonthref\ctanannref} -\newcommand*{\demonthname}[1]{% - \ifcase #1\or - Januar\or Februar\or M\"arz\or April\or - Mai\or Juni\or Juli\or August\or - September\or Oktober\or November\or Dezember% - \fi} -\newcommand*{\texlanglistmonthref}[3]{\texlanglistm@nthref#1#2#3\@nil} -\def\texlanglistm@nthref#1#2#3-#4\@nil{% - #2{20#3-\enmonthname{#4}}{#1{#4}}} -\newcommand*{\detexlistmonthref}{\texlanglistmonthref\demonthname} -\newcommand*{\entexlistmonthref}{\texlanglistmonthref\enmonthname} -\newcommand*{\texlistmonthref} {\texlanglistmonthref\monthname} -% \newcommand*{\detexhaxmonthref} {\detexlistmonthref\texhaxref} -% \newcommand*{\entexhaxmonthref} {\entexlistmonthref\texhaxref} -\newcommand*{\texhaxmonthref} {\texlistmonthref\texhaxref} -% \newcommand*{\dectanannmonthref}{\detexlistmonthref\ctanannref} -% \newcommand*{\enctanannmonthref}{\entexlistmonthref\ctanannref} -\newcommand*{\ctanannmonthref} {\texlistmonthref\ctanannref} -%% <- TODO 2011/12/22 alle -> texlinks.sty -\newcommand*{\TOPref}[1]{\bytopicref{#1}{JF\##1}} %% 2011/04/22 +%% `\ctanpkgstyref' moves to `texlinks.sty' 2012/11/27 +\newcommand*{\THPR}{\texhaxpref} %% 2011/03/15 +\newcommand*{\THpref}[1]{\texhaxpref{#1}{texhax}} %% 2011/03/24 +%% month names move to `texlinks.sty' 2012/10/24 +\newcommand*{\TOPref}[1]{\bytopicref{#1}{JF\##1}} %% 2011/04/22 % \newcommand*{\todobytopic}[1]{% %% 2011/04/22, rm. 2011/11/08 % \myalert{\to\ \TOPref{#1}}} -\newcommand*{\UKFAQref}[1]{\ukfaqref{#1}{UK~FAQ}} %% 2011/01/03 - -%% BlogLIGs: -%% 2012/01/06f. [[...]] f. \Wikiref: -\FDpseudoTilde -% \Delimiters\(\) -% \catcode`\(=1 \catcode`\)=2 -% \MakeExpandableAllReplacer(blog[[)([[)(\protect\Wikiref{)(blog<-) - %% <- TODO echte `{' kann man so nicht einsetzen, vorverarb... -% \MakeExpandableAllReplacer(blog]])(]])(})(blog[[) -% \CopyFDconditionFromTo(blog]])(BlogLIGs) - %% fine: -% \MakeExpandableAllReplacer(blog[[)([[)(\protect\catchdbrk)(blog<-) -% \CopyFDconditionFromTo(blog[[)(BlogLIGs) - %% hacks fail: -% \MakeExpandableAllReplacer(blog[[)([[)(\protect\Wikiref{\iffalse}\fi) -% (blog<-) -% \MakeExpandableAllReplacer(blog]])(]])(\iffalse{\fi}) -% (blog[[) -% \MakeExpandableAllReplacer(blog[[)([[)(\protect\Wikiref{\protect\iffalse}\protect\fi) -% (blog<-) -% \MakeExpandableAllReplacer(blog]])(]])(\protect\iffalse{\protect\fi}) -% (blog[[) -% \MakeExpandableAllReplacer(blog[[)([[)(\protect\Wikiref{\protect\ifnum0=`}\protect\fi) -% (blog<-) -% \MakeExpandableAllReplacer(blog]])(]])(\protect\ifnum0=`{\protect\fi}) -% (blog[[) -% \MakeExpandableAllReplacer(blog[[)([[)(\protect\Wikiref{\ifnum0=`}\fi) -% (blog<-) -% \MakeExpandableAllReplacer(blog]])(]])(\ifnum0=`{\fi}) -% (blog[[) -% \CopyFDconditionFromTo(blog]])(BlogLIGs) -% \Delimiters\{\} -% \MakeOther\( \MakeOther\) -\MakeExpandableAllReplacer{blog[[}{[[}{\protect\catchdbrkt}{blog<-} -\def\catchdbrkt#1]]{\Wikiref{#1}} %% + t 2012/01/09 - %% <- TODO in blog.sty \wikilink!? %% <- 2012/01/09 -> -\MakeExpandableAllReplacer{blog**}{**} - {\protect\doublestar:}{blog[[} -\MakeExpandableAllReplacer{blog***}{***} - {\protect\triplestar:}{blog**} -% \CopyFDconditionFromTo{blog***}{BlogLIGs} -%% 2012/01/11: -\MakeActiveDef\'{\noexpand'} -\MakeExpandableAllReplacer{blog\string'\string'}{''} - {\protect\doubleapostr:}{blog***} -\MakeExpandableAllReplacer{blog\string'\string'\string'}{'''} - {\protect\tripleapostr:}{blog\string'\string'} -\MakeOther\' -\CopyFDconditionFromTo{blog'''}{BlogLIGs} -\newcommand*{\MakePairLaTeXcmd}[2]{% - \@ifdefinable#1{\def#1:##1#1:{#2{##1}}}} %% ":" for "..." 2012/01/30 -%% <- 2012/01/15 -> -\MakePairLaTeXcmd\doublestar\mystrong -\MakePairLaTeXcmd\triplestar\myalert -\MakePairLaTeXcmd\doubleapostr\textit -\MakePairLaTeXcmd\tripleapostr\textbf -%% TODO -> blog.sty or so %% 2012/02/07 +\newcommand*{\UKFAQref}[1]{\ukfaqref{#1}{UK~FAQ}} %% 2011/01/03 +%% SelfHTML: +\newcommand*{\selfhtmlurl}{de.selfhtml.org} +\newcommand*{\selfhtmlref}{\httpbaseref\selfhtmlurl} +\newcommand*{\selfhtmlrefref}[1]{% + \selfhtmlref{/html/referenz/#1.htm}} +\newcommand*{\selfhtmlcsseigref}{% %% 2012/09/23 + \httpbaseref{\selfhtmlurl/css/eigenschaften}} +%% BlogLIGs moves to `markblog.sty' 2012/11/28 %% rm. HVspace etc. 2011/10/13 %% font switching (logical): % \renewcommand*{\textsf}{% %% 2011/05/12 @@ -514,40 +437,19 @@ % \newcommand*{\PDF} {\acronym{PDF}} %% 2011/09/22 % \newcommand*{\CSS} {\acronym{CSS}} %% 2012/01/09 % \newcommand*{\PHP} {\acronym{PHP}} %% 2012/01/09 -\DoWith\newacronym{HTML}{PDF}{CSS}{PHP}\StopDoing %% 2012/02/07 - -%% use \ParseLigs: -%% 2012/01/08, eigentlich schon 2012/01/04, verloren ...: -% \let\blogtextcolor\textcolor -% \renewcommand*{\textcolor}[2]{\blogtextcolor{#1}{\ParseLigs{#2}}} -%% 2012/01/10: -\let\blogdedqtd\dedqtd -\renewcommand*{\dedqtd}[1]{\blogdedqtd{\ParseLigs{#1}}} -%% 2012/01/19: -\let\BlogTagSurr\TagSurr -\renewcommand*{\TagSurr}[3]{% - \BlogTagSurr{#1}{#2}{\ParseLigs{#3}}} -\let\BlogSimpleTagSurr\SimpleTagSurr -\renewcommand*{\SimpleTagSurr}[2]{% - \BlogSimpleTagSurr{#1}{\ParseLigs{#2}}} -\newcommand*{\noligs}{} \let\noligs\@firstofone %% !!! -\renewcommand*{\code}[1]{\STS{code}{\noligs{#1}}} -%% 2012/03/14, not optimal TODO: -\renewcommand*{\NoBlogLigs}{% - \def\BlogOutputJob{LEAVE}% - \let\deqtd\blogdeqtd - \let\TagSurr\BlogTagSurr - \let\SimpleTagSurr\BlogSimpleTagSurr - \FDnormalTilde - \MakeActiveDef\~{ }% %% TODO new blog cmd -} +\DoWith\newacronym{HTML}{PDF}{CSS}{PHP} + {WP} %% 2012/10/06 + \StopDoing %% 2012/02/07 +%% use \ParseLigs -- moves to `texblog.fdf' 2012/11/29 %% dashes: % \newcommand*{\enpardash}{\,\emdash\,} %% 2011/05/12 -\newcommand*{\enpardash}{\thinsp\Enpardash} %% 2011/07/28 +%% language-specific appear in `langcode.sty' +%% 2012/09/20 -> \renewcommand +\renewcommand*{\enpardash}{\thinsp\Enpardash} %% 2011/07/28 2012/09/20 \newcommand*{\Enpardash}{\emdash\thinsp} %% 2011/07/28 % \newcommand*{\depardash}{~\endash\ } %% 2011/05/12 -\newcommand*{\depardash}{\ \Endash} %% 2011/07/28 +\renewcommand*{\depardash}{\ \Endash} %% 2011/07/28 2012/09/20 \newcommand*{\Endash}{\endash\ } %% starting new line (German) %% 2011/05/26 \newcommand*{\enpardashed}[1]{% %% 2011/07/28 @@ -556,24 +458,8 @@ \ \endash~#1~\Endash} \def\endashed#1{\endash~#1~\endash} %% 2011/08/20 -%% language codes: %% 2012/01/07 -\newcommand*{\langcodedependent}{% %% 2012/01/07 - \langcodeextras\dqtd\qtd\pardash\lastrev\totopofpage - \monthname} %% 2012/01/17 -\let\enlangcodeextras\empty %% \empty 2012/01/17 -\newcommand*{\delangcodeextras}{\RequirePackage{dhua}} -\newcommand*{\uselangcode}[1]{% - \def\langcode{#1}% %% 2012/01/07: - \DoWithAllIn\langcodeadjust\langcodedependent - \langcodeextras} -\newcommand*{\langcodeadjust}[1]{% - \edef#1{\expandafter\noexpand - \csname\langcode - \expandafter\@gobble\string#1\endcsname}} -\uselangcode{en} -%% -%% 2010/11/13 TODO -- catcodes.sty!?: -{\catcode`\"\active \gdef\catchdq#1"{\dqtd{#1}}} %% 2010/11/13 +%% language codes move to `langcode.sty' 2012/09/17 +%% %% \catchdq moves to own package 2012/09/17 \newcommand*{\Euro}{\,\euro} %% mod. 2011/05/25 2011/09/08 \newcommand*{\degC}{\,\degrees C} %% 2011/09/20 %% avoiding spaces at code line breaks: @@ -602,45 +488,125 @@ {</code>\endquote} \MakeBlogBeginRun{codelines}{% \NoBlogLigs %% 2012/01/24 - \MakeActiveDef\"{\string"}\MakeActiveDef\'{\string'}% - \MakeActiveDef\<{\lt}\MakeActiveDef\>{\gt}% + \MakeActiveOther\"\MakeActiveOther\' %% actcodes 2012/08/28 + \MakeActiveLet\<\lt\MakeActiveLet\>\gt %% actcodes 2012/08/28 \let\/\\\let\\\BackslashChar} -%% table rows (before blogexec): %% 2011/09/24 / 2012/02/07 -\newcommand*{\rowoftwocells}[2]{% - \starttr - \simplecell{#1}\simplecell{#2}% - \endtr} +%% table rows (before blogexec): %% 2011/09/24 / 2012/02/07 +% \newcommand*{\rowoftwocells}[2]{% +% \starttr +% \simplecell{#1}\simplecell{#2}% +% \endtr} +%% back for ... 2012/07/03: \newcommand*{\rowofthreecells}[3]{% \starttr \simplecell{#1}\simplecell{#2}\simplecell{#3}% \endtr} -\newcommand*{\rowoffourcells}[4]{% - \starttr - \simplecell{#1}\simplecell{#2}% - \simplecell{#3}\simplecell{#4}% - \endtr} -\newcommand*{\rowoffivecells}[5]{% %% 2011/10/28 - \starttr - \simplecell{#1}\simplecell{#2}\simplecell{#3}% - \simplecell{#4}\simplecell{#5}% - \endtr} -\newcommand*{\rowofsixcells}[6]{% %% 2011/10/28 - \starttr - \simplecell{#1}\simplecell{#2}\simplecell{#3}% - \simplecell{#4}\simplecell{#5}\simplecell{#6}% - \endtr} - +% \newcommand*{\rowoffourcells}[4]{% +% \starttr +% \simplecell{#1}\simplecell{#2}% +% \simplecell{#3}\simplecell{#4}% +% \endtr} +% \newcommand*{\rowoffivecells}[5]{% %% 2011/10/28 +% \starttr +% \simplecell{#1}\simplecell{#2}\simplecell{#3}% +% \simplecell{#4}\simplecell{#5}% +% \endtr} +% \newcommand*{\rowofsixcells}[6]{% %% 2011/10/28 +% \starttr +% \simplecell{#1}\simplecell{#2}\simplecell{#3}% +% \simplecell{#4}\simplecell{#5}\simplecell{#6}% +% \endtr} +% +%% |\begin{stdhiddentablerows}| %% 2012/09/03 +\newenvironment*{stdhiddentablerows} + {\startTable{\@cellpadding\stdcellpadding + \@cellspacing{0px} + \@style{border-collapse:collapse}}% + \startTR} + {\endtablerow\endTable} +\MakeBlogBeginRun{stdhiddentablerows} + {\def\startTR{\tablerow{hidden}}% + \def\cr{\endtr\startTR}} %% |\begin{stdhiddentable}| %% 2012/05/15 \newenvironment*{stdhiddentable} - {\startTable{\@cellpadding\stdcellpadding}% - \starttr\StartTd} - {\endTd\endtr\endTable} +% {\startTable{\@cellpadding\stdcellpadding} +% % \@cellspacing\stdcellspacing} %% 2012/08/28 +% \startTR\StartTd} + {\stdhiddentablerows\StartTd} +% {\endTd\endtablerow\endTable} + {\endTd\endstdhiddentablerows} %% TODO colgroup alignment \MakeBlogBeginRun{stdhiddentable}{% - \MakeActiveDef\|{\endcell}\MakeActiveDef\&{\figurespace}} -%% TODO \MakeActiveLet + \def\startTR{\tablerow{hidden}}% %% 2012/08/23 + \MakeActiveLet\|\endcell\MakeActiveLet\&\figurespace} %% actcodes 2012/08/28 +% \newcommand*{\stdcellspacing}{6} %% undone 2012/08/29 %% +% %% |\begin{stdallrulestable*}| %% 2012/06/05 +% %% doesn't work with Firefox, +% %% w3schools.com/tags/att_col_align.asp; +% %% CSS seems to support +% %% alignment attributes for single cells only. +% \newenvironment{stdallrulestable*}[1]{% +% %% TODO what is shared with {stdallrulestable} +% \startTable{\@cellpadding{\stdcellpadding} \@width{} +% \@frame@box\ rules="all"}\CLBrk %% \ 2011/10/12 +% \ \STS{colgroup}{\DoWith\ColAlign#1\StopDoing}\CLBrk +% \ \tbody\CLBrk +% \TableRow{standard all-rules table}% +% {\@bgcolor{\stdtableheadcolor} +% \@style{\stdtableheadstyle}}\CLBrk +% \indentii\StartTd +% } +% {\endstdallrulestable} +% % {\endtbody\endTable} +% \newcommand*{\ColAlign}[1]{% +% \CLBrk\indenti<col \csname @align@#1\endcsname>} +% \MakeBlogBeginRun{stdallrulestable*}{% +% \MakeActiveDef\|{\endcell}\MakeActiveDef\&{\figurespace}} +% %% <- TODO or copy ntok(blogx.bstdallrulestable) +% +\newcommand*{\UseTabFigspVert}{% %% 2012/07/22 + \MakeActiveLet\&\figurespace\MakeActiveLet\|\endcell} %% actcodes 2012/08/28 +%% |\crspan{<cols>}| %% 2012/06/07 +\newcommand*{\crspan}[1]{% + \endTd\endtr\starttr\startTd{\@colspan{#1}}} +%% 2012/06/12: +%% |\Crspan{<total-cols>}{<cols>}| +\newcommand*{\Crspan}[2]{% + \endTd\endtr\starttr\fillrow{#1}\crspan{#2}} +%% table cell borders 2012/09/02 +\newcommand*{\cellborderthickness}{1px} +\newcommand*{\edge@csname}{\csname edge@} +% \edef\edge@csname{% +% \noexpand\csname\noexpand\expandafter +% \noexpand\StripEsc\withcsname\noexpand edge@\endcsname} +% \show\edge@csname +%% <- TODO save a lot of HTML/CSS code! +\def\do#1{\withcsname\def edge@#1\endcsname} +\do{b}{bottom} \do{l}{left} \do{r}{right} \do{t}{top} +% \withcsname\show edge@b\endcsname +\newcommand*{\border@edge}[1]{% + border-\edge@csname#1\endcsname-width:\cellborderthickness; + border-\edge@csname#1\endcsname-style:solid;} +\newcommand*{\stylecell}[2]{\startTd{\@style{#1}}#2\endTd} +\newcommand*{\edgeborderedcell}[1]{\stylecell{\border@edge#1}} +\newcommand*{\cornerborderedcell}[1]{\stylecell{\border@corner#1}} +\newcommand*{\border@corner}[2]{\border@edge#1\border@edge#2} +\newcommand*{\borderedcell}[1]{\csname edges@#1\endcsname} +\def\do#1{\withcsname\def edges@#1\endcsname} +\do b{\edgeborderedcell b} +\do l{\edgeborderedcell l} +\do r{\edgeborderedcell r} +\do t{\edgeborderedcell t} +%% TODO save more tokens?: +\do{bl}{\cornerborderedcell{bl}} +\do{br}{\cornerborderedcell{br}} +\do{lt}{\cornerborderedcell{lt}} +\do{rt}{\cornerborderedcell{rt}} +% \withcsname\show edges@rt\endcsname +\do{}{\simplecell} %% 2012/09/03 +%% % %% Another try at `\HVspace' with ... %% 2011/11/10 %% VERGEBLICH %% 2011/11/12 % \let\HVSP\HVspace %% 2011/11/11 @@ -655,6 +621,24 @@ %% (TODO may crash with 'fifinddo-info'): \providecommand*{\cheading}[1]{\CLBrk\TagSurr{h#1}{\@align@c}} %% |\begin{centerpar}| %% 2012/05/15 -\newenvironment*{centerpar}{<p \@align@c>}{</p>} +% \newenvironment*{centerpar}{<p \@align@c>}{</p>} +%% ... fails with tables in `texmap' ... TODO 2012/09/06 +%% |\imagesource{<graphic-file>}|: %% 2012/09/07 +\newcommand*{\imagesource}[1]{<img src="#1">} +\newcommand*{\deflag}{\imagesource{flag_de.gif}} %% 2012/09/08 +\newcommand*{\ukflag}{\imagesource{flag_uk.gif}} %% 2012/09/08 +%% 2012/09/26: +\newcommand*{\wikilangflagref}[3]{% + \wikilangref{#1}{#3}{\imagesource{flag_#2.gif}}} +\newcommand*{\wikideflagref}{\wikilangflagref{de}{de}} +\newcommand*{\wikienflagref}{\wikilangflagref{en}{uk}} +%% 2012/10/04: +\newcommand*{\wikideenflagref}[2]{% + \wikideflagref{#1}~\wikienflagref{#2}} +\newcommand*{\wikidebookref}{\wikilangbooksref{de}} +\newcommand*{\wikienbookref}{\wikilangbooksref{en}} +\newcommand*{\wikideenbookref}[2]{% + \wikidebookref{#1}{\deflag}~\wikienbookref{#2}{\ukflag}} +\renewcommand*{\acro}{\SimpleTagSurr{abbr}} %% 2012/09/18 %% \endinput diff --git a/Master/texmf-dist/tex/latex/morehype/texlinks.sty b/Master/texmf-dist/tex/latex/morehype/texlinks.sty index 8ca6e2da521..3a54c6a258d 100644 --- a/Master/texmf-dist/tex/latex/morehype/texlinks.sty +++ b/Master/texmf-dist/tex/latex/morehype/texlinks.sty @@ -1,5 +1,5 @@ \NeedsTeXFormat{LaTeX2e}[1994/12/01] %% \newcommand* etc. -\ProvidesPackage{texlinks}[2012/05/13 v0.6 TeX-related links (UL)] +\ProvidesPackage{texlinks}[2012/11/28 v0.7 TeX-related links (UL)] %% copyright (C) 2011 2012 Uwe Lueck, %% http://www.contact-ednotes.sty.de.vu %% -- author-maintained in the sense of LPPL below. @@ -97,7 +97,7 @@ %% as with the choice for `\httpref': %% TODO 2011/01/24 % \@ifdefinable\pkgnamefmt {\let\pkgnamefmt\@firstofone} % \AtBeginDocument {\let\pkgnamefmt\textsf} -%% <- This was here until v0.61, makes a difference for \acro{PDF} +%% <- This was here until v0.7, makes a difference for \acro{PDF} %% vs.\ 'blog' \HTML. Now we choose the same as with `\urlfmt': \providecommand*{\pkgnamefmt}{\textsf} %% Indeed, the same day we are providing `\textsf' in 'blog.sty'. @@ -243,8 +243,10 @@ %% <- 2012/03/09 etc. with Sec.~\ref{sec:bases} -> \newcommand*{\wikilangref}[1]{\httpbaseref{#1.wikipedia.org/wiki}} %% There is |\Wikilangref{<language-code>}{<lemma>}| -%% for the case that <lemma> and <text> are the same: -\newcommand*{\Wikilangref}[2]{\wikilangref{#1}{#2}{#2}} +%% for the case that <lemma> and <text> are the same. +%% With v0.7 however, this command becomes more powerful, +%% see Section~\ref{sec:pipe}. +% \newcommand*{\Wikilangref}[2]{\wikilangref{#1}{#2}{#2}} %% `\wikilangref{<lang>}[<lemma>]{<text>}' would be nicer; %% %% <- shortened 2012/01/06 -> %% however, the present code is to work with 'blog.sty' @@ -270,6 +272,59 @@ %% \ for \ %% \wikilangref{en}{TeX#History}{\TeX}. %% +%% === Piped Links === +%% \label{sec:pipe} +%% v0.7 emulates Wikipedia's +%% \wikiref{Help:Links\#Piped Links}{piped links} +%% as with Wikipedia source code \[`[[Pipeline|Pipe]]'\] +%% to get a link to article \qtd{Pipeline} with diplayed text +%% \qtd{\wikiref{Pipeline}{Pipe}}. The same syntax +%% (double brackets) is actually supported by +%% 'blog.sty' with 'blogexec.sty', while otherwise only +%% \[\GenCmdBox+\Wikilangref{<language-code>}{<lemma>|<text>}+\] +%% works---with settings more below something like +%% \GenCmdBox+\Wikiref{<lemma>|<text>}+---which +%% admittedly is not much better than the equivalent +%% \[`\wikiref{<lemma>}{<text>}'\] +%% +%% Even Wikipedia's feature that empty <text> removes +%% the disambiguation term as with `[[Pipe (computing)|]]' +%% resulting in \qtd{\wikiref{Pipe (computing)}{Pipe}} +%% is supported. +\newcommand*{\Wikilangref}[2]{% + \@wikilpref{#1}#2\BiteSep|\@nnil\BiteSep\@nil{#2}} +%% I have introduced `\BiteSep' and this kind of parsing +%% in the \ctanpkgdref{bitelist} package. +\def\@wikilpref#1#2|#3\BiteSep#4\@nil#5{% + \ifx\@nnil#3\@empty + \wikilangref{#1}{#5}{#5}% + \else + \wikilangref{#1}{#2}{% + \ifx\@three#3\@three + \wiki@noparen#2\@nil% + \else + #3% + \fi}% + \fi} +\def\wiki@noparen#1 (#2\@nil{#1} +%% I have thought about improving 'bitelist.sty', resulting +%% in the following code. In the present application, +%% I do not consider it superior. It uses +%% the same number of tokens but new one has additional +%% expansion step. The situation is different to the general case +%% because doing everything before `\fi' is okay here. +% \newcommand*{\Wikilangref}[2]{% +% \@wikilPref{#1}#2\BiteSep\@secondoftwo +% |\BiteSep\@firstoftwo\@nil{#2}} +% \def\@wikilPref#1#2|#3\BiteSep#4#5\@nil#6{% +% #4{\wikilangref{#1}{#6}{#6}}% +% {\wikilangref{#1}{#2}{% +% \ifx\@three#3\@three +% \wiki@noparen#2\@nil% +% \else +% #3% +% \fi}}} +%% %% === English and German === %% The next macros just save you from typing braces around %% the language codes for English and German: @@ -289,16 +344,21 @@ \newcommand*{\Wikiendisambref}{\Wikilangdisambref{en}} %% %% === ``Implicit" Choice of Language === %% 2012/01/06 +%% \label{sec:langcode} %% With v0.6, |\wikiref{<lemma>}{<text>}| works like -%% \[|\wikilang{<lc>}{<lemma>}{<text>}|\] when |\langcode| expands to <lc> +%% \[`\wikilangref{<lc>}{<lemma>}{<text>}'\] %% ref 2012/10/24 +%% when |\langcode| expands to <lc> %% (the two-letter language code according to \Wikiref{ISO 639-1}). -%% The default for <lc> is `en' for English. +%% The default for <lc> is \qtdcode{en} for English. %% It can be overridden even before loading 'texlinks' %% (e.g., by an earlier `\newcommand\langcode{de}'): \providecommand*{\langcode}{en} -%% For the German versions, use `\renewcommand\langcode{de}'. -%% You may find a package 'langcode' providing a command -%% `\uselangcode{<lc>}' that adjusts a number of other settings. +%% %% mod. 2012/10/24: +%% For the German versions, use \ `\renewcommand{\langcode}{de}'. \ +%% The \ctanpkgref{langcode} package provides a command \ +%% |\uselangcode{<lc>}| \ that works like +%% \ `\renewcommand*{\langcode}{<lc>}' \ +%% and adjusts a number of other settings. \newcommand*{\wikiref}{\wikilangref\langcode} %% |\Wikiref| and |Wikidisambref| are the obvious analogues: \newcommand*{\Wikiref}{\Wikilangref\langcode} @@ -363,7 +423,7 @@ % \@namedef{urluml:s}{\#C3\#9F} %% 2010/08/09 %% %% == \TeX-related == %% 2010/08/24 -%% === \CTAN === +%% === \CTAN === %% ==== Directories and Files in a \TeX\ Archive ==== %% % `\newcommand*{\ctanref}[1]{\httpref{ctan.org/#1}}' %% % once was replaced in 'blog.sty' by what will now be @@ -441,7 +501,7 @@ %% |\CtanPkgRef{<name>}{<Name>}| %% is a variant for the cases where authors have a special idea %% <Name> using some capital letters when they describe their packages -%% (ASCII versions of ``Logos" such as `BibTeX') +%% (ASCII versions of ``logos" such as `BibTeX') %% was Logos 2012/10/24 %% while the identifier <name> doesn't allow capital letters. %% %% 2011/01/24: %% Also, <Name> may be a package from a \emph{bundle} <name> @@ -452,40 +512,91 @@ \newcommand*{\CtanPkgRef}[2]{% \ctanorgbaseref{pkg/#1}{\pkgnamefmt{#2}}} \newcommand*{\ctanpkgref}[1]{\CtanPkgRef{#1}{#1}} -%% Jim Hefferon also offers pages listing all the packages +%% |\ctanpkgstyref{<name>}| %% 2012/11/27 +%% adds \qtdcode{.sty} to the package name: +\newcommand*{\ctanpkgstyref}[1]{\CtanPkgRef{#1}{#1.sty}} +%% Jim Hefferon also offers pages listing +%% of %% 2012/11/08 +%% all the packages %% of a given author, accessible by her/his <id>. %% |\ctanpkgauref{<id>}{<text>}| makes <text> a link to that page: \newcommand*{\ctanpkgauref}[1]{\ctanorgbaseref{author/id/#1}} %% E.g., see \ctanpkgauref{lueck}{\emph{my}} packages. %% -%% === \CTAN\ Announcements === %% 2011/06/27 +%% === Mailing Lists === +%% \label{sec:mail} +%% v0.7 relies on package \ctanpkgref{langcode} for +%% |\enmonthname{<month-number>}| and |\demonthname{<month-number>}|, +%% for tricks with language codes extending those in +%% Section~\ref{sec:langcode}: +\RequirePackage{langcode} +%% The next definitions are backbones for generating links to +%% web pages about \TeX\ mailing lists. +%% |\TL@piper@parse<year>-<month-number>-<id>| will be used +%% for referring to single postings: +\def\TL@piper@parse#1-#2-#3/{#1-\enmonthname{#2}/#3} +%% \[|\texlistyearmonthref<list-ref>{<2-digits>-<month-no>}|\] +%% will generate \ |<list-ref>{<path>}| \ for linking to the list of postings +%% of the <month-no>th month in the year 20<2-digits>: +\newcommand*{\texlistyearmonthref}[2]{\texlist@yearmonthref#1#2\@nil} +\def\texlist@yearmonthref#1#2-#3\@nil{#1{20#2-\enmonthname{#3}}} +%% \qtd{<path>} will be \qtdcode{20<2-digits>-<month>}, +%% and <month> will be the \emph{English} name of the +%% <month-no>th month of the year. +%% +%% \[|\texlanglistmonthref<month-cmd><list-ref>{<2-digits>-<month-no>}|\] +%% will generate \ |<list-ref>{<path>}{<month>}| \ +%% where <month> is determined from <month-no> by <month-cmd>: +\newcommand*{\texlanglistmonthref}[3]{\texlanglistm@nthref#1#2#3\@nil} +\def\texlanglistm@nthref#1#2#3-#4\@nil{% + #2{20#3-\enmonthname{#4}}{#1{#4}}} +%% |\detexlistmonthref<list-ref>{<2-digits>-<month-no>}| \ +%% now could be used for `<list-ref>{<path>}{<month>}' +%% \emph{German} <month> ... +\newcommand*{\detexlistmonthref}{\texlanglistmonthref\demonthname} +%% ... as could be \ |\entexlistmonthref<list-ref>{<2-digits>-<month-no>}| \ +%% for \emph{English} <month> ... +\newcommand*{\entexlistmonthref}{\texlanglistmonthref\enmonthname} +%% With proper use of \ctanpkgref{langcode} however, +%% \[|\texlistmonthref<list-ref>{<2-digits>-<month-no>}|\] +%% \emph{automatically} chooses between English and German <month> +%% (according to intention ...): +\newcommand*{\texlistmonthref}{\texlanglistmonthref\monthname} +%% +%% === \CTAN\ Announcements === %% 2011/06/27 %% |\ctanannref{<id>}{<text>}| makes <text> a link %% to the DANTE web page displaying a \CTAN\ %% announcement. You find <id> by searching %% \[\texttt{https://lists.dante.de/pipermail/ctan-ann/}\] %% and then reading the \URL. -%% <id> is composed as `<year>-<month>/<6-digits>.html'. +%% <id> is composed as +%% \[`<year>-<month>/<6-digits>.html'\]%%%, \[\] 2012/10/24 +%% %% 2012/10/24: +%% where <year> consists of 4 digits and <month> is an \emph{English} +%% month name: \newcommand*{\ctanannref}[1]{% \httpsref{lists.dante.de/pipermail/ctan-ann/#1}} %% |\ctanannpref{<id-code>}{<text>}| is a variant %% of `\ctanannref' where in place of <id> %% you only type the third and fourth digit of the -%% year, then a `-', then the (arabic) number of -%% the month, then another `-', and then the actual -%% internal identifier -%% (a number of six digits preceding `.html' of the \URL). +%% year (<2-digits>), then a \qtdcode{-}, then the (arabic) +%% number <month-no> of the month (cf. Section~\ref{sec:mail} so far), +%% then another \qtdcode{-}, +%% and then the actual internal identifier <running-no> +%% (a number of six digits preceding \qtdcode{.html} of the \URL). +%% I.e., \qtd{<id-code>} is \qtdcode{<2-digits>-<month-no>-<running-no>}. \newcommand*{\ctanannpref}[1]{% \ctanannref{\TL@piper@parse#1/.html}} -\def\TL@piper@parse#1-#2-#3/{% - #1-% - \ifcase #2\or - January\or February\or March\or April\or - May\or June\or July\or August\or - September\or October\or November\or December% 2010/12/23 - \fi - /#3} +%% \[|\ctanannyearmonthref{<2-digits>-<month-no>}|\] generates +%% `\ctanannref{<path>}' from \qtdcode{<2-digits>-<month-no>}---<path> +%% as in Section~\ref{sec:mail} ... +\newcommand*{\ctanannyearmonthref}{\texlistyearmonthref\ctanannref} +%% \[|\ctanannmonthref{<2-digits>-<month-no>}|\] generates +%% `\ctanannref{<path>}{<month>}' where <month> obeys `\langcode' ... +%% % from \qtdcode{<2-digits>-<month-no>} +\newcommand*{\ctanannmonthref}{\texlistmonthref\ctanannref} %% -%% === \acro{TUG} === +%% === \acro{TUG} === %% |\tugref{<path>}{<text>}| makes <text> a link %% to <path> on domain `tug.org': \newcommand*{\tugref}{\httpbaseref{tug.org}} @@ -514,7 +625,15 @@ \newcommand*{\texhaxpref}[1]{% %% 2010/09/07 \texhaxref{20\TL@piper@parse#1/.html}} %% 2011/05/03 %% TODO: `\texhaxPref#1' searches list of offsets -%% to determine year/month from id +%% to determine year/month from id ... +%% +%% \[|\texhaxyearmonthref{<2-digits>-<month-no>}|\] generates +%% `\texhaxref{<path>}' from \qtdcode{<2-digits>-<month-no>}---<path> +%% as in Section~\ref{sec:mail} ... +\newcommand*{\texhaxyearmonthref}{\texlistyearmonthref\texhaxref} +%% \[|\texhaxmonthref{<2-digits>-<month-no>}|\] generates +%% `\texhaxref{<path>}{<month>}' where <month> obeys `\langcode' ... +\newcommand*{\texhaxmonthref}{\texlistmonthref\texhaxref} %% %% ==== Other ==== %% %% 2011/04/27 corr. doc. vol/issue @@ -524,22 +643,27 @@ % \newcommand*{\tugbartref}[1]{\tugref{TUGboat/Articles/#1.pdf}} \newcommand*{\tugbartref}[1]{\tugref{TUGboat/#1.pdf}} %% %% <- 2011/04/30 -%% |\TUGIref{<anchor>}{<text>}| makes text a link to an <anchor> +%% |\tugiref{<anchor>}{<text>}| makes <text> %% <text> 2012/07/23 tugi 2012/08/05 +%% a link to an <anchor> %% on the \acro{TUG} web page entitled \qtd{TeX Resources on the Web} -%% (e.g., \TUGIref{web}{\qtd{Web Projects}}): -\newcommand*{\TUGIref}[1]{\tugref{interest.html\##1}} +%% (e.g., \tugiref{web}{\qtd{Web Projects}}): +\newcommand*{\tugiref}[1]{\tugref{interest.html\##1}} +%% It was `\TUGIref' until v0.6, we keep this for compatibility +%% (deprecated): +\newcommand*{\TUGIref}{} \let\TUGIref\tugiref %% -%% === \acro{UK FAQ} === +%% === \acro{UK FAQ} === %% |\ukfaqref{<label>}{<text>}| makes <text> a link to %% the UK~\TeX~FAQ page with ``label"~= <label>: \newcommand*{\ukfaqref}[1]{\httpref{% www.tex.ac.uk/cgi-bin/texfaq2html?label=#1}} -%% === Wikibooks === -%% |\wikilangbooks{<language-code>}{<file>}{<text>}| +%% === Wikibooks === +%% |\wikilangbooksref{<language-code>}{<book>/<subject>}{<text>}| +%% %% <- ref 2012/10/04, <book>/<subject> \newcommand*{\wikilangbooksref}[1]{% %% `lang' 2012/01/06 \httpbaseref{#1.wikibooks.org/wiki}} -%% |\latexwikibookref{<file>}{<subject>}{<text>}| refers to the -%% (English) \LaTeX\ Wikibook: +%% |\latexwikibookref{<subject>}{<text>}| refers to the %% rm. extra arg. 2012/10/24 +%% (English) \latexwikibookref{}{\LaTeX\ Wikibook:} \newcommand*{\latexwikibookref}[1]{\wikilangbooksref{en}{LaTeX/#1}} %% The German %% \wikilangbooksref{de}{LaTeX-Kompendium}{\dqtd{\LaTeX-Kompendium}} @@ -586,3 +710,15 @@ v0.6 2012/01/06 \wikilangref etc., \wikiref etc. depend on 2012/04/09 \ctanorgbaseref, \ctanpkgauref 2012/04/10 makedoc link works! 2012/05/13 example for \wikilangref corrected +uploaded with MOREHYPE r0.6 +v0.7 2012/07/23 doc.: <text> + 2012/08/05 \tugiref + 2012/10/04 doc. wikibooks: ref + 2012/10/24 ...monthref... requiring `langcode.sty', moving + links to mailing list pages from `texblog.fdf' + here; doc.: \pagebreak s, wikibooks: <book>..., + corr. args, \wikiref refers to `langcode.sty', + `ref', using \qtdcode (new in `makedoc.cfg') + 2012/11/08 doc.: Jim corr. + 2012/11/27 \ctanpkgstyref from 'texblog.fdf' + 2012/11/28 [[...|...]] |