From e0c6872cf40896c7be36b11dcc744620f10adf1d Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 2 Sep 2019 13:46:59 +0900 Subject: Initial commit --- .../romanbarpagenumber/romanbarpagenumber.dtx | 197 +++++++++++++++++++++ 1 file changed, 197 insertions(+) create mode 100644 macros/latex/contrib/romanbarpagenumber/romanbarpagenumber.dtx (limited to 'macros/latex/contrib/romanbarpagenumber/romanbarpagenumber.dtx') diff --git a/macros/latex/contrib/romanbarpagenumber/romanbarpagenumber.dtx b/macros/latex/contrib/romanbarpagenumber/romanbarpagenumber.dtx new file mode 100644 index 0000000000..9cc98e4c33 --- /dev/null +++ b/macros/latex/contrib/romanbarpagenumber/romanbarpagenumber.dtx @@ -0,0 +1,197 @@ +% \iffalse meta-comment +% +% Copyright (C) 2015 by Robin Schneider +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% 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.3 or later is part of all distributions of LaTeX +% version 2005/12/01 or later. +% +% This work has the LPPL maintenance status `maintained'. +% +% The Current Maintainer of this work is Robin Schneider. +% +% This work consists of the files romanbarpagenumber.dtx and romanbarpagenumber.ins +% and the derived files romanbarpagenumber.sty and romanbarpagenumber.pdf. +% +% \fi +% +% \iffalse +%<*driver> +\ProvidesFile{romanbarpagenumber.dtx} +% +%%% See file 'romanbarpagenumber.dtx' for copyright and license. +%\NeedsTeXFormat{LaTeX2e}[1998/12/01] +%\ProvidesPackage{romanbarpagenumber} +%<*package> + [2015/02/06 v1.0 Use romanbar for Roman pagenumbers] +% +% +%<*driver> +\documentclass[english]{ltxdoc} +\newcommand{\PackageURL}{https://github.com/ypid/latex-packages/tree/master/romanbarpagenumber} +\newcommand{\PackageCTANURL}{https://www.ctan.org/pkg/romanbarpagenumber} +\newcommand{\PackageAuthor}{Robin Schneider} +\newcommand{\PackageAuthorEmail}{ypid@riseup.net} +\newcommand{\PackageName}{\PrintPackage{romanbarpagenumber}\xspace} +\newcommand{\PrintPackage}[1]{\textsf{#1}} +\newcommand{\PrintOptionF}[1]{\emph{#1}} %% ^^A This macro is used for +%% ^^A explaining any parameter when they first come up in the documentation. +\newcommand{\DescribePara}[1]{\marginpar{\raggedleft\strut\MacroFont\string#1}} +\usepackage{romanbarpagenumber} +\usepackage{ + babel, + csquotes, + xcolor, + url, + hypdoc, + nameref, + xspace, +} +\GetFileInfo{romanbarpagenumber.dtx} +\hypersetup{ + pdftitle={A manual for \PackageName}, + pdfauthor={\PackageAuthor{} <\PackageAuthorEmail>}, + pdfsubject={\fileinfo}, + baseurl={\PackageURL}, + pdfkeywords={This document corresponds to \PackageName~\fileversion, + dated \filedate} +} + +\title{The \PackageName{} package\thanks{This document +corresponds to \PackageName~\fileversion, dated \filedate.}} +\author{\PackageAuthor\\ + \texttt{\href{mailto:\PackageAuthorEmail?subject=LaTeX package romanbarpagenumber% + \&body=Dear Robin Schneider,}% + {\PackageAuthorEmail}% + }% +} + +\EnableCrossrefs% +\CodelineIndex% +\RecordChanges% +\begin{document} + \DocInput{romanbarpagenumber.dtx} + \PrintChanges% + \PrintIndex% +\end{document} +% +% \fi +% +% ^^A \CheckSum{0} +% ^^A I use version control and so on which has much better checksums :) +% +% \CharacterTable +% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z +% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z +% Digits \0\1\2\3\4\5\6\7\8\9 +% Exclamation \! Double quote \" Hash (number) \# +% Dollar \$ Percent \% Ampersand \& +% Acute accent \' Left paren \( Right paren \) +% Asterisk \* Plus \+ Comma \, +% Minus \- Point \. Solidus \/ +% Colon \: Semicolon \; Less than \< +% Equals \= Greater than \> Question mark \? +% Commercial at \@ Left bracket \[ Backslash \\ +% Right bracket \] Circumflex \^ Underscore \_ +% Grave accent \` Left brace \{ Vertical bar \| +% Right brace \} Tilde \~} +% +% \changes{1.0}{2015/02/06}{Initial version} +% +% \DoNotIndex{\RequirePackage, \DeclareOption, \ProcessOptions} +% \DoNotIndex{\PackageWarning, \MessageBreak} +% \DoNotIndex{\DeclareRobustCommand, \newcommand, \renewcommand, \def, \edef} +% \DoNotIndex{\DeclareStringOption, \ProcessLocalKeyvalOptions} +% \DoNotIndex{\ProcessKeyvalOptions, \SetupKeyvalOptions, \DeclareBoolOption} +% \DoNotIndex{\newenvironment} +% \DoNotIndex{\if, \else, \fi, \ifcase, \or, \ifthenelse, \AND, \OR, \value, \relax} +% \DoNotIndex{\loop, \repeat, \the, \ifnum} +% \DoNotIndex{\equal, \boolean, \@currname, \newcounter, \setcounter} +% \DoNotIndex{\stepcounter, \addtocounter} +% \DoNotIndex{\endinput, \begin, \end} +% \DoNotIndex{\not} +% +% \maketitle +% +% \pagenumbering{Roman} +% +% \phantomsection +% \addcontentsline{toc}{section}{\abstractname} +% \begin{abstract} +% Use the package \PrintPackage{romanbar} for roman page numbers. \\ +% Information site on CTAN: \url{\PackageCTANURL} \\ +% Question on Stackexchange: \url{http://tex.stackexchange.com/q/120066/32320} \\ +% Fork me on GitHub: \url{\PackageURL} \end{abstract} +% +% \tableofcontents +% +% \section{Introduction} +% The package \PrintPackage{romanbar} allows to typeset roman numbers with +% bars. The \PrintPackage{romanbarpagenumber} package allows you to use those +% \enquote{correct} roman numbers as page number. +% +% \section{Usage} +% Just load the package placing +% \begin{quote} +% |\usepackage{romanbarpagenumber}| +% \end{quote} +% in the preamble of your \LaTeXe{} source file. +% +% When you now set your page numbering to Roman, it will use the +% \PrintPackage{romanbar} package to typeset the roman number. +% You can set the page numbering to Roman with the following macro. +% +% \begin{quote} +% |\pagenumbering{Roman}| +% \end{quote} +% +% \section{Contributing} +% \label{sec:contributing} +% This package is being developed on GitHub: \url{\PackageURL}. When you want +% to modify the .sty file, make sure that you make your changes in the .dtx +% file instead, as the .sty file is automatically generated. +% +% \StopEventually{} +% +% \newpage +% \section{Implementation} +% \iffalse +%<*package> +% \fi +% This package depends on these packages. +% \begin{macrocode} + +\RequirePackage{kvoptions} +\RequirePackage{xifthen} +\RequirePackage{romanbar} +\AtBeginDocument{% + \@ifpackageloaded{hyperref}{% + \pdfstringdefDisableCommands{\let\Roman@bar\@firstofone} + }{} +} +% \end{macrocode} +% \subsection{Redefining pagenumbering} +% \begin{macrocode} +\let\romanbarpagenumber@pagenumbering\pagenumbering\relax% +\renewcommand{\pagenumbering}[1]{% + \romanbarpagenumber@pagenumbering{#1} + \ifthenelse{\equal{#1}{Roman}}{% + \renewcommand*{\thepage}{\Roman@bar{\Roman{page}}} + }{} +} +% \end{macrocode} +% That's it. +% \begin{macrocode} +\endinput +% \end{macrocode} +% +% \iffalse +% +% \fi +% +% \Finale +\endinput -- cgit v1.2.3