summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/xbmks/xbmks.dtx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-06-13 21:44:46 +0000
committerKarl Berry <karl@freefriends.org>2018-06-13 21:44:46 +0000
commit046927b57b0a0739186f6d42b6af76218d6d2f6a (patch)
tree9fecdcbfd798eaf83f09b4e276a0ae5757c19161 /Master/texmf-dist/source/latex/xbmks/xbmks.dtx
parent0dc40a1ee19496b265caf65c297647f19b2a6096 (diff)
xbmks (13jun18)
git-svn-id: svn://tug.org/texlive/trunk@48005 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/xbmks/xbmks.dtx')
-rw-r--r--Master/texmf-dist/source/latex/xbmks/xbmks.dtx56
1 files changed, 31 insertions, 25 deletions
diff --git a/Master/texmf-dist/source/latex/xbmks/xbmks.dtx b/Master/texmf-dist/source/latex/xbmks/xbmks.dtx
index 8b69dd97b5e..65c3eae17ef 100644
--- a/Master/texmf-dist/source/latex/xbmks/xbmks.dtx
+++ b/Master/texmf-dist/source/latex/xbmks/xbmks.dtx
@@ -3,7 +3,7 @@
% makeindex -s gind.ist -o xbmks.ind xbmks.idx
%<*copyright>
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%% xbmks.sty package, %%
+%% xbmks.sty package, %%
%% Copyright (C) 2016--2018 %%
%% dpstory@uakron.edu %%
%% %%
@@ -16,11 +16,14 @@
%</copyright>
%<package>\NeedsTeXFormat{LaTeX2e}[1997/12/01]
%<package>\ProvidesPackage{xbmks}
-%<package> [2018/06/11 v1.0 xbmks: Cross-document bookmarks (dps)]
+%<package> [2018/06/13 v1.1 xbmks: Cross-document bookmarks (dps)]
%<*driver>
\documentclass{ltxdoc}
-\usepackage[colorlinks,hyperindex=false]{hyperref}
+\usepackage{xcolor}
+\usepackage[colorlinks,hyperindex=false,bookmarksopen]{hyperref}
\usepackage{fancyvrb,array,calc}
+\usepackage{xbmks}
+\xbmksetup{colors={intdoc=red},style={intbf}}
%\pdfstringdefDisableCommands{\let\\\textbackslash}
\EnableCrossrefs
\CodelineIndex
@@ -108,26 +111,26 @@
% \section{Drivers and options}
% We support the drivers \app{dvips} (and \app{dvipsone}), \app{pdflatex}, \app{lualatex}, and \app{xelatex}; these
% options are then named \opt{dvipsone}, \opt{dvips}, \opt{pdftex}, \opt{luatex}, and \opt{xetex}.
+% \changes{v1.1}{2018/06/13}{Fixed misspelling of drive command for pdfmark case}
% \begin{macrocode}
-\def\xbmk@driver{bmks-pdfmark.def}
-\DeclareOptionX{dvipsone}{\def\xbmk@driver{bmks-pdfmark.def}}
+\def\xbmk@driver{xbmks-pdfmark.def}
+\DeclareOptionX{dvipsone}{\def\xbmk@driver{xbmks-pdfmark.def}}
\DeclareOptionX{dvips}{\def\xbmk@driver{xbmks-pdfmark.def}}
\DeclareOptionX{pdftex}{\def\xbmk@driver{xbmks-pdftex.def}}
\DeclareOptionX{luatex}{\def\xbmk@driver{xbmks-pdftex.def}}
\DeclareOptionX{xetex}{\def\xbmk@driver{xbmks-xetex.def}}
-%\AtEndOfPackage{\InputIfFileExists{\xbmk@driver}{}{}}
% \end{macrocode}
% \section{Process the options}
% \begin{macrocode}
\ifpdf\ExecuteOptionsX{pdftex}\else
- \ifxetex\ExecuteOptionsX{xetex}\else
- \let\ExecuteOptions@SAVE\ExecuteOptions
- \let\ExecuteOptions\ExecuteOptionsX
- \InputIfFileExists{web.cfg}{}
- {\@ifundefined{l@tex@@@@driver}{\ExecuteOptionsX{dvips}}
- {\ExecuteOptionsX{dvipsone}}}%
- \let\ExecuteOptions\ExecuteOptions@SAVE
- \fi\fi
+\ifxetex\ExecuteOptionsX{xetex}\else
+ \let\ExecuteOptions@SAVE\ExecuteOptions
+ \let\ExecuteOptions\ExecuteOptionsX
+ \InputIfFileExists{web.cfg}{}
+ {\@ifundefined{l@tex@@@@driver}{\ExecuteOptionsX{dvips}}
+ {\ExecuteOptionsX{dvipsone}}}%
+ \let\ExecuteOptions\ExecuteOptions@SAVE
+\fi\fi
\ProcessOptionsX
% \end{macrocode}
% \section{Requirements}
@@ -138,6 +141,7 @@
% \end{macrocode}
% \begin{macro}{\xbmksetup}
% Set the cross-document options:
+% \changes{v1.1}{2018/06/13}{Allow an empty value of docbundle, its value is set to \string\cs{jobname}}%
%\begin{quote}\ttfamily\obeylines
%\string\xbmksetup\darg{%
%\qquad docbundle=\darg{\ameta{doc\SUB1},\ameta{doc\SUB2},...,\ameta{doc\SUB{n}}},
@@ -161,22 +165,29 @@
\define@key{xbmk@colors}{intdoc}[]{%
\HyColor@BookmarkColor{#1}{\xbmks@intdoc}{xbmks}{intdoc}%
\ifx\xbmks@intdoc\@empty\else
- \edef\xbmks@intdoc{/C [\xbmks@intdoc]}\fi
+ \edef\xbmks@intdoc{/C[\xbmks@intdoc]}\fi
}
\let\xbmks@intdoc\@empty
\define@key{xbmk@colors}{extdoc}[]{%
\HyColor@BookmarkColor{#1}{\xbmks@extdoc}{xbmks}{extdoc}%
\ifx\xbmks@extdoc\@empty\else
- \edef\xbmks@extdoc{/C [\xbmks@extdoc]}\fi
+ \edef\xbmks@extdoc{/C[\xbmks@extdoc]}\fi
}
\let\xbmks@extdoc\@empty
-\let\xbmks@Yes=y
-\let\xbmks@No=n
+\let\xbmks@Yes=y \let\xbmks@No=n
\define@boolkey{xbmk@style}{intbf}[true]{} %\ifKV@xbmk@style@intbf
\define@boolkey{xbmk@style}{extbf}[true]{}
\define@boolkey{xbmk@style}{intit}[true]{}
\define@boolkey{xbmk@style}{extit}[true]{}
-\newcommand{\xbmksetup}[1]{\write@xbmks@cfg{#1}}
+\newcommand{\xbmksetup}[1]{\setkeys{xbmksetup}{#1}%
+ \ifx\x@bmks@docs\@empty
+ \PackageInfo{xbmks}{The docbundle key of \string\xbmksetup\space
+ is empty,\MessageBreak
+ I will give it a value of `\jobname',\MessageBreak
+ in hopes this is your intention}%
+ \def\xbmks@next{\write@xbmks@cfg{docbundle={\jobname},#1}}\else
+ \def\xbmks@next{\write@xbmks@cfg{#1}}\fi\xbmks@next
+}
\def\write@xbmks@cfg#1{%
\newwrite\xbmks@setup \immediate\openout \xbmks@setup xbmks.cfg
\set@display@protect
@@ -186,12 +197,8 @@
}
\newcommand{\xbmksetupi}[1]{%
\setkeys{xbmksetup}{#1}%
- \ifx\x@bmks@docs\@empty
- \PackageWarning{xbmks}{The docbundle key is empty,\MessageBreak
- this key must have a value for cross-document bookmarks\MessageBreak
- to be generated}\else
\edef\@exp@for{\noexpand\docbundle{\x@bmks@docs}}\expandafter
- \@exp@for\fi
+ \@exp@for
\edef\@exp@keys{\noexpand
\setkeys{xbmk@colors}{\x@bmks@colors}}\@exp@keys
\edef\@exp@keys{\noexpand
@@ -518,7 +525,6 @@
bookmark package is not supported;\MessageBreak
this package does nothing, as a result}}
{\InputIfFileExists{\xbmk@driver}{}{}}
-
%</package>
% \end{macrocode}
% \Finale