diff options
author | Karl Berry <karl@freefriends.org> | 2013-02-11 22:54:44 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2013-02-11 22:54:44 +0000 |
commit | da8717a6fc986a13de07e8742cbe83f232909fb9 (patch) | |
tree | 8d6c2f8919c5c28200ea0217f772f2d15587e4c4 /Master/texmf-dist/tex/csplain | |
parent | b99bfa8c4694d5cf7526c7100cccc44530c1b079 (diff) |
csplain (11feb13)
git-svn-id: svn://tug.org/texlive/trunk@29081 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/csplain')
-rw-r--r-- | Master/texmf-dist/tex/csplain/base/csfontsm.tex | 5 | ||||
-rw-r--r-- | Master/texmf-dist/tex/csplain/base/csplain.ini | 5 | ||||
-rw-r--r-- | Master/texmf-dist/tex/csplain/fonts/lmfonts.tex | 4 | ||||
-rw-r--r-- | Master/texmf-dist/tex/csplain/fonts/luafonts.tex | 5 | ||||
-rw-r--r-- | Master/texmf-dist/tex/csplain/opmac/opmac.tex | 288 |
5 files changed, 209 insertions, 98 deletions
diff --git a/Master/texmf-dist/tex/csplain/base/csfontsm.tex b/Master/texmf-dist/tex/csplain/base/csfontsm.tex index fcbc5e40108..a8d78de7f40 100644 --- a/Master/texmf-dist/tex/csplain/base/csfontsm.tex +++ b/Master/texmf-dist/tex/csplain/base/csfontsm.tex @@ -38,6 +38,11 @@ \regfont\tenrm \regfont\tenit \regfont\tenbf \regfont\tenbi \regfont\tentt +% You can use: \letfont \titlefont = \tenbf at15pt + +\def\letfont #1{% + \def\tmp##1 {\let\tmp\sizespec \def\sizespec{##1}\resizefont#1\let\sizespec\tmp}% + \afterassignment\tmp \let#1} \endinput %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/Master/texmf-dist/tex/csplain/base/csplain.ini b/Master/texmf-dist/tex/csplain/base/csplain.ini index 2472a530617..fbdac4e9891 100644 --- a/Master/texmf-dist/tex/csplain/base/csplain.ini +++ b/Master/texmf-dist/tex/csplain/base/csplain.ini @@ -6,7 +6,7 @@ \input hyphen.lan % czech / slovak hyphenation pattern (may be others too) \input plaina4 % \hsize and \vsize for A4 \everyjob=\expandafter{\the\everyjob - \message{The format: csplain <Nov. 2012>.} + \message{The format: csplain <Jan. 2013>.} \message{The cs-fonts are preloaded and A4 size implicitly defined.}} \ifx\xprncode\undefined \else %% The encTeX is detected \count255=128 % All codes > 128 are printable: @@ -120,6 +120,9 @@ file extcode.tex renamed to il2code.tex (suggested by Jan Kasprzak) * \ifx\directlua\undefined\else \input ... \fi added * \ifx\XeTeXuseglyphmetrics ... added +** 10 ** <Jan. 2013> +* \letfont macro introduced. +* lmfonts.tex: \ifx\font\corkencoded \def\tmp{rm} corrected. COPYRIGHT ========= diff --git a/Master/texmf-dist/tex/csplain/fonts/lmfonts.tex b/Master/texmf-dist/tex/csplain/fonts/lmfonts.tex index 36f8b69662b..f78990fbdb3 100644 --- a/Master/texmf-dist/tex/csplain/fonts/lmfonts.tex +++ b/Master/texmf-dist/tex/csplain/fonts/lmfonts.tex @@ -34,6 +34,8 @@ \expandafter\csname\expandafter\tenonlytext\string#1c\endcsname} \def\tenonlytext{ten} +\ifx\font\corkencoded \def\tmp{rm}\else \def\tmp{cs}\fi + \def\exregtfm #1*{\edef\tmpa{#1*}\expandafter\regtfm\tmpa} \exregtfm cmr 0 \tmp-lmr5 5.5 \tmp-lmr6 6.5 \tmp-lmr7 7.5 \tmp-lmr8 8.5 @@ -65,6 +67,8 @@ \exregtfm bbfsans 0 \tmp-lmssbx10 * \exregtfm bbisans 0 \tmp-lmssbo10 * +\normalmath + \let\lmfonts=\font % macros can do test: \ifx\font\lmfonts ... % end of lmfonts.tex diff --git a/Master/texmf-dist/tex/csplain/fonts/luafonts.tex b/Master/texmf-dist/tex/csplain/fonts/luafonts.tex index cc157a5b1e0..c07b2d3e798 100644 --- a/Master/texmf-dist/tex/csplain/fonts/luafonts.tex +++ b/Master/texmf-dist/tex/csplain/fonts/luafonts.tex @@ -3,7 +3,6 @@ % LuaTeX needs these \directlua in order to \font primitive works like in XeTeX. % Petr Olsak Nov. 2012 -%\iffalse \message{processing luaotfload.lua } \directlua{luatexbase = luatexbase or {} luatexbase.luatexversion = \the\luatexversion\space @@ -18,10 +17,6 @@ luatexbase.require_module('luaotfload') texio.write_nl = oriwrite % return to original meaning } -%\fi -%\directlua { -% dofile(kpse.find_file("luatex-fonts.lua","tex")) -%} \global\let\luafonts=\relax \endinput diff --git a/Master/texmf-dist/tex/csplain/opmac/opmac.tex b/Master/texmf-dist/tex/csplain/opmac/opmac.tex index d2594a3c2e9..78f826f6316 100644 --- a/Master/texmf-dist/tex/csplain/opmac/opmac.tex +++ b/Master/texmf-dist/tex/csplain/opmac/opmac.tex @@ -1,11 +1,11 @@ % OPmac %%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% Petr Olsak, 2012 +%% Petr Olsak, 2012, 2013 %% The history of versions is at the end of this file, after \endpinput \ifx\OPmacversion\undefined \else \endinput \fi -\def\OPmacversion{Dec. 2012} +\def\OPmacversion{Feb. 2013} \immediate\write16{This is OPmac (Olsak's Plain macros), version <\OPmacversion>} @@ -54,6 +54,8 @@ \def\uv#1{\clqq#1\crqq} \let\\=\undefined {\lccode`\?=`\% \lowercase{\gdef\percent{?}}} +{\lccode`\?=`\\ \lowercase{\gdef\bslash{?}}} +\addprotect\percent \addprotect\bslash \def\,{\ifmmode \mskip\thinmuskip \else \kern.166em \fi} @@ -89,14 +91,16 @@ \newdimen\mnoteindent \mnoteindent=10pt % ditance between mnote and text \newdimen\mnotesize \mnotesize=20mm % the width of the mnote paragraph -\def\picdir{} % the directory with picture files -\def\bibtexhook{} % hook in \usebibtex and \usebbl macros -\def\chaphook{} % hook in \chap -\def\sechook{} % hook in \sec -\def\secchook{} % hook in \secc -\def\cnvhook{} % hook before conversion of outlines -\def\pghook{} % hook in \output rutine - +\def\picdir{} % the directory with picture files +\def\bibtexhook{} % hook in \usebibtex and \usebbl macros +\def\chaphook{} % hook in \chap +\def\sechook{} % hook in \sec +\def\secchook{} % hook in \secc +\def\cnvhook{} % hook before conversion of outlines +\def\pghook{} % hook in \output rutine +\def\toclinehook{} % hook in \tocline +\def\mnotehook{} % hook in \mnote to corret its vertical position +\def\captionhook#1{} % hook in \caption (#1 is "t" or "f") %%%%%%%%%%%%%% OPmac, CSplain and LaTeX logos, sec. 3.3 in opmac-d.pdf @@ -200,10 +204,12 @@ \def\magstep#1{\ifcase#1 1000\or1200\or1440\or1728\or2074\or2488\fi\space} \def\em {\expandafter\ifx \the\font \tenit \additcorr \rm \else - \expandafter\ifx \the\font \tenbf \bi\aftergroup\/\else + \expandafter\ifx \the\font \tenbf \bi\aftergroup\afteritcorr\else \expandafter\ifx \the\font \tenbi \additcorr \bf \else - \it \aftergroup\/\fi\fi\fi} + \it \aftergroup\afteritcorr\fi\fi\fi} \def\additcorr{\ifdim\lastskip>0pt \skip0=\lastskip \unskip\/\hskip\skip0 \else\/\fi} +\def\afteritcorr{\def\tmp{\ifx\next..\else\ifx\next,,\else\/\next\fi\fi}% + \afterassignment\tmp \let\next= } \addprotect\thefontsize \addprotect\thefontscale \addprotect\typosize \addprotect\typoscale @@ -296,20 +302,20 @@ \titfont \noindent #1\unskip\par}% \nobreak\bigskip } -\def\chap#1\par{\advance\chapnum by1 - \chaphook \secnum=0 \seccnum=0 \relax - \edef\thechapnum{\the\chapnum.}% +\def\chap#1\par{\global\advance\chapnum by1 + \chaphook \secnum=0 \seccnum=0 \tnum=0 \fnum=0 \dnum=0 \relax + \edef\thechapnum{\the\chapnum}% \printchap{#1\unskip}% \wlabel\thechapnum \wcontents\Xchap\thechapnum{#1}\nobreak } -\def\sec#1\par{\par\advance\secnum by1 +\def\sec#1\par{\par\global\advance\secnum by1 \sechook \seccnum=0 \tnum=0 \fnum=0 \dnum=0 \relax \edef\thesecnum{\othe\chapnum.\the\secnum}% \printsec{#1\unskip}% \insertmark\thesecnum{#1\unskip}% \wlabel\thesecnum \wcontents\Xsec\thesecnum{#1}\nobreak } -\def\secc#1\par{\advance\seccnum by1 +\def\secc#1\par{\global\advance\seccnum by1 \secchook \relax \edef\theseccnum{\othe\chapnum.\othe\secnum.\the\seccnum}% \printsecc{#1\unskip}% @@ -326,7 +332,7 @@ \def\printchap#1{\vfil\break {\chapfont \noindent \dest[toc:\thechapnum]{1.3em}% - \mtext{chap} \thechapnum\par\nobreak\smallskip\noindent #1\nbpar}% + \mtext{chap} \thechapnum.\par\nobreak\smallskip\noindent #1\nbpar}% \nobreak\bigskip \firstnoindent } @@ -357,17 +363,19 @@ \def\thednum{(\the\dnum)} \def\caption/#1 {\isdefined{#1num}% - \iftrue \advance \csname #1num\endcsname by1 + \iftrue \global\advance \csname #1num\endcsname by1 \else \opwarning{Unknown caption /#1}% \fi \bgroup \leftskip=\iindent plus1fil \rightskip=\iindent plus-1fil - \parfillskip=\iindent plus2fil + \parfillskip=0pt plus2fil \def\par{\endgraf\egroup}% - \noindent \wlabel{\csname the#1num\endcsname}% - {\bf \mtext{#1} \csname the#1num\endcsname}\enspace + \captionhook{#1}\noindent \wlabel{\csname the#1num\endcsname}% + \printcaption{\mtext{#1}}{\csname the#1num\endcsname}% } +\def\printcaption#1#2{{\bf#1 #2}\enspace} + \def\eqmark{\global\advance\dnum by1 \ifinner\else\eqno \fi \wlabel\thednum \thednum } @@ -418,9 +426,9 @@ \def\tocline#1#2#3#4#5{{\leftskip=#1\iindent \rightskip=2\iindent \ifischap\advance\leftskip by\iindent\fi \ifnum#1>1 \advance\leftskip by\iindent\fi - \noindent\llap{#2\toclink{#3}\enspace}% - {#2#4\unskip}\tocdotfill\pglink{#5}\hskip-2\iindent\null\par}} -\def\tocdotfill{\leaders\hbox to.8em{\hss.\hss}\hfill} + \toclinehook \noindent\llap{#2\toclink{#3}\enspace}% + {#2#4\unskip}\nobreak\tocdotfill\pglink{#5}\nobreak\hskip-2\iindent\null\par}} +\def\tocdotfill{\leaders\hbox to.8em{\hss.\hss}\hskip 1em plus1fill\relax} \def\maketoc{\par \ifx\toclist\empty \opwarning{\noexpand\maketoc -- data unavailable, TeX me again}\openref @@ -776,60 +784,106 @@ %%%%%%%%%%%%%% Colors -- sec. 3.15 in opmac-d.pdf -\newif\ifpgcolor \pgcolorfalse +\newif\ifwritecolor \writecolortrue \newcount\lastpage \lastpage=0 % the last page of the document -\def\Blue{\setcmykcolor{1.0 1.0 0.0 0}} -\def\Red{\setcmykcolor{0.0 1.0 1.0 0}} +\def\Blue{\setcmykcolor{1 1 0 0}} +\def\Red{\setcmykcolor{0 1 1 0}} \def\Brown{\setcmykcolor{0 0.67 0.67 0.5}} -\def\Green{\setcmykcolor{1.0 0.0 1.0 0.0}} -\def\Yellow{\setcmykcolor{0.0 0.0 1 0}} -\def\Cyan{\setcmykcolor{1.0 0.0 0 0}} -\def\Magenta{\setcmykcolor{0.0 1.0 0 0}} +\def\Green{\setcmykcolor{1 0 1 0}} +\def\Yellow{\setcmykcolor{0 0 1 0}} +\def\Cyan{\setcmykcolor{1 0 0 0}} +\def\Magenta{\setcmykcolor{0 1 0 0}} \def\White{\setcmykcolor{0 0 0 0}} \def\Grey{\setcmykcolor{0 0 0 0.5}} \def\LightGrey{\setcmykcolor{0 0 0 0.2}} -\def\Black{\setcmykcolor{0 0 0 1}\global\pgcolorfalse} +\def\Black{\setcmykcolor{0 0 0 1}} + +\def\setcmykcolor#1{{% + \def\tmp{#1}\expandafter \ifx\csname currcolor\pdfK\endcsname \tmp \else + \special{PDF:#1 \pdfK}% + \expandafter\xdef\csname currcolor\pdfK\endcsname{#1}% + \writecolor\pdfK + \fi}% +} +\def\writecolor#1{\ifwritecolor + \openref + \edef\act{\noexpand\wref\noexpand\Xpdfcolor{#1{\csname currcolor#1\endcsname}}}\act + \fi +} +\def\pdfK{k} +\def\linecolor#1{{\def\pdfK{K}#1}} -\ifpdftex - \def\setcmykcolor#1{\special{PDF:#1 \pdfK}% - \ifpgcolor\else - \openref\expandafter\wref\expandafter\Xpdfcolor\expandafter{\pdfK{#1}}% - \fi - } -\else - \def\setcmykcolor#1{} -\fi +\def\pdfblackcolor{0 0 0 1} +\xdef\currcolork{\pdfblackcolor} \xdef\currcolorK{\pdfblackcolor} -\def\linecolor#1{{\def\pdfK{K}#1}} -\def\pdfK{k} -\def\locpgcolor{\global\pgcolortrue} +\xdef\savedcolors{} + +\def\localcolor{\aftergroup\restorecolor \writecolorfalse + \xdef\savedcolors{0{\currcolork}{\currcolorK}\savedcolors}} +\def\longlocalcolor{\aftergroup\restorecolor + \ifwritecolor\else \opwarning{\noexpand\longlocalcolor inside + \string\localcolor. Something wrong}\fi + \writecolortrue + \xdef\savedcolors{1{\currcolork}{\currcolorK}\savedcolors}} +\let\locpgcolor=\relax % for backward compatibility + +\def\restorecolor{{\def\tmp##1##2##3##4\end{\xdef\savedcolors{##4}% + \def\tmpa{##2}\def\tmpb{##3}\writecolortrue + \ifx\tmpa\currcolork \else \special{PDF:##2 k}\xdef\currcolork{##2}% + \ifnum##1=1 \writecolor k\fi\fi + \ifx\tmpb\currcolorK \else \special{PDF:##3 K}\xdef\currcolorK{##3}% + \ifnum##1=1 \writecolor K\fi\fi}% + \expandafter\tmp\savedcolors\end}} + +\addprotect\setcmykcolor \addprotect\localcolor \addprotect\longlocalcolor + +\def\begoutput{\writecolorfalse \let\longlocalcolor=\localcolor + \edef\restoreoutputcolor{% + \xdef\noexpand\currcolork{\currcolork}\xdef\noexpand\currcolorK{\currcolorK}}% + \xdef\currcolork{\pdfblackcolor}\xdef\currcolorK{\pdfblackcolor}% + \immediate\wref\Xpage{{\the\pageno}}% +} +\def\endoutput{\restoreoutputcolor} \def\Xpdfcolork#1{\def\pdflastcolork{#1}} \def\XpdfcolorK#1{\def\pdflastcolorK{#1}} -\def\pdfblackcolor{0 0 0 1} \let\pdflastcolork=\pdfblackcolor \let\pdflastcolorK=\pdfblackcolor \def\Xpage#1{\lastpage=#1 \fnotenumlocal=0 \ifx\pdflastcolork\pdfblackcolor\else - \isdefined{pg:#1}\iftrue \else \sxdef{pg:#1}{}\fi - {\let\setpgcolor=\relax \sxdef{pg:#1}% - {\csname pg:#1\endcsname\setpgcolor k{\pdflastcolork}}}\fi + \isdefined{pgc:#1}\iftrue \else \sxdef{pgc:#1}{}\fi + {\let\setpgcolor=\relax \sxdef{pgc:#1}% + {\csname pgc:#1\endcsname\setpgcolor k{\pdflastcolork}}}\fi \ifx\pdflastcolorK\pdfblackcolor\else - \isdefined{pg:#1}\iftrue \else \sxdef{pg:#1}{}\fi - {\let\setpgcolor=\relax \sxdef{pg:#1}% - {\csname pg:#1\endcsname\setpgcolor K{\pdflastcolorK}}}\fi + \isdefined{pgc:#1}\iftrue \else \sxdef{pgc:#1}{}\fi + {\let\setpgcolor=\relax \sxdef{pgc:#1}% + {\csname pgc:#1\endcsname\setpgcolor K{\pdflastcolorK}}}\fi } \def\setpgcolor#1#2{\special{PDF:#2 #1}} +\def\preboxcclv{\csname pgc:\the\pageno\endcsname} +\def\postboxcclv{% + \def\setpgcolor##1##2{\expandafter\xdef\csname currcolor##1\endcsname{##2}}% + \ifnum\pageno<\lastpage {\advance\pageno by1 \csname pgc:\the\pageno\endcsname}% + \else \xdef\currcolork{\pdflastcolork}\xdef\currcolorK{\pdflastcolorK}\fi + \Black \linecolor\Black +} + +\ifpdftex\else + \def\setcmykcolor#1{} + \let\localcolor=\relax +\fi + \def\draft{\edef\tmp{\headline={\noexpand\draftbox{\tenbf DRAFT}\the\headline}} \ifpdftex \tmp \else - \opwarning{\string\draft: Grey color is possible in pdfTeX only}\fi} + \opwarning{\string\draft: Grey color is possible in pdfTeX only}% + \fi} \def\draftbox#1{\vbox to0pt{\setbox0=\hbox{\typosize[10/]#1}% \kern.5\vsize \kern4\wd0 \hbox to0pt{\kern.5\hsize \kern-2.5\wd0 \pdfsave \pdfrotate{55}\pdfscale{10}{10}% - \hbox to0pt{\locpgcolor\LightGrey \box0\hss\Black}% + \hbox to0pt{\localcolor\LightGrey \box0\hss}% \pdfrestore \hss}\vss}\hss} @@ -846,31 +900,28 @@ \def\dest[#1]#2{} \def\link[#1:#2]#3#4{\leavevmode\pdfstartlink height.9em depth.3em - \pdfborder{#1} goto name{#1:#2}\relax - \ifx\Black#3#4\else#3#4\Black\fi \pdfendlink + \pdfborder{#1} goto name{#1:#2}\relax {#3#4}\pdfendlink } -\def\urllink[#1:#2]#3{{\leavevmode\pdfstartlink height.9em depth.3em - \pdfborder{#1}user{/Subtype/Link/A << /Type/Action/S/URI/URI(#2)>>}\relax - \urlcolor{#3}\Black\pdfendlink}% +\def\urllink[#1:#2]#3{{\let~=\relax \let\\=\relax \let\{=\relax \let\}=\relax + \leavevmode\pdfstartlink height.9em depth.3em + \pdfborder{#1}user{/Subtype/Link/A <</Type/Action/S/URI/URI(#2)>>}\relax + {\urlcolor#3}\pdfendlink}% } -\def\url{\leavevmode\bgroup \adef{/}{\\}% - \catcode`\_=12 \catcode`\#=12 \catcode`\~=12 \dourl} -\def\dourl#1{\def\\{/}\ulink[url:#1]{\tt\def\\{\discretionary{/}{}{/}}#1}\egroup} - \def\toclink#1{#1} \def\pglink#1{#1} \def\citelink#1{#1} \def\reflink[#1]#2{#2} -\def\ulink[#1]#2{#2} +\def\ulink[#1]#2{{#2}} +\def\urlcolor{} \def\hyperlinks#1#2{% \let\dest=\destactive - \def\toclink##1{\locpgcolor\link[toc:##1]{#1}{##1}}% - \def\pglink##1{\locpgcolor\link[pg:##1]{#1}{##1}}% - \def\citelink##1{\locpgcolor\link[cite:##1]{#1}{##1}}% - \def\reflink[##1]##2{\locpgcolor\link[ref:##1]{#1}{##2}}% + \def\toclink##1{\link[toc:##1]{\localcolor#1}{##1}}% + \def\pglink##1{\link[pg:##1]{\localcolor#1}{##1}}% + \def\citelink##1{\link[cite:##1]{\localcolor#1}{##1}}% + \def\reflink[##1]##2{\link[ref:##1]{\localcolor#1}{##2}}% \def\ulink[##1]##2{\urllink[##1]{##2}}% - \def\urlcolor{#2}% + \def\urlcolor{\longlocalcolor#2}% } \def\pdfborder#1{\if$#1$\else \isdefined{#1border}\iftrue @@ -886,6 +937,34 @@ \def\hyperlinks#1#2{} \fi +\def\url#1{\def\tmpb{#1}% + \replacestrings{//}{\urlskip\urlslashslash\urlbskip}% + \replacestrings{/}{\urlskip/\urlbskip}% + \replacestrings{.}{\urlskip.\urlbskip}% + \replacestrings{?}{\urlskip?\urlbskip}% + \replacestrings{=}{\urlskip=\urlbskip}% + \replacestrings{~}{\char`\~ }% + \replacestrings{_}{\char`\_ }% + \replacestrings{^}{\char`\^ }% + \replacestrings{\\}{\bslash}% + \replacestrings{\{}{\char`\{ }% + \replacestrings{\}}{\char`\} }% + \replacestrings{&}{\urlbskip\char`\& \urlskip}% + \ulink[url:#1]{\urlfont\tmpb}% +} +\def\urlfont{\tt} +\def\urlskip{\null\nobreak\hskip0pt plus0.05em\relax} +\def\urlbskip{\penalty100 \hskip0pt plus0.05em\relax} +\def\urlslashslash{/\urlskip/} +\addprotect\url + +\def\replacestrings#1#2{% + \def\tmp##1#1##2\relax{\if$##2$\addto\tmpb{##1}\else\addto\tmpb{##1#2}\tmp##2\relax\fi}% + \expandafter\def\expandafter\tmpb\expandafter{\expandafter}% + \expandafter\tmp\tmpb\/#1\relax + \def\tmp##1\/{\def\tmpb{##1}}\expandafter\tmp\tmpb +} + %%%%%%%%%%%%%% Outlines -- sec. 3.17 in opmac-d.pdf @@ -955,7 +1034,7 @@ \newcount\viline \newread\vifile -\def\setverb{\def\do##1{\catcode`##1=12}\dospecials \catcode`\*=12 } +\def\setverb{\frenchspacing\def\do##1{\catcode`##1=12}\dospecials \catcode`\*=12 } \def\begtt{\ttskip\bgroup \wipeepar \setverb \adef{ }{ }% \ifx\savedttchar\undefined \else \catcode\savedttchar=12 \fi @@ -1121,7 +1200,7 @@ \newdimen\picw \picw=0pt \ifpdftex - \def\inspic #1 {\ifdim\picw=0pt + \def\inspic #1 {\relax\ifdim\picw=0pt \opwarning{\noexpand\inspic -- the width \noexpand\picw is not set}% \else \hbox{\pdfximage width\picw {\picdir#1}\pdfrefximage\pdflastximage}% @@ -1203,6 +1282,7 @@ \sxdef{fn:\the\fnotenum}{\the\fnotenumlocal}} \newcount\mnotenum \mnotenum=0 % global counter of mnotes +\newdimen\mnoteskip \mnoteskip=0pt \def\mnote#1{\ifvmode \mnoteA{#1}\nobreak\vskip-\baselineskip \else \strut\vadjust{\kern-\dp\strutbox \mnoteA{#1}\kern\dp\strutbox}% @@ -1216,13 +1296,13 @@ \expandafter\ifx\tmp \left \hbox to0pt{\kern-\mnotesize \kern-\mnoteindent \vbox to0pt{\vss \setbox0=\vtop{% - \hsize=\mnotesize \leftskip=0pt plus 1fill\noindent#1}% - \dp0=0pt \box0}\hss}% + \hsize=\mnotesize \leftskip=0pt plus 1fill \relax \mnotehook \noindent#1}% + \dp0=0pt \box0 \kern\mnoteskip \global\mnoteskip=0pt}\hss}% \else \hbox to0pt{\kern\hsize \kern\mnoteindent \vbox to0pt{\vss \setbox0=\vtop{% - \hsize=\mnotesize \rightskip=0pt plus 1fil\noindent#1}% - \dp0=0pt \box0}\hss}% + \hsize=\mnotesize \rightskip=0pt plus 1fil \relax \mnotehook \noindent#1}% + \dp0=0pt \box0 \kern\mnoteskip \global\mnoteskip=0pt}\hss}% \fi } \def\Xmnote{\advance\mnotenum by1 @@ -1292,9 +1372,9 @@ \def\bib[#1]{\par \ifnum\bibnum>0 \bibskip \fi \advance\bibnum by1 \wbib{#1}{\the\bibnum}% - \hangindent=\iindent \hangafter=1 + \hangindent=\iindent \noindent \dest[cite:\the\bibnum]{1.2em}% - \hskip\iindent \llap{[\the\bibnum] }\ignorespaces + \indent \llap{[\the\bibnum] }\ignorespaces } \def\wbib#1#2{\edef\tmp{\wref\Xbib{{#1}{#2}}}% \ifx\tmp\empty\else \immediate\tmp \fi @@ -1332,8 +1412,7 @@ \def\httpAddr##1{\url{http:##1}}\def\\{\hfill\break}% \def\newblock{\hskip .11em plus.33em minus.07em}% \def\mbox{\leavevmode\hbox}\let\em=\it - \leftskip=\iindent - \bibtexhook\relax + \parindent=\iindent \bibtexhook\relax \input #1.bbl \par \fi @@ -1344,8 +1423,9 @@ \def\bibitemD#1{\ifnum\bibnum>0 \bibskip \fi \advance\bibnum by1 \noindent \dest[cite:\if$\tmpa$\the\bibnum\else\tmpa\fi]{1.2em}% - \if$\tmpa$\llap{[\the\bibnum] }\wbib{#1}{\the\bibnum}\else - \hskip-\iindent [\tmpa]\wbib{#1}{\tmpa}\enskip + \hangindent=\parindent + \if$\tmpa$\indent\llap{[\the\bibnum] }\wbib{#1}{\the\bibnum}% + \else [\tmpa]\wbib{#1}{\tmpa}\enskip \fi \ignorespaces } @@ -1355,7 +1435,8 @@ \iindent=4em \def\bibitemC##1{\ifnum\bibnum>0 \bibskip \fi \advance\bibnum by1 - \noindent \llap{[##1]\enspace}\ignorespaces + \noindent \hangindent=\parindent + \indent \llap{[##1]\enspace}\ignorespaces }% \readbblfile{\jobname}% \egroup @@ -1395,22 +1476,32 @@ %%%%%%%%%%%%%% output -- sec. 3.24 in opmac-d.pdf -\output={\opmacoutput} +\output={\begoutput \opmacoutput \endoutput} -\def\opmacoutput{\def\nl{ }% - \setbox0=\vbox{\makeheadline\prepage\pagebody\makefootline}% +\def\opmacoutput{% + \setbox0=\vbox{\makeheadline\pagebody\makefootline}% \pghook \protectlist \shipout\box0 \advancepageno \ifnum\outputpenalty>-20000 \else\dosupereject\fi } \def\doprotect#1{\let#1=\relax} +\addto\begoutput{\def\nl{ }} +\def\prepage{\dest[pg:\the\pageno]{25pt}} + +{\catcode`\@=11 +\gdef\pagecontents{\prepage % dest of pageno + \ifvoid\topins\else\unvbox\topins\fi + \preboxcclv % colors setting + \dimen@=\dp\@cclv \unvbox\@cclv % open up \box255 + \postboxcclv % colors restoring + \ifvoid\footins\else % footnote info is present + \vskip\skip\footins + \footnoterule + \unvbox\footins\fi + \ifr@ggedbottom \kern-\dimen@ \vfil \fi +}} -\def\prepage{\wref\Xpage{{\the\pageno}}% - \dest[pg:\the\pageno]{25pt}% - \csname pg:\the\pageno\endcsname -} - -\footline={\locpgcolor\Black \hss\tenrm\thefontsize[10]\the\pageno\hss} +\footline={\hss\tenrm\thefontsize[10]\the\pageno\hss} %%%%%%%%%%%%%% margins -- sec. 3.25 in opmac-d.pdf @@ -1480,7 +1571,20 @@ %%%%%%%%%%%%%% History of versions: beta (a) Nov. 2012 ... first released version. -Dec. 2012 ... first stable version +Dec. 2012 first stable version +Jan. 2013 \parfillskip in \caption corrected. + \athetnum, \captionhook introduced. + \nobreak in \tocline corrected, \tocdotfill corrected. + New \url, \urlcolor implicitly defined as \empty. + \bibitem by \hangindent, \afteritcorr in \em + \bslash introduced + \toclinehook \mnotehook, \mnoteskip introduced. + \global\advance in \caption corrected. + \thechapnum is without the dot. +Feb. 2013 \urllink: works with \\, \%, \#, \$, \{, \}. + \localcolor, \longlocalcolor introduced + \global\advance for chap./sec. nums corrected + \printcaption introduced %%%%%%%%%%%%%% End of opmac.tex |