<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">\ProvidesPackage{lnavicol}[2011/10/13
                           left navigation column with blog.sty]
%%
%% 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 
%%
%% == 'blog.sty' Required ==
%% ---but what about options (TODO)?    %% 2011/10/09
\RequirePackage{blog} 
%%
%% == Switches ==
%% %% introduced 2011/04/29, it seems
%% There is a ``standard" page width and a ``tight one" 
%% (the latter for contact forms)---|\iftight|:
\newif\iftight 
%% In order to move an anchor to the \emph{top} of the screen 
%% when the anchor is near the page end, the page must get 
%% some extra length by adding empty space at its 
%% bottom---|\ifdeep|:
\newif\ifdeep 
%% 
%% == Page Style Settings (to be set locally) ==
% \newcommand*{\pagebgcolor}{\#f5f5f5}  %% CSS whitesmoke
% \newcommand*{\pagespacing}{\@cellpadding{4} \@cellspacing{7}} 
% \newcommand*{\pagenavicolwidth}{125}
% \newcommand*{\pagemaincolwidth}{584}
% \newcommand*{\pagewholewidth}  {792}
%% == Possible Additions to 'blog.sty' ==
%% === Tables ===
%% |\begin{spancolscell}{&lt;number&gt;}{&lt;style&gt;}|
%% opens an environment that contains a row and a single cell 
%% that will span &lt;number&gt; table cells and have style &lt;style&gt;:
\newenvironment{spancolscell}[2]{%
    \starttr\startTd{\@colspan{#1} #2 % 
                     \@width{100\%}}% %% TODO works? 
    }{\endTd\endtr}
%% The |{hiddencells}| einvironment contains cells that do not align 
%% with other cells in the surrounding table. The purpose is using
%% cells for horizontal spacing.
\newenvironment{hiddencells}
    {\startTable{}\starttr}
    {\endtr\endTable}
%% |{pagehiddencells}| is like `{hiddencells}' except that 
%% the \HTML\ code is indented:
\newenvironment{pagehiddencells}
    {\indentii\hiddencells}
    {\indentii\endhiddencells}
%% |\begin{FixedWidthCell}{&lt;width&gt;}{&lt;style&gt;}| \ opens the 
%% `{FixedWidthCell}' environment. The content will form a cell 
%% of width &lt;width&gt;. &lt;style&gt; are additional formatting parameters:
\newenvironment{FixedWidthCell}[2]
    {\startTd{#2}\startTable{\@width{#1}}%
     \starttr\startTd{}}
    {\endTd\endtr\endTable\endTd}
%% |\tablehspace{&lt;width&gt;}| is a variant of \LaTeX's `\hspace{&lt;glue&gt;}'. 
%% It may appear in a table row: 
\newcommand*{\tablehspace}[1]{\startTd{\@width{#1} /}}
%%
%% === Graphics ===
%% The command names in this section are inspired by the names 
%% in the standard \LaTeX\ \ctanpkgref{graphics} package.
%% (They may need some re-organization TODO.)
%% 
%% |\simpleinclgrf{&lt;file&gt;}| embeds a graphic file &lt;file&gt; without 
%% the tricks of the remaining commands.
\newcommand*{\simpleinclgrf}[1]{\IncludeGrf{alt="" \@border{0}}%
                                           {#1}}
%% |\IncludeGrf{&lt;style&gt;}{&lt;file&gt;}| embeds a graphic file &lt;file&gt; 
%% with style settings &lt;style&gt;:
\newcommand*{\IncludeGrf}[2]{&lt;img #1 src="#2"&gt;}
%% |\includegraphic{&lt;width&gt;}{&lt;height&gt;}{&lt;file&gt;}{&lt;border&gt;}{&lt;alt&gt;}{&lt;tooltip&gt;}| 
%% ...:                             %% fine with mdoccorr 2011/10/13
\newcommand*{\includegraphic}[6]{% 
    \IncludeGrf{%
        \@width{#1} \@height{#2} %% data; presentation:
        \@border{#4} 
        alt="#5" \@title{#6}}%
        {#3}}
%% |\insertgraphic{&lt;wd&gt;}{&lt;ht&gt;}{&lt;f&gt;}{&lt;b&gt;}{&lt;align&gt;}{&lt;hsp&gt;}{&lt;vsp&gt;}{&lt;alt&gt;}{&lt;t&gt;}|
%% \\adds &lt;hsp&gt; for the `@hspace' and &lt;vsp&gt; for the `@vspace' 
%% attribute:
\newcommand*{\insertgraphic}[9]{%
    \IncludeGrf{%
        \@width{#1} \@height{#2} %% data; presentation:
        \@border{#4} 
        align="#5" hspace="#6" vspace="#8"
        alt="#8" \@title{#9}}%
        {#3}}
%% |\includegraphic{&lt;wd&gt;}{&lt;ht&gt;}{&lt;file&gt;}{&lt;anchor&gt;}{&lt;border&gt;}{&lt;alt&gt;}{&lt;tooltip&gt;}| 
%% \\uses an image with `\includegraphic' parameters as a link to 
%% &lt;anchor&gt;:
\newcommand*{\inclgrfref}[7]{%
    \fileref{#4}{\includegraphic{#1}{#2}{#3}%
                                {#5}{#6}{#7}}}
%%
%% === \acro{HTTP}/Wikipedia tooltips ===
%% |\httptipref{&lt;tip&gt;}{&lt;www&gt;}{&lt;text&gt;}| \ works like \
%% `\httpref{&lt;www&gt;}{&lt;text&gt;}' except that &lt;tip&gt; appears as ``tooltip":
\newcommand*{\httptipref}[2]{%
  \TagSurr a{\@title{#1}\@href{http://#2}\@target@blank}}
%% |\@target@blank| abbreviates the `@target' setting for 
%% opening the target in a new window or tab:
\newcommand*{\@target@blank}{target="_blank"}
%% % |\wikitipref{&lt;language-code&gt;}{&lt;lemma&gt;}{&lt;text&gt;}| \ 
%% |\wikitipref{&lt;lc&gt;}{&lt;lem&gt;}{&lt;text&gt;}| 
%% works like
%% % \\
%% % `\wikiref{&lt;language-code&gt;}{&lt;lemma&gt;}{&lt;text&gt;}' 
%% `\wikiref{&lt;lc&gt;}{&lt;lem&gt;}{&lt;text&gt;}' 
%% except that 
%% ``Wikipedia" appears as ``tooltip". 
%% |\wikideref| and |\wikienref| are redefined to use it:
\newcommand*{\wikitipref}[2]{%
    \httptipref{Wikipedia}{#1.wikipedia.org/wiki/#2}}
\renewcommand*{\wikideref}{\wikitipref{de}}
\renewcommand*{\wikienref}{\wikitipref{en}}
%%
%% == Page Structure ==
%% The body of the page is a table of three rows and two columns. 
%% === Page Head Row ===
%% |\PAGEHEAD| opens the head row and a single cell that will span 
%% the two columns of the second row.
\newcommand*{\PAGEHEAD}{%
  \startTable{%
    \@align@c\ 
    \@bgcolor{\pagebgcolor}%
    \@border{0}%%                       %% TODO local 
    \pagespacing
    \iftight \else \@width\pagewholewidth \fi 
  }\CLBrk
  %% omitting &lt;tbody&gt;
  \ \comment{ HEAD ROW }\CLBrk
  \indenti\spancolscell{2}{}%
}
% \newcommand*{\headgrf}  [1]{%                     %% rm. 2011/10/09
%     \indentiii\simplecell{\simpleinclgrf{#1}}}
% \newcommand*{\headgrfskiptitle}[3]{%
%   \pagehiddencells
%     \headgrf{#1}\CLBrk
%     \headskip{#2}\CLBrk
%     \headtitle1{#3}\CLBrk
%   \endpagehiddencells}
%% |\headuseskiptitle{&lt;grf&gt;}{&lt;skip&gt;}{&lt;title&gt;}|
%% first places &lt;grf&gt;, then skips horizontally by &lt;skip&gt;, 
%% and then prints the page title as \xmltagcode{h1}:
\newcommand*{\headuseskiptitle}[3]{%
  \pagehiddencells\CLBrk
    \indentiii\simplecell{#1}\CLBrk
    \headskip{#2}\CLBrk
    \headtitle1{#3}\CLBrk
  \endpagehiddencells}
%% |\headskip{&lt;skip&gt;}| is like `\tablehspace{&lt;skip&gt;}'
%% except that the \HTML\ code gets an indent.
\newcommand*{\headskip}    {\indentiii\tablehspace}
%% Similarly, |\headtitle{&lt;digit&gt;}{&lt;text&gt;}| is like 
%% `\heading&lt;digit&gt;{&lt;text&gt;}' apart from an indent and 
%% being put into a cell:
\newcommand*{\headtitle}[2]{\indentiii\simplecell{\heading#1{#2}}}
%%
%% === Navigation and Main Row ===
%% |\PAGENAVI| closes the head row and opens the ``navigation" 
%% column, actually including an `{itemize}' environment.
%% Accordingly, `writings.fdf' has a command `\fileitem'. 
%% But it seems that I have not been sure ...
\newcommand*{\PAGENAVI}{%
    \indenti\endspancolscell\CLBrk
    \indenti\starttr\CLBrk 
    \ \comment{NAVIGATION COL}\CLBrk 
    \indentii\FixedWidthCell\pagenavicolwidth
                           {\@class{paper} 
%% &lt;- using `@class'=`paper' here is my brother's idea, 
%% not sure about it ...
                           \@valign@t}
    %% omitting `\@height{100\%}' 
    \itemize}
%% |\PAGEMAINvar{&lt;width&gt;}| closes the navigation column 
%% and opens the ``main content" column. The latter gets 
%% width &lt;width&gt;:
\newcommand*{\PAGEMAINvar}[1]{%
    \indentii\enditemize\ \endFixedWidthCell\CLBrk
    \ \comment{ MAIN COL }\CLBrk
    \indentii\FixedWidthCell{#1}{}} 
%% ... The width may be specified as |\pagemaincolwidth|, 
%% then |\PAGEMAIN| works like `\PAGEMAINvar{\pagemaincolwidth}':
\newcommand*{\PAGEMAIN}{\PAGEMAINvar\pagemaincolwidth}
%%
%% === Footer Row ===
%% |\PAGEFOOT| closes the ``main content" column as well as 
%% the second row, and opens the footer row:
\newcommand*{\PAGEFOOT}{%
    \indentii\endFixedWidthCell\CLBrk
%     \indentii\tablehspace{96}\CLBrk %% vs. \pagemaincolwidth
  %% &lt;- TODO margin right of foot
    \indenti\endtr\CLBrk
    \ \comment{ FOOT ROW / }\CLBrk
    \indenti\spancolscell{2}{\@class{paper} \@align@c}%
%% &lt;- again class ``paper"!?
}
%% |\PAGEEND| closes the footer row and provides all the rest 
%% ... needed?
\newcommand*{\PAGEEND}{\indenti\endspancolscell\endTable}
%%
%% == The End and HISTORY ==
\endinput

HISTORY 

2011/04/29   started (? \if...)
2011/09/01   to CTAN as `twocolpg.sty'
2011/09/02   renamed
2011/10/09f. documentation more serious 
2011/10/13   `...:' OK
</pre></body></html>