diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/oberdiek/grffile.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/oberdiek/grffile.dtx | 87 |
1 files changed, 66 insertions, 21 deletions
diff --git a/Master/texmf-dist/source/latex/oberdiek/grffile.dtx b/Master/texmf-dist/source/latex/oberdiek/grffile.dtx index 91949e5c5f0..f2cc5de1fe2 100644 --- a/Master/texmf-dist/source/latex/oberdiek/grffile.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/grffile.dtx @@ -1,6 +1,6 @@ % \iffalse meta-comment % -% Copyright (C) 2006-2008 by Heiko Oberdiek <oberdiek@uni-freiburg.de> +% Copyright (C) 2006-2009 by Heiko Oberdiek <oberdiek@uni-freiburg.de> % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -68,7 +68,7 @@ \input docstrip.tex \Msg{************************************************************************} \Msg{* Installation} -\Msg{* Package: grffile 2008/10/13 v1.9 Extended file name support for graphics (HO)} +\Msg{* Package: grffile 2009/09/25 v1.10 Extended file name support for graphics (HO)} \Msg{************************************************************************} \keepsilent @@ -79,7 +79,7 @@ This is a generated file. -Copyright (C) 2006-2008 by Heiko Oberdiek <oberdiek@uni-freiburg.de> +Copyright (C) 2006-2009 by Heiko Oberdiek <oberdiek@uni-freiburg.de> This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either @@ -137,7 +137,7 @@ and the derived files %<*driver> \NeedsTeXFormat{LaTeX2e} \ProvidesFile{grffile.drv}% - [2008/10/13 v1.9 Extended file name support for graphics (HO)]% + [2009/09/25 v1.10 Extended file name support for graphics (HO)]% \documentclass{ltxdoc} \usepackage{holtxdoc}[2008/08/11] \begin{document} @@ -146,7 +146,7 @@ and the derived files %</driver> % \fi % -% \CheckSum{474} +% \CheckSum{561} % % \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 @@ -167,7 +167,7 @@ and the derived files % \GetFileInfo{grffile.drv} % % \title{The \xpackage{grffile} package} -% \date{2008/10/13 v1.9} +% \date{2009/09/25 v1.10} % \author{Heiko Oberdiek\\\xemail{oberdiek@uni-freiburg.de}} % % \maketitle @@ -375,7 +375,7 @@ and the derived files %<*package> \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{grffile}% - [2008/10/13 v1.9 Extended file name support for graphics (HO)]% + [2009/09/25 v1.10 Extended file name support for graphics (HO)]% % \end{macrocode} % % \subsection{Catcode stuff} @@ -612,26 +612,66 @@ and the derived files \def\grffile@filename@simple#1.#2\\{% \ifx\\#2\\% - \ifx\filename@base\@empty - \let\filename@ext\relax + \def\filename@base{#1}% + \let\filename@ext\relax + \else + \def\filename@base{}% + \grffile@analyze@ext{#1}.{#2}\\% + \fi +} + +\def\grffile@analyze@ext#1.#2\\{% + \let\grffile@next\relax + \ifx\\#2\\% + \edef\filename@base{\filename@base#1}% + \let\filename@ext\relax + \def\grffile@next{\grffile@try@extlist}% + \else + \edef\filename@base{\filename@base #1}% + \edef\filename@ext{\filename@dot#2\\}% + \expandafter\ifx\csname Gin@rule@.\filename@ext\endcsname\relax + \edef\filename@base{\filename@base.}% + \def\grffile@next{\grffile@analyze@ext#2\\}% \else - \grffile@ReturnAfterFiFiBase{% - \edef\filename@base{\expandafter\filename@dot\filename@base\\}% - \edef\filename@ext{#1}% + \grffile@IfFileExists{\filename@area\filename@base.\filename@ext}{% + % success + }{% + \edef\filename@base{\filename@base.\filename@ext}% + \let\filename@ext\relax + \def\grffile@next{\grffile@try@extlist}% }% \fi + \fi + \grffile@next +} + +\def\grffile@try@extlist{% + \@for\grffile@temp:=\Gin@extensions\do{% + \grffile@IfFileExists{\filename@area\filename@base\grffile@temp}{% + \ifx\filename@ext\relax + \edef\filename@ext{\expandafter\@gobble\grffile@temp\@empty}% + \fi + }{}% + }% + \ifx\filename@ext\relax + \expandafter\let\expandafter\filename@base\expandafter\@empty + \expandafter\grffile@use@last@ext\filename@base.\\% + \fi +} + +\def\grffile@use@last@ext#1.#2\\{% + \ifx\\#2\\% + \edef\filename@base{\expandafter\filename@dot\filename@base\\}% + \def\filename@ext{#1}% + \expandafter\@gobble \else - \expandafter\ifx\csname - Gin@rule@.\filename@dot #2\\\endcsname\relax - \edef\filename@base{\filename@base #1.}% - \grffile@ReturnAfterFiFiBase{\grffile@filename@simple #2\\}% - \else - \edef\filename@ext{\filename@dot #2\\}% - \fi + \edef\filename@base{\filename@base#1.}% + \expandafter\@firstofone \fi - \edef\filename@base{\filename@base #1}% + {% + \grffile@use@last@ext#2\\% + }% } -\def\grffile@ReturnAfterFiFiBase#1#2\fi\edef\filename@base#3{\fi\fi#1} % \end{macrocode} % % Print current option setting @@ -964,6 +1004,11 @@ showpage % \item % Fix for option `multidot' with default rule. % \end{Version} +% \begin{Version}{2009/09/25 v1.10} +% \item +% Rewrite of `multidot' algorithm to fix a problem +% (`multidot' with \cs{graphicspath}). +% \end{Version} % \end{History} % % \PrintIndex |