texlive[43277] Master/texmf-dist: csbulletin (20feb17)

commits+karl at tug.org commits+karl at tug.org
Tue Feb 21 01:27:57 CET 2017


Revision: 43277
          http://tug.org/svn/texlive?view=revision&revision=43277
Author:   karl
Date:     2017-02-21 01:27:57 +0100 (Tue, 21 Feb 2017)
Log Message:
-----------
csbulletin (20feb17)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/csbulletin/README
    trunk/Master/texmf-dist/doc/latex/csbulletin/csbulletin.pdf
    trunk/Master/texmf-dist/doc/latex/csbulletin/csbulletin.tex
    trunk/Master/texmf-dist/tex/latex/csbulletin/csbulacronym.sty
    trunk/Master/texmf-dist/tex/latex/csbulletin/csbulletin.cls

Modified: trunk/Master/texmf-dist/doc/latex/csbulletin/README
===================================================================
--- trunk/Master/texmf-dist/doc/latex/csbulletin/README	2017-02-21 00:27:30 UTC (rev 43276)
+++ trunk/Master/texmf-dist/doc/latex/csbulletin/README	2017-02-21 00:27:57 UTC (rev 43277)
@@ -1,5 +1,5 @@
 =============================================================================
-Package: csbulletin   Version 1.0                               5 August 2008
+Package: csbulletin   Version 1.1                            18 February 2016
 =============================================================================
 
 The package provides the class for articles for the CSTUG Bulletin 

Modified: trunk/Master/texmf-dist/doc/latex/csbulletin/csbulletin.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/csbulletin/csbulletin.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/csbulletin/csbulletin.tex	2017-02-21 00:27:30 UTC (rev 43276)
+++ trunk/Master/texmf-dist/doc/latex/csbulletin/csbulletin.tex	2017-02-21 00:27:57 UTC (rev 43277)
@@ -1,4 +1,4 @@
-%% $Id: csbulletin.tex 30 2008-08-05 20:03:02Z zw $
+%% $Id$
 \input utf8-t1 % text is in UTF8, requires encTeX
 % for ISO-8859-2: %& --translate-file=il2-t1.tcx
 % for CP-1250:    %& --translate-file=cp1250t1.tcx
@@ -6,13 +6,12 @@
 \documentclass{csbulletin}
 % No optional packages needed
 % Macros
-\DeclareRobustCommand\version{\unskip~v.\,1.0}
+\DeclareRobustCommand\version{\unskip~v.\,1.1}
 \let\pkg\textsc
 
-% Hack for hyperref
-\mubytein 0
 \usepackage[pdftitle=LaTeX\ Class\ for\ CSTUG\ Bulletin, pdfauthor=Zdenek\ Wagner,
             pdfkeywords=CSTUG\ Bulletin,bookmarks=false]{hyperref}
+\usepackage{encxvlna}
 
 % section numbering
 \setcounter{secnumdepth}{2}
@@ -50,12 +49,6 @@
 instrukce pro autory.
 
 \section{Použité balíčky}
-Prosím, uvědomte si, že celý Zpravodaj se zpracovává pdflatexem jako jeden dokument. Používejte
-proto pouze balíčky, které skutečně v dokumentu potřebujete. Dávejte přednost vlastnímu
-jednoduchému makru před komplikovaným balíčkem, který může způsobit kolizi s balíčky potřebnými pro
-jiné články. Tím nechceme autory odrazovat od používání balíčků v nezbytných případech, jen je
-vhodné, aby autoři uvážili, zda nelze problém řešit jednoduššími prostředky.
-
 Třída \pkg{csbulletin} nějaké balíčky načítá automaticky. Jejich seznam je uveden v následujících
 podsekcích.
 
@@ -91,10 +84,6 @@
 \item \pkg{fancyvrb}
 
 \item \pkg{verbatim}
-
-\item \pkg{encxvlna} je program \pkg{vlna} implementovaný v enc\TeX u. Jeho účelem je doplnění
-vlnek za neslabičné předložky přímo při \TeX ování. Balíček bude načten pouze v případě, že máte
-enc\TeX\ aktivován.
 \end{itemize}
 
 \subsection{Babel}\label{babel}
@@ -136,22 +125,13 @@
 nepřehledné. Číslování zapnete vložením kladné hodnoty do čítače \texttt{secnumdepth}. V tomto
 manuálu je před \verb;\begin{document}; použit příkaz \verb;\setcounter{secnumdepth}{2};.
 
-\section{Návěští}
-V třídě \pkg{csbulletin} jsou předefinována makra \cmd{label}, \cmd{ref} a \cmd{pageref} tak, aby
-jejich názvy byly pro každý článek unikátní. Nemusíte se proto bát kolize s články jiných autorů.
-
 \section{Tabulky a obrázky}
-Článek ve Zpravodaji nezačíná vždy na nové stránce. Nekoncipujte tudíž stránky absolutně. Všechny
+Všechny
 tabulky a obrázky musí být v plovoucích prostředích. Musí mít název v makru \cmd{caption} a
 případně symbolický název definovaný v makru \cmd{label}.
 
-\section{Reference}
-Styl pro Zpravodaj zatím není připraven pro použití \BibTeX{}u, ale v budoucích verzích se s tím
-počítá. Pravděpodobně bude pro potřeby Zpravodaje upraven balíček \pkg{chapterbib}.
-
 \section{Chyby}
-Třída \pkg{csbulletin} nemá žádné známé zjevné chyby. Jisté konflikty i se způsobem řešení jsou
-zmíněny v dokumentaci balíčku \pkg{encxvlna} a nejsou zcela dořešeny kolize při použití v OS/2. V
+Třída \pkg{csbulletin} nemá žádné známé zjevné chyby. V
 každém případě je třeba si uvědomit, že třída samotná pracuje na hranicích možností \LaTeX{}u.
 Použití různých balíčků může vést k dalším problémům. Redakce se bude snažit o vyřešení všech
 nahlášených potíží.

Modified: trunk/Master/texmf-dist/tex/latex/csbulletin/csbulacronym.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/csbulletin/csbulacronym.sty	2017-02-21 00:27:30 UTC (rev 43276)
+++ trunk/Master/texmf-dist/tex/latex/csbulletin/csbulacronym.sty	2017-02-21 00:27:57 UTC (rev 43277)
@@ -1,5 +1,5 @@
 \ProvidesPackage{csbulacronym}[2008/04/27 Acronyms for CSTUG bulletin]
-\PackageInfo{csbulacronym}{$Id: csbulacronym.sty 16 2008-04-27 18:17:54Z zw $}
+\PackageInfo{csbulacronym}{$Id$}
 
 %====================================================  TeX logos
 \DeclareRobustCommand\CS[1]{\def\next{#1}\leavevmode{$\cal C$}\kern-.3em
@@ -8,6 +8,8 @@
 \DeclareRobustCommand\CSTeX{\leavevmode{$\cal C$}\kern-.3em
          \lower .67ex\hbox{$\cal S$}\kern-.145em\TeX}
 \let\cstex\CSTeX
+\DeclareRobustCommand\csplain{\leavevmode{$\cal C$}\kern-.3em
+         \lower .67ex\hbox{$\cal S$}\kern-.145emplain}
 \DeclareRobustCommand\CSLaTeX{\leavevmode{$\cal C$}\kern-.3em
          \lower .67ex\hbox{$\cal S$}\LaTeX}
 \let\cslatex\CSLaTeX

Modified: trunk/Master/texmf-dist/tex/latex/csbulletin/csbulletin.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/csbulletin/csbulletin.cls	2017-02-21 00:27:30 UTC (rev 43276)
+++ trunk/Master/texmf-dist/tex/latex/csbulletin/csbulletin.cls	2017-02-21 00:27:57 UTC (rev 43277)
@@ -1,6 +1,16 @@
-\ProvidesClass{csbulletin}[2008/08/05 CSTUG Bulletin class]
-\ClassInfo{csbulletin}{$Id: csbulletin.cls 29 2008-08-05 19:36:49Z zw $}
+\ProvidesClass{csbulletin}[2017/02/10 CSTUG Bulletin class]
+\ClassInfo{csbulletin}{$Id$}
 
+% Switch
+
+\newif\ifcsbul at nomargins
+\newif\ifcsbul at web
+\newif\ifcsbul at color
+
+% Empty macro for later use
+
+\def\NovyClanek{}
+
 % Language attributes
 
 \def\csbul at attributes{%
@@ -30,9 +40,28 @@
 \DeclareOption{executivepaper}{}
 \DeclareOption{landscape}{}
 
+% Always at the new page
+
+\DeclareOption{newpage}{\let\NovyClanek\clearpage}
+
+% No margins (special use)
+
+\DeclareOption{nomargins}{\csbul at nomarginstrue}
+
+% Color
+
+\DeclareOption{web}{\PassOptionsToPackage{web}{csbulobalka}\csbul at webtrue}
+\DeclareOption{color}{\PassOptionsToPackage{color}{csbulobalka}\csbul at colortrue}
+\DeclareOption{twocolor}{\PassOptionsToPackage{twocolor}{csbulobalka}\csbul at colortrue}
+\DeclareOption{custom}{\PassOptionsToPackage{custom}{csbulobalka}\csbul at colortrue}
+
 % Pass all global options to the "article" class
 
 \DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
+
+% No margins if the first page given
+%\IfFileExists{\jobname.FirstPage}{\ExecuteOptions{nomargins}}{}
+
 \ProcessOptions
 
 \LoadClass[twoside]{article}
@@ -48,8 +77,10 @@
 % To be deleted soon
 \newif\if at html
 
+\ifpdf
 \IfFileExists{microtype.sty}{\RequirePackage
    [protrusion=false,expansion=true,stretch=8,shrink=24,step=4]{microtype}}{}
+\fi
 
 \IfFileExists{array.sty}{\RequirePackage{array}}{}
 
@@ -62,7 +93,7 @@
 
 \IfFileExists{SpecChar.sty}{\RequirePackage{SpecChar}\AddSpecial\-}{}
 
-\IfFileExists{csbulobalka.sty}{\RequirePackage{csbulobalka}}{}
+\IfFileExists{csbulobalka.sty}{\RequirePackage{csbulobalka}[2017/02/17]}{}
 
 \ifx\mubytein\undefined
   \newcount\mubytein
@@ -70,7 +101,6 @@
   \newcount\mubytelog
 \else
   \IfFileExists{csbulutf8.sty}{\RequirePackage{csbulutf8}}{}
-  \IfFileExists{encxvlna.sty}{\RequirePackage{encxvlna}}{}
 \fi
 
 % The next macros must be here, otherwise the PDF mode may report strange errors
@@ -77,11 +107,16 @@
 
 \newtoks\cislo
 \newtoks\rok
+\newtoks\doisufix\doisufix{\the\rok-\the\cislo/\thepage}
 \newtoks\naklad
 \newtoks\@uzaverka
 \newtoks\pristi at uzaverka
 \newtoks\obalka
 
+% Default
+
+\obalka{Anton\'{\i}n Strejc}%'
+
 % \uzaverka DD.MM.RRRR<space or end-of-line>
 
 \def\uzaverka #1.#2.#3 {\begingroup
@@ -165,12 +200,12 @@
 
 % Newlines for titles and toc
 
-\DeclareRobustCommand\nl{\protect\p at nl}
-\def\p at nl{\unskip\\\ignorespaces}
-\DeclareRobustCommand\ln{\protect\p at ln}
-\let\p at ln\relax
-\DeclareRobustCommand\toc at nl{\let\p at nl\relax
-  \def\p at ln{\unskip\\\ignorespaces}}
+\DeclareRobustCommand\TitleNewline{\\}
+\DeclareRobustCommand\TocNewline{\space}
+\AtBeginDocument{\addtocontents{toc}{\csbul at newlinedefs}}
+\DeclareRobustCommand\csbul at newlinedefs{%
+  \let\TitleNewline\space
+  \let\TocNewline\\}
 
 %=========================================== Sizes etc.
 
@@ -252,15 +287,16 @@
 \newenvironment{summary}{\ifhmode \par \fi
   \begin{otherlanguage*}{english}
   \setcounter{secnumdepth}{-1}\section{Summary:
-                    \zw at englishtitle}}{\ifhmode \par \fi\end{otherlanguage*}}
+                    \zw at englishtitle}}{\ifhmode \par
+                    \fi\end{otherlanguage*}\aftergroup\zw at summaryOK}
 
 \renewcommand\@seccntformat[1]{\@nameuse{the#1}.\hspace{.5em}}
 
-\newcommand\StartPage[1][1]{\clearpage\setcounter{page}{#1}}
+\newcommand\StartPage[1][1]{\clearpage\setcounter{page}{#1}\zw at summaryOK}
 
 \renewenvironment{abstract}{\narrower \small \noindent \ignorespaces}{\ifhmode \par \fi}
 
-\def\keywords:{\ifhmode \par \fi \smallskip \noindent\textbf{Key words:} \ignorespaces}
+\def\keywords:{\ifhmode \par \fi \medskip \noindent\textbf{Keywords:} \ignorespaces}
 
 % ===================================================== New layout
 
@@ -269,8 +305,6 @@
 
 \paperwidth 148mm
 \paperheight 210mm
-\pdfpagewidth\paperwidth
-\pdfpageheight\paperheight
 \headheight \z@
 \headsep \z@
 \textwidth 27cc
@@ -289,6 +323,11 @@
 \advance\evensidemargin -1in
 \parskip \z@
 
+\AtBeginDocument{\ifpdf
+   \pdfpagewidth\paperwidth \pdfpageheight\paperheight
+\else
+   \special{papersize=\the\paperwidth,\the\paperheight}\fi}
+
 \newdimen\zw at bul@dim
 \zw at bul@dim=148mm
 \advance\zw at bul@dim -1in
@@ -299,9 +338,31 @@
   \def\@oddfoot{\hfill \textrm{\thepage}}%
   \def\@evenfoot{\textrm{\thepage}\hfill}}
 
+\def\ps at csbuldoi{%
+  \def\@oddhead{}\let\@evenhead\@oddhead
+  \def\@oddfoot{{\doiprefix \doi}\hfill \textrm{\thepage}}%
+  \def\@evenfoot{\textrm{\thepage}\hfill{\doiprefix \doi}}}
+
+\def\doiprefix{\footnotesize \textsc{doi:}\space}
+
+\def\ps at ODD{%
+  \def\@oddhead{}\let\@evenhead\@oddhead
+  \def\@oddfoot{\hfill \textrm{\thepage}}\let\@evenfoot\@oddfoot}
+
 \pagestyle{csbul}
 
+\ifcsbul at nomargins
+  \oddsidemargin -1in
+  \evensidemargin -1in
+  \topmargin -1in
+  \pagestyle{empty}
+\fi
 
+% Dirty hax
+\def\ps at odd{\ps at csbul \let\@evenfoot\@oddfoot}
+\def\ps at even{\ps at csbul \let\@oddfoot\@evenfoot}
+
+
 % ============================================ for use with minitoc
 
 \newcounter{chapter}
@@ -341,8 +402,9 @@
 \let\pdf at title\relax
 \let\signature\podpis
 
-\def\csbul at podepis{\ifx\p at dpis\relax \else
-  \ifhmode \par \else \textwidth\lastskip \fi
+\def\csbul at podepis{\zw at nosummaryerror
+  \ifx\p at dpis\relax \else
+  \ifhmode \par \fi
   \nobreak\medskip
   \begin{flushright}\clubpenalty\@M \widowpenalty\@M \interlinepenalty\@M
     \itshape\p at dpis
@@ -353,8 +415,20 @@
 
 \AtEndDocument{\csbul at podepis}
 
+% Dirty hacking...
+\def\Podpis#1{\ifhmode \par \fi \nobreak \medskip
+  \begin{flushright}\clubpenalty\@M \widowpenalty\@M \interlinepenalty\@M
+    \itshape#1
+  \end{flushright}}
+
+\def\zw at nosummaryerror{\ClassWarningNoLine{csbulletin}{English summary is misssing!}}
+\def\zw at summaryOK{\let\zw at nosummaryerror\relax}
+
 \def\titlepenalty{-100}
 
+% DOI removal
+\def\nodoi{\def\doi{}\let\doiprefix\doi}
+
 \renewcommand\maketitle[1][\z@]{%
      \vskip 3cc\vskip 0pt plus 5cc\penalty\titlepenalty
      \vskip 0pt plus-5cc\vskip-\topskip
@@ -378,22 +452,72 @@
      \hfill\ifautkn at wn\box\authb at x\fi
         \vrule height 17pt width 0pt}}%
     \nobreak\vglue 2cc plus 6dd minus 3dd \relax
-  \ClanekToc
+  \thispagestyle{csbuldoi}\ClanekToc
   \@afterindentfalse \@afterheading}
 
 \def\ClanekToc{%
+  \ifx\zw at englishtitle\undefined
+    \ClassWarningNoLine{csbulletin}{English title not given, it must precede \protect\maketitle!}%
+    \let\zw at englishtitle\t at tle
+  \fi
   \begingroup \let\footnote\@gobble
   \ifautkn at wn
     \def\PutAuthor{\protect\cl at nek{\auth at r}}
-    \addcontentsline{toc}{clanek}{\protect\cl at nek{\auth at r}{\t at tle}}%
+    \addcontentsline{toc}{clanek}{\protect\cl at nek[\auth at r]{\t at tle}{\zw at englishtitle}}%
     \ifx\pdf at title\relax \def\pdf at title{\protect\cl at nek{\auth at r}{\t at tle}}\fi
   \else
     \def\PutAuthor{}
-    \addcontentsline{toc}{clanek}{\t at tle}%
+    \addcontentsline{toc}{clanek}{\protect\cl at nek{\t at tle}{\zw at englishtitle}}%
     \ifx\pdf at title\relax \def\pdf at title{\t at tle}\fi
   \fi
   \secdef\@chapter\@schapter{\t at tle}% for minitoc
   \endgroup}
+
+\newwrite\csbul at info
+\def\csbul at start@page#1{\begingroup
+    \let\@input\@gobble\@starttoc{toc}\endgroup
+    \setcounter{page}{#1}}
+
+% Default fake DOI
+\def\doi{10.5300/xxxx-x/zzz}
+
+% PDF clanek (include PDF, directory = optional argument, name without .pdf)
+
+\def\PDFclanek{\bgroup \catcode`\-12 \catcode`\_12 \csbul at PDFclanek}
+\newcommand*\csbul at PDFclanek[2][]{\egroup\clearpage
+  \ifcat$#1$
+    \def\csbul at fn{#2}
+    \immediate\write\@auxout{\string\CSBULpdf{#2}}
+  \else
+    \def\csbul at fn{#1/#2}
+    \immediate\write\@auxout{\string\CSBULpdf[#1]{#2}}
+  \fi
+  \immediate\openout\csbul at info\csbul at fn.info
+  \immediate\write\csbul at info{\noexpand\csbul at start@page{\thepage}}
+  \immediate\write\csbul at info{\noexpand\def\noexpand\doi{10.5300/\the\doisufix}}
+  \immediate\write\csbul at info{\ifcsbul at web\noexpand\csbul at webtrue\fi}
+  \immediate\write\csbul at info{\ifcsbul at color\noexpand\csbul at colortrue\fi}
+  \immediate\closeout\csbul at info
+  \addtocontents{toc}{\protect\@input{\csbul at fn.toc}}
+  \if at csbul@pdfinclude@ \csbul at PDF@clanek \fi}
+
+\def\csbul at PDF@clanek{\setcounter{section}{1}
+  \pdfximage{\csbul at fn.pdf}\edef\csbul at Npages{\the\pdflastximagepages}
+  \loop
+    \thispagestyle{empty}
+    \vbox to 0mm{\hsize \linewidth \vskip -\topmargin \vskip -\topskip \vskip -1in
+       \parindent \z@
+       \hbox to \hsize{%
+         \ifodd\c at page \hskip -\oddsidemargin \else \hskip -\evensidemargin\fi \hskip -1in
+         \includegraphics[page=\number\c at section]{\csbul at fn.pdf}\hss}\vss}\clearpage
+  \ifnum\value{section}<\csbul at Npages
+    \stepcounter{section}
+  \repeat}
+
+\newif\if at csbul@pdfinclude@
+
+\newcommand*\CSBULpdf[2][]{\global\@csbul at pdfinclude@true}
+
 %
 % Index
 %
@@ -408,60 +532,8 @@
 \def\printindex{%
   \@input@{\bul at indexname.ind}%
   \immediate\closeout\@indexfile}%
-%
-% Counters to reset
-%
-\def\csbul at zerocounters{%
-\setcounter{part}\z@
-\setcounter{section}\z@
-\setcounter{subsection}\z@
-\setcounter{subsubsection}\z@
-\setcounter{paragraph}\z@
-\setcounter{subparagraph}\z@
-\setcounter{equation}\z@
-\setcounter{figure}\z@
-\setcounter{table}\z@
-\setcounter{footnote}\z@
-\setcounter{mpfootnote}\z@
-\setcounter{secnumdepth}{-2}}
 
-\def\csbul at prefix{} % default for single article
-\def\csbul at redef#1 {\expandafter\let\csname csbul@#1\expandafter\endcsname\csname #1\endcsname
-  \expandafter\def\csname #1\endcsname##1{\csname csbul@#1\endcsname{\csbul at prefix##1}}}
-\csbul at redef label
-\csbul at redef pageref
-\csbul at redef ref
 
-% Make the prefix
-
-\newcount\csbul at tempcnt
-
-\def\csbul at makeprefix{\global\advance\csbul at tempcnt\@ne
-  \edef\csbul at prefix{CSBUL@@\number\csbul at tempcnt}}
-
-% Input
-
-\newcommand\Clanek[2][]{\csbul at makeprefix
-  \begingroup
-  \csbul at zerocounters
-  \renewcommand\documentclass[2][CSBUL]{}%
-  \renewcommand\usepackage[2][CSBUL]{}%
-  \let\input\CSBULinput
-  \renewenvironment{document}{\let\document\@notprerr\setmubytevalues}{\csbul at podepis}% ???
-  \ifcat$#1$%
-    \def\csbul at fn{#2}%
-  \else
-    \def\csbul at fn{#1/#2}\graphicspath{{#1/}}\def\csbul at input@path{#1/}%
-  \fi
-  \csbul at saved@input{\csbul at fn}
-  \endgroup}
-
-% Input path
-
-\def\csbul at input@path{}
-\def\CSBULinput#1{\csbul at saved@input{\csbul at input@path #1}}
-\let\csbul at saved@input\input
-
 %============================================= TUGboat -- obsah
 
 \newenvironment{tugboat}{\vskip-2cc\parindent\z@ \def\and{{\normalfont and
@@ -501,3 +573,5 @@
 \AtBeginDocument{\pdfpageheight 210mm \pdfpagewidth 148mm \relax}
 \AtBeginDocument{\edef\setmubytevalues{\noexpand\mubytein\the\mubytein
   \noexpand\mubyteout\the\mubyteout \noexpand\mubytelog\the\mubytelog \relax}}
+
+\@input{\jobname.info}



More information about the tex-live-commits mailing list