summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/morehype
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2013-01-23 23:59:55 +0000
committerKarl Berry <karl@freefriends.org>2013-01-23 23:59:55 +0000
commit0ede421ecbc4d987f9818b63af7b6e2f55e90458 (patch)
treef9d33995d0f73fc1350aa7723fd43f514fcffa9e /Master/texmf-dist/tex/latex/morehype
parent6a0c2242e9789e60c9e653669af9d2e656fa97db (diff)
morehype 0.82 (22jan13)
git-svn-id: svn://tug.org/texlive/trunk@28921 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/morehype')
-rw-r--r--Master/texmf-dist/tex/latex/morehype/blog.sty5
-rw-r--r--Master/texmf-dist/tex/latex/morehype/blogdot.sty11
-rw-r--r--Master/texmf-dist/tex/latex/morehype/morehype.RLS1
-rw-r--r--Master/texmf-dist/tex/latex/morehype/texblog.fdf14
-rw-r--r--Master/texmf-dist/tex/latex/morehype/texlinks.sty378
5 files changed, 326 insertions, 83 deletions
diff --git a/Master/texmf-dist/tex/latex/morehype/blog.sty b/Master/texmf-dist/tex/latex/morehype/blog.sty
index c2cd6ffd7d9..a93f3084a84 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}[2013/01/04 v0.81 simple fast HTML (UL)]
+\ProvidesPackage{blog}[2013/01/21 v0.81a simple fast HTML (UL)]
%% copyright (C) 2010 2011 2012 2013 Uwe Lueck,
%% http://www.contact-ednotes.sty.de.vu
%% -- author-maintained in the sense of LPPL below.
@@ -14,7 +14,7 @@
%%
%% http://www.contact-ednotes.sty.de.vu
%%
-%% == \cs{newlet} == %% 2012/10/03
+%% === \cs{newlet} === %% 2012/10/03
%% |\newlet<cmd><cnd>| is also useful in surrounding files:
\newcommand*{\newlet}[2]{\@ifdefinable#1{\let#1#2}}
%%
@@ -1606,3 +1606,4 @@ v0.81 2012/12/20 \-, {enumtype}
2013/01/02 caron, "Ligatures ..." (&aelig; etc.)
2013/01/04 updating copyright
part of MOREHYPE RELEASE r0.81
+v0.81a 2013/01/21 \newlet in subsubsection
diff --git a/Master/texmf-dist/tex/latex/morehype/blogdot.sty b/Master/texmf-dist/tex/latex/morehype/blogdot.sty
index 104c791df07..abcd41a3bab 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}[2013/01/04 v0.41a HTML presentations (UL)]
+\ProvidesPackage{blogdot}[2013/01/22 v0.41b HTML presentations (UL)]
%% copyright (C) 2011 Uwe Lueck,
%% http://www.contact-ednotes.sty.de.vu
%% -- author-maintained in the sense of LPPL below.
@@ -272,10 +272,9 @@
\newcommand*{\ShowBlogDotFillText}{%
\def\BlogDotFillTextColor{\textcolor{red}}}
\DontShowBlogDotFillText
-%% As of 2011/10/21, 'texlinks.sty' provides
+%% As of 2013/01/22, 'texlinks.sty' provides %% adjusted 2013/01/22
%% `\ctanfileref{<path>}{<file-name>}' that uses an online
-%% \TeX\ archive according to
-%% \[|\usemirrorctan|\quad \mbox{or}\quad |\usetugctan|.\]
+%% \TeX\ archive randomly chosen or determined by the user.
%% This is preferable for an online version of the presentation.
%% In `dantev45.htm', this is used for example files.
%% When, on the other hand, internet access during the presentation is
@@ -329,4 +328,6 @@ v0.4 2011/10/21 \usecurrdirctan
part of morehype RELEASE r0.6
v0.41 2012/11/19 \startscreenpage with \\; doc. \
2012/11/21 updating version infos, doc. \pagebreak
-v0.41a 2013/01/04 rm. \pagebreak
+v0.41a 2013/01/04 rm. \pagebreak
+ part of morehype RELEASE r0.81
+v0.41b 2013/01/22 adjusted doc. on `texlinks'
diff --git a/Master/texmf-dist/tex/latex/morehype/morehype.RLS b/Master/texmf-dist/tex/latex/morehype/morehype.RLS
index 4e57f6725ab..c6f0d3bd48d 100644
--- a/Master/texmf-dist/tex/latex/morehype/morehype.RLS
+++ b/Master/texmf-dist/tex/latex/morehype/morehype.RLS
@@ -1,4 +1,5 @@
\ProvidesFile{morehype.RLS} %% RELEASE INFO
+ [2013/01/22 r0.82 texlinks v0.82 Jim? new! dir/open]
[2013/01/04 r0.81 texlinks v0.81 www.ctan...,
blog v0.81 enum...,
blogexec v0.21 noblog]
diff --git a/Master/texmf-dist/tex/latex/morehype/texblog.fdf b/Master/texmf-dist/tex/latex/morehype/texblog.fdf
index 58e8f9f64df..5bcf135ed7e 100644
--- a/Master/texmf-dist/tex/latex/morehype/texblog.fdf
+++ b/Master/texmf-dist/tex/latex/morehype/texblog.fdf
@@ -1,4 +1,4 @@
-\ProvidesFile{texblog.fdf}[2013/01/04 extra blog settings]
+\ProvidesFile{texblog.fdf}[2013/01/19 extra blog settings]
%%
%% macros I use for my note pages
%% -- Uwe Lueck, www.contact-ednotes.sty.de.vu
@@ -391,15 +391,21 @@
% \newcommand*{\todobytopic}[1]{% %% 2011/04/22, rm. 2011/11/08
% \myalert{\to\ \TOPref{#1}}}
\newcommand*{\UKFAQref}[1]{\ukfaqref{#1}{UK~FAQ}} %% 2011/01/03
-\useTUGctanbases %% 2012/12/30
-% \renewcommand*{\ctanpkgauref}{\tugctanpkgauref} %% 2012/12/30 rm. 2013/01/04
+% \useTUGctanbases %% 2012/12/30 rm. 2013/01/19
+\renewcommand*{\ctanpkgauref}{\tugctanpkgauref} %% 2012/12/30 rm. 2013/01/04
%% SelfHTML:
\newcommand*{\selfhtmlurl}{de.selfhtml.org}
\newcommand*{\selfhtmlref}{\httpbaseref\selfhtmlurl}
\newcommand*{\selfhtmlrefref}[1]{%
\selfhtmlref{/html/referenz/#1.htm}}
-\newcommand*{\selfhtmlcsseigref}{% %% 2012/09/23
+\newcommand*{\selfhtmlcsseigref}{% %% 2012/09/23
\httpbaseref{\selfhtmlurl/css/eigenschaften}}
+%% Recht: %% 2013/01/04
+\newcommand*{\dejuresprechref}[3]{%
+ \httpref{dejure.org/dienste/vernetzung/rechtsprechung/?%
+ Gericht=#1&Datum=#2&Aktenzeichen=#3}}
+\newcommand*{\DJsprechref}[3]{%
+ \dejuresprechref{#1}{#2}{#3}{#1 v. #2 (#3)}}
%% BlogLIGs moves to `markblog.sty' 2012/11/28
%% rm. HVspace etc. 2011/10/13
%% font switching (logical):
diff --git a/Master/texmf-dist/tex/latex/morehype/texlinks.sty b/Master/texmf-dist/tex/latex/morehype/texlinks.sty
index d14dd78dca7..c5f02ec1558 100644
--- a/Master/texmf-dist/tex/latex/morehype/texlinks.sty
+++ b/Master/texmf-dist/tex/latex/morehype/texlinks.sty
@@ -1,6 +1,6 @@
\NeedsTeXFormat{LaTeX2e}[1994/12/01] %% \newcommand* etc.
-\ProvidesPackage{texlinks}[2012/12/31 v0.81 TeX-related links (UL)]
-%% copyright (C) 2011 2012 Uwe Lueck,
+\ProvidesPackage{texlinks}[2013/01/22 v0.82 TeX-related links (UL)]
+%% copyright (C) 2011 2012 2013 Uwe Lueck,
%% http://www.contact-ednotes.sty.de.vu
%% -- author-maintained in the sense of LPPL below.
%%
@@ -15,6 +15,10 @@
%%
%% http://www.contact-ednotes.sty.de.vu
%%
+%% === \cs{newlet} === %% 2013/01/21
+%% |\newlet<cmd><cnd>| is a guarded `\let':
+\providecommand*{\newlet}[2]{\@ifdefinable#1{\let#1#2}}
+%%
%% == Links in General == %% 2012/12/15
%% === Outline ===
%% % Almost %% 2011/07/23
@@ -51,6 +55,7 @@
%% % Well, better \emph{not today} ... [2011/01/24, TODO]
%%
%% === Package Options ===
+%% \label{sec:opt} %% 2013/01/21
%% Somebody may want to suppress a definition of `\httpref'
%% at `\begin{document}' ... [2011/01/24, TODO]
%% %% 2011/02/10:
@@ -113,6 +118,7 @@
% \AtBeginDocument {\let\pkgnamefmt\textsf}
%% <- This was here until v0.7, makes a difference for \acro{PDF}
%% vs.\ 'blog'/\HTML. %% / 2012/12/28
+%% [Cf.~\secref{opt}!? TODO]---%% 2013/01/21
%% Now we choose the same as with `\urlfmt':
\providecommand*{\pkgnamefmt}{\textsf}
%% Indeed, the same day we are providing `\textsf' in 'blog.sty'.
@@ -140,8 +146,7 @@
%% |\NormalHTTPref| may be used as an alias for `\httpref'
%% in situations where the latter has been redefined %% v0.2
%% (as in \secref{urlfoot}):
-\AtBeginDocument{%% TODO: options, guarded \let (mine, HO)
- \@ifdefinable\NormalHTTPref{\let\NormalHTTPref\httpref}}
+\AtBeginDocument{\newlet\NormalHTTPref\httpref} %% TODO: sec:opt
%% |\ithttpref{<url>}{<text>}| displays <text> in italics:
% \newcommand*{\ithttpref}[2]{\NormalHTTPref{#1}{\textit{#2}}}
%% However, I seem never to have used it. And I would now
@@ -264,13 +269,39 @@
%% With
%% \[`\newcommand*{\myref}{\httpbaseref{<my-base>}}'\] %% } 2012/12/17
%% we need 5 %% was 3 2012/12/17
-%% tokens instead, using |\httpbaseref{<base>}{<rest>}|
+%% tokens instead, using \ |\httpbaseref{<base>}{<rest>}{<text>}| \
+%% %% <- added text 2013/01/21
%% defined as follows:
\newcommand*{\httpbaseref}[2]{\httpref{#1/#2}}
-%% We change many definitions in ensuing sections accordingly.
+%% Then `\myref{<rest>}{<text>}' will work like %% 2013/01/21
+%% \[`\httpref{<my-base>/<rest>}{<text>}'\]
+%% We change many definitions in ensuing sections accordingly---and
+%% with v0.82 we add a shorthand for definitions like the avove one
+%% for `\myref'. \[|\MakeBasedHref{<cmd>}{<base>}|\] may be applied
+%% as \[`\MakeBasedHref{\myref}{<my-base>}'\] above. In the general
+%% situation, \ `<cmd>{<path>}{<text>}' \ will work like
+%% \ `\httpref{<base>/<path>}{<text>}'.
+\newcommand*{\MakeBasedHref}[2]{%
+ \ifx#1\@undefined \else \ifx#1\relax \else
+ \PackageWarning{texlinks}{Redefining \string#1.}%
+ \fi \fi
+ \def#1{\httpbaseref{#2}}}
+%% However, it does not act like `\newcommand' when <cmd> has been
+%% defined earlier, it rather resembles `\DeclareRobustCommand',
+%% in that it just \emph{warns} in such a case.
+%% I don't actually make <cmd> robust because I guess it is anyway:
+%% The reason for allowing redefinitions has been application
+%% to cases where the user should be able to customize commands
+%% (\secref{custom-ref})---well,
+%% I could have `\NewBasedHref' and `\RenewBasedHref' some time
+%% TODO\footnote{And for sections \ref{sec:wiki-back} and
+%% \ref{sec:wikibooks}, an optional argument
+%% would have been nice.};
+%% TODO: `\@onlypreamble'?
%%
%% The situation is similar with (many) anchors of a (large) web page.
-%% With v0.6, we introduce |\httpancref{<page-url>}{<anchor>}|---perhaps,
+%% With v0.6, we introduce
+%% \[|\httpancref{<page-url>}{<anchor>}|\]---\emph{perhaps},
%% with `\mirrorctanref' (\secref{texcat}) etc.? TODO
% \newcommand*{\httpancref}[2]{\httpref{#1\##2}}
%%
@@ -523,6 +554,7 @@
% \@namedef{urluml:u}{\#C3\#BC}
% \@namedef{urluml:s}{\#C3\#9F} %% 2010/08/09
%%
+%% \pagebreak %% 2013/01/19
%% == \TeX-related == %% 2010/08/24
%% === \code{\html} === %% 2012/12/18
%% The shorthand macro |\html| saves a few tokens for
@@ -531,33 +563,146 @@
\newcommand*{\html}{.html}
%%
%% === \CTAN ===
-%% ==== Former `tug.ctan.org' ==== %% 2012/12/29
+%% ==== Overview: Archive vs.\ Descriptions Roots ==== %% 2013/01/19
+%% \label{sec:ctan-over}
+%% There have been \emph{\TeX\ archive roots} and
+%% \emph{\TeX\ package description roots} on
+%% \wikiref{CTAN}{\CTAN} web sites.
+%% I cannot define those terms exactly.
+%%
+%% \begin{singthm}{Examples} %% 2013/01/20
+%% of \TeX\ \strong{archive} roots currently
+%% (2012-01-20) are \urlhttpref{tug.ctan.org}, the random
+%% resolutions of \urlhttpref{mirror.ctan.org}, and
+%% \urlhttpref{www.ctan.org/tex-archive/}.
+%% They provide almost all material that may be useful
+%% in running \TeX\ and share an essentially fixed directory
+%% structure which however may vary over time due to new
+%% contributions. Among the top-level subdirectories of
+%% an archive root are `fonts', `graphics', and
+%% `macros/latex/contrib'.
+%% \end{singthm}
+%%
+%% Macro names for \TeX\ archive roots will look like
+%% |<prefix>ctanref|.
+%% In order to access an archive with root <ctan>, such a macro
+%% will be defined as
+%% \[`\httpbaseref{<ctan>}'\]
+%% in \secref{texarc} (apart from using shorthand macros for
+%% <ctan>)---see \secref{ctan-over} for `\httpbaseref'.
+%%
+%% \begin{singthm}{Examples}
+%% of \TeX\ package \strong{description} roots
+%% currently are \urlhttpref{www.ctan.org} (which works like `ctan.org')
+%% and \urlhttpref{alan.smcvt.edu} (Jim Hef{}feron's site at
+%% \wikiref{Saint Michael\string's College}{Saint~Michael's College}
+%% in \Wikiref{Vermont}, \acro{USA}.
+%% They have shared subdirectories `pkg' and `author'.
+%% When some package is described with an \emph{identifier} <id>,
+%% its description appears under
+%% \[`http://ctan.org/pkg/<id>'.\]
+%% \end{singthm}
+%%
+%% Macro names for such domains will look like |<prefix>ctanorgbaseref|.
+%% In order to access package descriptions from <ctan-org>,
+%% such a macro will be defined as
+%% \[`\httpbaseref{<ctan-org>}'\]
+%% in \secref{x.ctan.org}.
+%% % However, |alan.smcvt.edu| below has been a different domain~...
+%% \pagebreak[3]
+%% \begin{singthm}{Observations:}\leavevmode
+%% \begin{enumerate}
+%% \item All the \emph{description} roots have been \emph{domains}.
+%% \item A \emph{domain}
+%% \InlineCmdBox{<prefix>\code{\ctanorg}}---|\ctanorg|
+%% saves a few tokens here: %% 2012/12/18, mv. down 2012/12/29 ...
+\newcommand*{\ctanorg}{.ctan.org}
+%% ---has been \emph{either} a package \emph{description} root
+%% \emph{or} a \TeX\ \emph{archive} root.
+%% \item When <ctan-org> has been a \emph{description} root,
+%% `<ctan-org>/tex-archive' has been a \TeX\ \emph{archive} root
+%% (with a similar design). %% 2013/01/21
+%% \end{enumerate}
+%% \end{singthm}
+%%
+%% ==== History of `tug.ctan.org' ==== %% 2012/12/29
%% \label{sec:tug.ctan.org}
-%% Apparently on 2012-12-21, `tug.ctan.org' ceased to refer
-%% to the \CTAN\ interface that Jim Hef{}feron had developed,
-%% and it has no longer provided a \TeX\ archive or package descriptions.
-%% This killed many links generated by 'texlinks', and
+%% %% Moved down 2013/01/20:
+%% When the present 'texlinks' package started in January 2011,
+%% I preferred the design and information of Jim's
+%% package descriptions under `ctan.org' to the very similar
+%% descriptions by \catalogueref{}{\meta{The \TeX\ Catalogue}}
+%% (\secref{texcat}), and I preferred Jim's design of
+%% \TeX\ archive directory displays in the above-mentioned
+%% archive with root `ctan.org/tex-archive'.
+%% The 'texlinks' \emph{documentation} explicitly said that
+%% certain \URL s referred to Jim Hef{}feron's pages.
+%%
+%% With the advent of ``the new `www.ctan.org'" announced on
+%% \ctanannpref{12-12-006718}{2012-12-12,} Jim's design was
+%% no longer available as described before. The links intended to
+%% get Jim's design received a collection of different designs
+%% to choose from, while I preferred Jim's to all of them.
+%% So the 'texlinks' documentation suddenly was wrong.
+%% A serious contentual shortcoming in my view was that,
+%% unlike Jim's and the Catalogue's package descriptions,
+%% the new ones did not display direct links to package
+%% documentations---this difference vanished after Christmas.
+%% Moreover, the links to lists of packages by the same author
+%% suddenly just failed, were ``dead."
+%%
+%% %% Much modified 2013/01/19:
+%% % In the ``new `www.ctan.org'" situation described above, %% rm. 2013/01/20
+%% I discovered that I only had to replace
+%% `ctan.org' by |tug.ctan.org| in order to get the original
+%% functionality of 'texlinks'---linking to Jim's pages---back.
+%% This was implemented by 'texlinks' v0.8, introducing
+%% |\tugctanorg| (useful in the present
+%% documentation---\secref{search-pkg}, \secref{x.ctan.org})
+%% and derived macros. In the terms introduced
+%% above, `tug.ctan.org' then was a \emph{package description root}.
+%%
+%% Apparently on December 21th, within 24 hours after uploading
+%% v0.8, `tug.ctan.org' ceased to refer to Jim's pages
+%% and actually no longer provided a \TeX\ archive or
+%% package descriptions. My
+%% \[\urlhttpref{www.webdesign-bu.de/uwe\string_lueck/heyctan.htm}\]
+%% became a superb collection of dead links, and
%% `\tugctanref' and `\usetugctan' from v0.41 as well as
%% `\TugCtanPkgRef' and `\useTUGpkgpages' (among others)
-%% from v0.8 that I uploaded 2012-12-20 became useless.
+%% became useless.
%%
-%% I am now trying to make sense of these 'texlinks' macros
-%% for a while, in order to avoid changing existing code
-%% (in my package documentations and on my web pages).
-%% For this purpose, |ctan.tug.org| and |alan.smcvt.edu|
-%% seem to be good domains. I have been warned that this
-%% may stop working soon again. So I do \strong{not recommend}
-%% typing new code containing macros whose names contain `tugctan'.
+%% Then I discovered that |ctan.tug.org| still was a
+%% \emph{package description root} with Jim's design.
+%% Although Robin Fairbairns and Jim warned me that
+%% Jim's pages may be switched off altogether soon,
+%% I replaced `tug.ctan.org' by `ctan.tug.org'
+%% (including the definition of |\tugctanorg|) for 'texlinks' v0.81
+%% and released it on 2013-01-04. Quite immediately,
+%% `ctan.tug.org' showed the same behaviour has `tug.ctan.org',
+%% killing the links of my `heyctan.htm' again.
%%
-%% Also for later documentation
-%% (\secref{search-pkg}, \secref{x.ctan.org}),
-%% I introduce |\tugctanorg|, with a very counter-intuitive
-%% definition due to what I have mentioned
-%% (and to get intuitive interrelations instead):
-\newcommand*{\tugctanorg}{ctan.tug.org}
-%% (TODO: cf. \secref{tug})
+%% |alan.smcvt.edu| seems to be the last resort to get
+%% Jim's package descriptions and archive directories.
+%% |\tugctanorg| now becomes heavily counter-intuitive,
+%% but this way I need not change so much.
+\newcommand*{\tugctanorg}{alan.smcvt.edu} %%% {ctan.tug.org}
+%% Karl Berry informed me 2013-01-09 that |tug.ctan.org|
+%% has started to be a relatively long-term
+%% \emph{\TeX\ archive root}---while I first used it as a
+%% \emph{package description} root and
+%% `tug.ctan.org/tex-archive' as an archive root). %% 2013/01/21
+%% One may remember in the sequel that |tugctan| refers to
+%% \emph{former} `tug.ctan.org' rather than to the \emph{present} one.
+%% % (TODO: cf. \secref{tug})
+%% Anyway, usage of these macros is \strong{not recommended},
+%% they are rather a kind of ``compatibility" code for
+%% old source files. Personally,
+%% I also restrict their usage to source files that I edit
+%% regularly, so I am quickly aware of changes of links.
%%
%% ==== Directories and Files in a \TeX~Archive ====
+%% \label{sec:texarc} %% 2013/01/19
%% % `\newcommand*{\ctanref}[1]{\httpref{ctan.org/#1}}'
%% % once was replaced in 'blog.sty' by what will now be
%% \[|\tugctanref{<path>}{<text>}|\] %% \[...\] 2012/12/19
@@ -565,7 +710,7 @@
%% makes <text> a link
%% to a \TeX~Archive directory or file <path>
%% with Jim Hef{}feron's interface. %% 2012/12/29
-\newcommand*{\tugctanref}{\httpbaseref{\tugctanorg/tex-archive}}
+\MakeBasedHref{\tugctanref}{\tugctanorg/tex-archive}
%% \simpleexample{\tugctanref{}{Archive root}}
%% Alternatively, you can refer to an (automatically chosen)
%% \CTAN\ \emph{mirror}
@@ -573,57 +718,133 @@
%% \[|\mirrorctanref{<path>}{<text>}|.\] %% 2011/10/10 :->.2011/10/21:
%% % (I prefer the \emph{appearance} of the %% rm. 2012/12/29
%% % \tugctanref{}{\TUG\ archive}, designed by Jim Hefferon.)
-%% |\ctanorg| saves a few tokens: %% 2012/12/18, mv. down 2012/12/29
-\newcommand*{\ctanorg}{.ctan.org}
-\newcommand*{\mirrorctanref}{\httpbaseref{mirror\ctanorg}}
+\MakeBasedHref{\mirrorctanref}{mirror\ctanorg}
%% \simpleexample{\mirrorctanref{}{Archive root}}
%% You may actually want to ``open" a file <file-name> in <path>
%% on \CTAN,
%% <file-name> displayed as the link text, %% 2011/10/21
-%% either by
-%% \[|\tugctanfileref{<path>}{<file-name>}|\] %% 2011/10/10
-%% or (for a mirror) by
+%% % either by
+%% % \[|\tugctanfileref{<path>}{<file-name>}|\] %% 2011/10/10
+%% % or (for a mirror) by
+%% by %% 2013/01/21
%% \[|\mirrorctanfileref{<path>}{<file-name>}|.\] %% 2011/10/10
-\newcommand*{\tugctanfileref}[2]{%
- \tugctanref{#1/#2}{\filenamefmt{#2}}}
+% \newcommand*{\tugctanfileref}[2]{%
+% \tugctanref{#1/#2}{\filenamefmt{#2}}}
\newcommand*{\mirrorctanfileref}[2]{%
\mirrorctanref{#1/#2}{\filenamefmt{#2}}}
%% Typically, \LaTeX\ macro packages in `macros/latex/contrib/'
%% are discussed, so here is |\ltxcontrib| saving a few characters:
\newcommand*{\ltxcontrib}{macros/latex/contrib/}
-%% So \[\simplecodefbox{%
-%% \mirrorctanref{&\ltxcontrib morehype}{&\pkg{morehype}}}\]
-%% yields \simplecodeoutfbox{%
-%% \mirrorctanref {\ltxcontrib morehype}{&\pkg{morehype}}}.
+%% \begin{example}\leavevmode %% 2013/01/22
+%% \[\simplecodefbox{%
+%% \mirrorctanref{&\ltxcontrib morehype}{&\pkg{morehype}}}\]
+%% yields \ \simplecodeoutfbox{%
+%% \mirrorctanref{\ltxcontrib morehype}{&\pkg{morehype}}}.
%% %% <- & doesn't work in first arg. of \href 2012/12/30
%% %% -> `replace.sty'?
+%% \end{example}
+%%
+%% %% 2013/01/21:
+%% v0.82 removes `\tugctanfileref' which seems not to be useful.
+%% My reason to choose Jim Hef{}feron's pages was
+%% how \CTAN\ \emph{directories} are displayed.
+%% For \emph{opening a file} from, any mirror should do.
+%% However ... TODO
+%%
+%% Only for v0.82 I realize that the ``new `www.ctan.org'"
+%% might provide directory designs (you can choose from predefined
+%% ones and install your own) that users prefer to
+%% the directory display of common \CTAN\ mirrors.
+%% \[|\wwwctanref{<path>}{<text>}|\]
+%% is made for this purpose. It may replace `\tugctanref'
+%% especially when the latter vanishes:
+\MakeBasedHref{\wwwctanref}{www\ctanorg/tex-archive}
+%% \simpleexample{\wwwctanref{}{Archive root}}
%%
-%% |\ctanref| works like `\tugctanref' or like `\mirrorctanref',
-%% depending on |\usetugctan| vs.\ |\usemirrorctan|.
+%% ==== Shorthand \cs{ctanref} for \CTAN\ Mirrors ==== %% 2013/01/21
+%% \label{sec:custom-ref}
+%% |\ctanref| works like one out of
+%% \[`\tugctanref', `\mirrorctanref', `\wwwctanref', `\myctanref'\]
+%% depending on which out of
+%% \[|\usetugctan|, |\usemirrorctan|, |\usewwwctan|, |\usemyctan|\]
+%% appeared most recently.
+%% By default, it works like `\mirrorctanref'.
%% So in any case its syntax is \[|\ctanref{<path>}{<text>}|.\]
-%% Likewise, |\ctanfileref| works like
-%% \[`\tugctanfileref'\quad \mbox{or}\quad `\mirrorctanfileref',\]
-%% depending on the same `\usetugctan' vs.\ `\usemirrorctan',
-%% so the syntax is
-%% \[|\ctanfileref{<path>}{<file-name>}|\]
-\newcommand*{\ctanref}{} \newcommand*{\ctanfileref}{}
+%% The idea is that it is a shorthand to access the user's
+%% favourite \CTAN\ mirror, or just to save the `www'
+%% in `\wwwctanref', for instance. It may also be modified directly
+%% using
+%% \[|\MakeBasedHref{\ctanref}{<ctan-mirror>}|\]
+%% where <ctan-mirror> is a \URL\ of a root of
+%% a \CTAN\ mirror, or by
+%% \[|\renewcommand{\ctanref}{\dirctanref}|\]
+%% for instance ... \ another macro for a \CTAN\ mirror
+%% that you may meet soon. (See \secref{bases} for `\MakeBasedHref'.)
\newcommand*{\usemirrorctan}{%
\let \ctanref \mirrorctanref
- \let \ctanfileref \mirrorctanfileref}
-\newcommand*{\usetugctan}{%
- \let \ctanref \tugctanref
- \let \ctanfileref \tugctanfileref}
+% \let \ctanfileref \mirrorctanfileref
+}
%% |\usemirrorctan| is the \strong{default}, i.e.,
-%% |\ctanref| and |\ctanfileref| use
+%% |\ctanref| % and |\ctanfileref| use
+%% uses
%% \urlhttpref{mirror.ctan.org}:
\usemirrorctan
-%% So
-%% \simplecodefbox {\ctanref{&\ltxcontrib morehype}{&\pkg{morehype}}}
-%% yields
-%% \simplecodeoutfbox{\ctanref {\ltxcontrib morehype}{&\pkg{morehype}}}.
-%% \meta{Remark} (TODO): \ Another implementation I consider is
+\newcommand*{\usetugctan}{%
+ \let \ctanref \tugctanref
+% \let \ctanfileref \tugctanfileref
+}
+\newcommand*{\usewwwctan}{\let\ctanref\wwwctanref}
+%% |\myctanref| again is \emph{initialized} to work like
+%% `\mirrorctanref':
+\newlet\myctanref\mirrorctanref
+%% However, it is \emph{intended} to store the
+%% user's favourite mirror <my-ctan>, hoping that the user issues
+%% \[|\MakeBasedHref{\myctanref}{<my-ctan>}|\]
+%% and \emph{only afterwards} issues |\usemyctanref|:
+\newcommand*{\usemyctanref}{\let\ctanref\myctanref}
+%% ... not entirely sure ... the user could directly issue
+%% \[`\MakeBasedHref{\ctanref}{<my-ctan>}'\]
+%% The advantage of `\usemyctanref' is that you can
+%% switch to another `\ctanref' later and then return to
+%% `\myctanref' ... not so stable TODO
+%% \begin{singthm}{Remark} (TODO) \ Another implementation
+%% of adjusting `\ctanref' I consider is
%% using some `\ctanurl'\-`prefix' that you can redefine for
%% accessing your favourite mirror.
+%% \end{singthm}
+%%
+%% ==== Flexibiblity with Files and Directories ==== %% 2013/01/22
+%% With some influence of the ideas of v0.41, `\ctanref'
+%% now is a shorthand for viewing \CTAN\ directories,
+%% e.g., working like `\mirrorctanref'. There was a
+%% flexible variant of `\mirrorctanfileref' too,
+%% but the implementation was bad from my present view.
+%% I no longer want to offer downloads from Jim's pages.
+%% \[|\ctanfileref{<path>}{<file>}|\] displays <file> as link text
+%% and opens it. The mirror is chosen according to a shorthand
+%% \ |\filectanref{<path>/<file>}{<text>}| \ that can be
+%% adjusted with `\MakeBasedHref' like `\ctanref':
+\newcommand*{\ctanfileref}[2]{%
+ \filectanref{#1/#2}{\filenamefmt{#2}}}
+%% |\filectanref| is initialized to work like `\mirrorctanref':
+\newlet\filectanref\mirrorctanref
+%% The purpose is that the user adjusts it by
+%% \[|\MakeBasedHref{\filectanref}{<ctan-down>}|\]
+%% when she wants to download (open) files from \CTAN\ mirror <ctan-down>,
+%% which may be the mirror at the university where she sits.
+%% \begin{example}\leavevmode
+%% \[ \simplecodefbox{\ctanfileref{&\ltxcontrib morehype/doc}{texlinks.pdf}}\]
+%% yields \
+%% \simplecodeoutfbox{\ctanfileref{\ltxcontrib morehype/doc}{texlinks.pdf}}
+%% \end{example}
+%%
+%% It may be psychologically useful to have an \emph{opposite}
+%% to `\filectanref' that can easily be recognized as such,
+%% while `\ctanref' may be unclear. I offer
+%% \ |\dirfilectanref{<path>}{<text>}|. \ It may be an alias
+%% for `\ctanref', even respecting the `\use'\codedots\ commands
+%% from above. Another proposal above is dangerous with the present idea:
+\newcommand*{\dirctanref}{\ctanref}
%%
%% ==== The \TeX\ Catalogue OnLine ====
%% %% **** J\"urgen Fenn's Topical \TeX\ Catalogue ****
@@ -710,17 +931,19 @@
%% and no longer call themselves ``Jim Hef{}feron's."
%% The latter's pages seem to stay available under
%% \urlfmt{\tugctanorg}. Major contentual differences at present
-%% (2012-12-18) seem to be:
-%% \begin{enumerate}
-%% \item `www.ctan.org' classifies packages by a new concept
-%% of ``topics," while \urlfmt{\tugctanorg} classifies them
+%% (2013-01-21) seem to be that %%% (2012-12-18) seem to be:
+%% % \begin{enumerate}
+%% % \item
+%% `www.ctan.org' classifies packages by a new concept
+%% of ``\strong{topics}," %% \strong 2013/01/21
+%% while \urlfmt{\tugctanorg} classifies them
%% by ``\strong{keywords}" as well as
%% by ``\strong{char\-ac\-teri\-za\-tions}" out of which one is
%% ``primary" and others are ``secondary."
-%% \item \urlfmt{\tugctanorg} like the Catalogue as in \secref{texcat}
-%% provides links to single documentation files,
-%% unlike `www.ctan.org'.
-%% \end{enumerate}
+%% % \item \urlfmt{\tugctanorg} like the Catalogue as in \secref{texcat}
+%% % provides links to single documentation files,
+%% % unlike `www.ctan.org'.
+%% % \end{enumerate}
%%
%% In order to keep as much as possible, I introduce new
%% `\tugctan'\codedots\ and `\wwwctan'\codedots\ commands.
@@ -735,7 +958,7 @@
\newcommand*{\tugctanorgbaseref}{\httpbaseref\tugctanorg}
%% |\wwwctanorgbaseref{<path>}{<text>}| \ links to `www.ctan.org'
%% independently of the choice for `\ctanorgbaseref':
-\newcommand*{\wwwctanorgbaseref}{\httpbaseref{www\ctanorg}}
+\MakeBasedHref{\wwwctanorgbaseref}{www\ctanorg}
%% |\useTUGctanbases| \ lets `\ctanorgbaseref' be `\tugctanorgbaseref':
\newcommand*{\useTUGctanbases}{\let\ctanorgbaseref\tugctanorgbaseref}
%% `\ctanorgbaseref{<path>}{<text>}' before v0.81 aimed to get Jim Hef{}feron's
@@ -771,7 +994,7 @@
%% The next commands allow that choice independently of
%% `\ctanorgbaseref', by contrast.
%% |\useTUGpkgpages| may be issued to stick to the \TUG\
-%% package descriptions (from `CtanPkgRef').
+%% package descriptions (from `\CtanPkgRef'). %% \ 2013/01/21
%% % even after `\useWWWctanorgbases' (useful? TODO): %% rm. 2012/12/29
\newcommand*{\TugCtanPkgRef}{\Ct@nPkgRef\tugctanorgbaseref}
\newcommand*{\tugctanpkgref}{\@double@first@arg\TugCtanPkgRef}
@@ -869,9 +1092,9 @@
%% This page in fact is accessed by `\ctanpkgtopicref{}'
%% (<topic-id> empty). Jim Hef{}feron's keywords
%% %%% and characterizations
-%% can be browsed on \urlhttpref{\tugctanorg/keywords}.
+%% can be browsed on \[\urlhttpref{\tugctanorg/keywords}.\]
%% His characterizations can be browsed from
-%% \urlhttpref{\tugctanorg/characterization/choose\string_dimen}.
+%% \[\urlhttpref{\tugctanorg/characterization/choose\string_dimen}.\]
%% \item \urlhttpref{\tugctanorg/pkg} is a single page listing
%% all package identifiers <pkg-id>
%% (for `\ctanpkgref{<pkg-id>}', as links).
@@ -973,7 +1196,7 @@
%% \label{sec:tug} %% 2012/12/29
%% |\tugref{<path>}{<text>}| makes <text> a link
%% to <path> on domain `tug.org':
-\newcommand*{\tugref}{\httpbaseref{tug.org}}
+\MakeBasedHref{\tugref}{tug.org}
%% ==== texhax ====
%% |\texhaxref{<id>}{<text>}| makes <text> a link
%% to the \TUG\ web page displaying
@@ -1025,7 +1248,7 @@
\newcommand*{\tugiref}[1]{\tugref{interest\html\##1}}
%% It was `\TUGIref' until v0.6, we keep this for compatibility
%% (deprecated):
-\newcommand*{\TUGIref}{} \let\TUGIref\tugiref
+\newlet\TUGIref\tugiref
%%
%% === \acro{UK FAQ} ===
%% |\ukfaqref{<label>}{<text>}| makes <text> a link to
@@ -1033,6 +1256,7 @@
\newcommand*{\ukfaqref}[1]{\httpref{%
www.tex.ac.uk/cgi-bin/texfaq2html?label=#1}}
%% === Wikibooks ===
+%% \label{sec:wikibooks} %% 2013/01/21
%% |\wikilangbooksref{<language-code>}{<book>/<subject>}{<text>}|
%% %% <- ref 2012/10/04, <book>/<subject>
\newcommand*{\wikilangbooksref}[1]{% %% `lang' 2012/01/06
@@ -1129,6 +1353,7 @@ v0.8 2012/12/15 \domainref from `texblog.fdf'
2012/12/19 \cat@ctan@pkg@ref, \@double@first@arg;
doc. uses {example}, \fbox, etc.
2012/12/20 \ctanpkgtopicref
+ -> r0.8
v0.81 2012/12/28 doc.: "fonts" \provide, corr. \pkgnamefmt,
reworked \urlfoot
2012/12/29 \tugctanorg; doc.: TODO on "fonts",
@@ -1136,3 +1361,12 @@ v0.81 2012/12/28 doc.: "fonts" \provide, corr. \pkgnamefmt,
2012/12/30 ... in sec:search-pkg; mod. doc. \ctanpkgauref,
more doc. wiki "overview", \simplecodefbox etc.,
2012/12/31 doc. "the" Welcome ...
+ -> r0.81
+v0.82 2013/01/18 \tugctanorg -> alan.smcvt.edu
+ 2013/01/19 reworking doc. on CTAN; \pagebreak
+ 2013/01/20 updated (C), reworking doc. on CTAN
+ 2013/01/21 \MakeBasedHref, \wwwctanref, \usewwwctan,
+ \newlet; doc.: typo fix, updated sec:x.ctan.org
+ 2013/01/21 applying \newlet, \myctanref, \usemyctan,
+ \ctanfileref reimplemented, \filectanref,
+ \dirctanref; doc.: \ltxcontrib with {example}