% \iffalse meta-comment % % Copyright 2006, 2009, 2011, 2014 Heiko Oberdiek % Copyright (C) 2014-2020 The LaTeX3 Project % % This file is part of the LaTeX base system. % ------------------------------------------- % % It may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3c % of this license or (at your option) any later version. % The latest version of this license is in % http://www.latex-project.org/lppl.txt % and version 1.3c or later is part of all distributions of LaTeX % version 2008 or later. % % This file has the LPPL maintenance status "maintained". % % 2006/06/02 v1.0: First version. % 2009/09/25 v1.1: \usepackage disabled. % 2011/07/01 v1.2: Fixes. % 2014/02/30 v1.3: % * Update for LaTeX 2014/05/01. % * Fix for anchor positions of issue titles. % 2014/05/15 v1.4: % * Updates for ltnews21.tex. % 2014/11/14 v1.4a: % * LaTeX Project version % 2015/02/16 v1.4b: % * Fix TOC issue % 2020/01/30 v1.4b: % * Fix TOC issue more generally and add page numbers % \fi \NeedsTeXFormat{LaTeX2e} \ProvidesFile{ltnews.tex}% [2020/01/30 v1.4c Master file for ltnews*.tex (LaTeX Project)] \providecommand*{\lastissue}{31} \InputIfFileExists{ltnews-lastissue.cfg}{}{} \ifx\pdfoutput\undefined \let\pdfoutput\outputmode \protected\def\pdfinfo{\pdfextension info } \fi \RequirePackage{ifpdf} \ifpdf % overwrite nasty stuff of ltnews.cfg % (use of hyperref for this would also support other drivers) \pdfinfo{% /Title(LaTeX News)% /Subject(Issues 1--\lastissue)% /Author(The LaTeX Project)% /Creator(LaTeX)% } \newtoks\pdfinfo \else \AtBeginDocument{% \hypersetup{% pdftitle={LaTeX News},% pdfsubject={Issues 1\textendash\lastissue},% pdfauthor={The LaTeX Project},% pdfcreator={LaTeX}% }% }% \fi \RequirePackage{lmodern} \RequirePackage[T1]{fontenc} \RequirePackage{hologo} \RequirePackage{graphicx} \documentclass{ltnews} \RequirePackage{url,csquotes} % \small already robust so better not ... %\expandafter %\DeclareRobustCommand\expandafter*\expandafter\small\expandafter{\small} \RequirePackage{hyperref} \hypersetup{colorlinks} \RequirePackage{bookmark} \RequirePackage{multicol} \makeatletter \newcounter{issue} \renewcommand*{\theissue}{% \ifnum\value{issue}<10 0\fi \number\value{issue}% } % show the page number on first page of issues: \renewcommand{\ps@titlepage}{% \renewcommand{\@oddhead}{\hfill}% \renewcommand{\@evenhead}{\hfill}% \renewcommand{\@oddfoot}{\@indiciafont\@indicia\hfill --\thepage}% \renewcommand{\@evenfoot}{\@indiciafont\@indicia\hfill --\thepage}% } \newcommand*{\MonthJanuary}{01} \newcommand*{\MonthFebruary}{02} \newcommand*{\MonthMarch}{03} \newcommand*{\MonthApril}{04} \newcommand*{\MonthMay}{05} \newcommand*{\MonthJune}{06} \newcommand*{\MonthJuly}{07} \newcommand*{\MonthAugust}{08} \newcommand*{\MonthSeptember}{09} \newcommand*{\MonthOctober}{10} \newcommand*{\MonthNovember}{11} \newcommand*{\MonthDecember}{12} \newcommand*{\printissue}{% Issue % \texorpdfstring{\number\value{issue}}{\theissue}, % \texorpdfstring{\@month\space\@year}{\@year/\@nameuse{Month\@month}}% } \let\l@part\l@section \let\l@section\l@subsection \let\l@subsection\l@subsubsection \let\l@subsubsection\l@paragraph \let\l@paragraph\l@subparagraph \newcommand*{\makefirsttitle}{% \twocolumn[{% \parbox[t][4\baselineskip]{\textwidth}{% \@titlefont\@title, Issues 1--\lastissue }% }]% } % table of contents with underlined links \iffalse % disable if option colorlinks is used \@ifpackagelater{hyperref}{2006/06/01}{% \newcommand*{\saved@tableofcontents}{}% \let\saved@tableofcontents\tableofcontents \renewcommand*{\tableofcontents}{% \begingroup \hypersetup{pdfborderstyle={/S/U/W 1}}% \saved@tableofcontents \endgroup }% }{} \fi % -- provide command introduced in new release % so this typesets with an old format \DeclareTextCommandDefault\textcommabelow[1] {\hmode@bgroup\ooalign{\null#1\crcr\hidewidth\raise-.31ex \hbox{\check@mathfonts\fontsize\ssf@size\z@ \math@fontsfalse\selectfont,}\hidewidth}\egroup} \DeclareTextCommandDefault\textcommaabove[1]{% \hmode@bgroup \ooalign{% \hidewidth \raise.7ex\hbox{% \check@mathfonts\fontsize\ssf@size\z@\math@fontsfalse\selectfont`% }% \hidewidth\crcr \null#1\crcr }% \egroup } \makeatother \begin{document} %%% Title and Table of Contents \makefirsttitle \pdfbookmark[0]{\contentsname}{toc} \tableofcontents \clearpage %%% Issues \begingroup \makeatletter \renewcommand*{\usepackage}[2][]{% \begingroup \def\x{#1|#2}% \def\y{T1|fontenc}% \ifx\x\y \else \def\y{|lmodern,url}% \ifx\x\y \else \def\y{|lmodern,url,hologo}% \ifx\x\y \else \def\y{|csquotes}% \ifx\x\y \else \def\y{|graphicx}% \ifx\x\y \else \def\y{|multicol}% \ifx\x\y \else \@latex@error{ltnews.tex: \string\usepackage[#1]{#2} found}\@ehc \fi \fi \fi \fi \fi \fi \endgroup }% \renewcommand*{\documentclass}[2][]{% \setcounter{footnote}{0}% \gobbleopt }% \newcommand*{\gobbleopt}[1][]{}% \let\org@twocolumn\twocolumn \renewcommand\NeedsTeXFormat[1]{\NeedsTeXFormatdate}% ignore that inside \newcommand\NeedsTeXFormatdate[1][]{}% % inidividual issues \renewenvironment{document}{% \clearpage \ifnum\@issue=20 % \addtocontents{toc}{\protect\setcounter{tocdepth}{5}}% \addtocontents{toc}{% \protect\makeatletter }% \addtocontents{toc}{% \let\protect\saved@l@paragraph\protect\l@paragraph }% \addtocontents{toc}{% \let\protect\l@paragraph\protect\l@subsection }% \fi \ifnum\@issue >20\space \addtocontents{toc}{% \let\protect\l@paragraph\protect\saved@l@paragraph }% \def\toclevel@subsection{1}% \def\toclevel@subsubsection{2}% \addtocontents{toc}{\protect\setcounter{tocdepth}{4}}% \renewcommand*{\tableofcontents}{% \section*{\contentsname}% \@starttoc{toc\theissue}% }% \let\saved@addtocontents\addtocontents \renewcommand*{\addtocontents}[2]{% \saved@addtocontents{##1}{##2}% \def\temp@toc{toc}% \def\temp@param{##1}% \ifx\temp@toc\temp@param \saved@addtocontents{toc\theissue}{##2}% \fi }% \let\l@subsubsection\l@subsection \let\l@subsection\l@section \let\l@section\l@part \let\l@part\@gobbletwo \fi \def\twocolumn[{% \let\twocolumn\org@twocolumn \org@twocolumn[% {% because of optional argument of \twocolumn \pdfbookmark[0]{\printissue}{issue\theissue}% }% \begingroup \let\WriteBookmarks\relax \@firstofone{% inside opt. arg. of \twocolumn: protect "]" \renewcommand*{\Hy@writebookmark}[5]{}% }% \phantomsection \addcontentsline{toc}{part}{\printissue}% \endgroup }% }{% \clearpage }% \makeatother \loop \ifnum\value{issue}<\lastissue \stepcounter{issue}% \input{ltnews\theissue}% \repeat \stepcounter{issue}% \makeatletter \IfFileExists{ltnews\theissue}{% \@latex@error{\jobname.tex is out of date,\MessageBreak there is `ltnews\theissue.tex'% }\@ehc }{}% \makeatother \endgroup \end{document}