From dc0258e434590b74a2c0b5c433e92eaa1a407ab5 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 30 Jun 2022 21:01:11 +0000 Subject: sanitize-umlaut (30jun22) git-svn-id: svn://tug.org/texlive/trunk@63770 c570f23f-e606-0410-a88d-b1316a301751 --- .../texmf-dist/doc/latex/sanitize-umlaut/CHANGES | 27 ---------- .../doc/latex/sanitize-umlaut/CHANGES.md | 60 +++++++++++++++++++++ Master/texmf-dist/doc/latex/sanitize-umlaut/README | 41 -------------- .../texmf-dist/doc/latex/sanitize-umlaut/README.md | 43 +++++++++++++++ .../doc/latex/sanitize-umlaut/sanitize-umlaut.pdf | Bin 419322 -> 453171 bytes .../doc/latex/sanitize-umlaut/sanitize-umlaut.tex | 23 +++++--- .../tex/latex/sanitize-umlaut/sanitize-umlaut.sty | 29 +++++++--- 7 files changed, 139 insertions(+), 84 deletions(-) delete mode 100644 Master/texmf-dist/doc/latex/sanitize-umlaut/CHANGES create mode 100644 Master/texmf-dist/doc/latex/sanitize-umlaut/CHANGES.md delete mode 100644 Master/texmf-dist/doc/latex/sanitize-umlaut/README create mode 100644 Master/texmf-dist/doc/latex/sanitize-umlaut/README.md diff --git a/Master/texmf-dist/doc/latex/sanitize-umlaut/CHANGES b/Master/texmf-dist/doc/latex/sanitize-umlaut/CHANGES deleted file mode 100644 index 2c22512ce1b..00000000000 --- a/Master/texmf-dist/doc/latex/sanitize-umlaut/CHANGES +++ /dev/null @@ -1,27 +0,0 @@ -%% The LaTeX package sanitize-umlaut - version 1.10 (2020/01/01) -%% -%% ------------------------------------------------------------------------------------------- -%% Copyright (c) 2016-2020 by Prof. Dr. Dr. Thomas F. Sturm -%% ------------------------------------------------------------------------------------------- -%% -%% 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 `author-maintained'. -%% -%% This work consists of all files listed in README -%% - -version 1.00 (2016/05/27): initial public release - -version 1.10 (2020/01/01): -- implementation changed to adapt for LaTeX/inputenc UTF-8 changes - (see documentation): - version 1.00 is only compatible to older LaTeX/inputenc UTF-8 - version 1.10 is only compatible to recent LaTeX/inputenc UTF-8 -- utf8-2018 is a new supported encoding diff --git a/Master/texmf-dist/doc/latex/sanitize-umlaut/CHANGES.md b/Master/texmf-dist/doc/latex/sanitize-umlaut/CHANGES.md new file mode 100644 index 00000000000..017517874a5 --- /dev/null +++ b/Master/texmf-dist/doc/latex/sanitize-umlaut/CHANGES.md @@ -0,0 +1,60 @@ +# Changelog +All notable changes to this project will be documented in this file. + +The format is based on +[Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to +[Semantic Versioning](http://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +### Added +### Changed +### Deprecated +### Removed +### Fixed +### Security + + + +## [1.2.1] - 2022-06-29 + +### Fixed +- The implementation of 1.2.0 changed UTF8 characters globally, not locally + inside `\index`. The fix works locally as intended and only affects + characters with UTF8-encoding C3.. + + + +## [1.2.0] - 2022-06-29 + +### Changed +- Changelog moved from CHANGES to CHANGES.md and adapted to + [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) +- From now on version numbers adhere to + [Semantic Versioning](http://semver.org/spec/v2.0.0.html) + +### Fixed +- The 2022 June release of LaTeX breaks sanitize-umlaut (issue #1) + A patch to `utf8.def` is added to circumvent `\protected` for + two-octets UTF8 characters (including umlauts) inside `\index` + + + +## [1.10] - 2020-01-01 + +### Added +- `utf8-2018` is a new supported encoding + +### Changed +- implementation changed to adapt for LaTeX/inputenc UTF-8 changes + (see documentation): + version 1.00 is only compatible to older LaTeX/inputenc UTF-8 + version 1.10 is only compatible to recent LaTeX/inputenc UTF-8 + + + +## [1.00] - 2016-05-27 + +### Added +- Initial public release diff --git a/Master/texmf-dist/doc/latex/sanitize-umlaut/README b/Master/texmf-dist/doc/latex/sanitize-umlaut/README deleted file mode 100644 index 2285acf34d4..00000000000 --- a/Master/texmf-dist/doc/latex/sanitize-umlaut/README +++ /dev/null @@ -1,41 +0,0 @@ -%% The LaTeX package sanitize-umlaut - version 1.10 (2020/01/01) -%% -%% ------------------------------------------------------------------------------------------- -%% Copyright (c) 2016-2020 by Prof. Dr. Dr. Thomas F. Sturm -%% ------------------------------------------------------------------------------------------- -%% -%% 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 `author-maintained'. -%% -%% This work consists of all files listed in README -%% - -The package sanitizes umlauts to be used directly in index entries for -MakeIndex and friends with pdflatex. This means, that inside '\index' an umlaut -can be used as "U or directly. In both cases, the letter is written as "U into -the raw index file for correct processing with MakeIndex and pdflatex. - -Contents of the package -======================= - 'README' this file - 'sanitize-umlaut.sty' LaTeX package file (style file) - 'sanitize-umlaut.pdf' Documentation - 'sanitize-umlaut.tex' Source code of the documentation (main file) - '*.doc.*' Source code of the documentation (include files) - 'german.ist' MakeIndex style - -Installation -============ -Copy the contents of the 'sanitize-umlaut.tds.zip' from CTAN to your local TeX file tree. - -Alternatively, put the files to their respective locations within the TeX installation: - 'sanitize-umlaut.sty' -> /tex/latex/sanitize-umlaut - - all other files -> /doc/latex/sanitize-umlaut diff --git a/Master/texmf-dist/doc/latex/sanitize-umlaut/README.md b/Master/texmf-dist/doc/latex/sanitize-umlaut/README.md new file mode 100644 index 00000000000..9d7da8de816 --- /dev/null +++ b/Master/texmf-dist/doc/latex/sanitize-umlaut/README.md @@ -0,0 +1,43 @@ +# The LaTeX package sanitize-umlaut - version 1.2.1 (2022/06/29) + + +> Copyright (c) 2016-2022 by Prof. Dr. Dr. Thomas F. Sturm + +> 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 `author-maintained`. + +> This work consists of all files listed in README.md + + +`sanitize-umlaut` sanitizes umlauts to be used directly in index entries for +MakeIndex and friends with pdflatex. This means, that inside `\index` an umlaut +can be used as `"U` or directly. In both cases, the letter is written as `"U` into +the raw index file for correct processing with MakeIndex and pdflatex. + + +## Contents of the package + +- `README.md` this file +- `CHANGES.md` log of changes (history) +- `sanitize-umlaut.sty` LaTeX package file (style file) +- `sanitize-umlaut.pdf` Documentation +- `sanitize-umlaut.tex` Source code of the documentation (main file) +- `*.doc.*` Source code of the documentation (include files) +- `german.ist` MakeIndex style + + +## Installation + +Copy the contents of the `sanitize-umlaut.tds.zip` from CTAN to your local TeX file tree. + +Alternatively, put the files to their respective locations within the TeX installation: + +- `sanitize-umlaut.sty` -> /tex/latex/sanitize-umlaut +- all other files -> /doc/latex/sanitize-umlaut diff --git a/Master/texmf-dist/doc/latex/sanitize-umlaut/sanitize-umlaut.pdf b/Master/texmf-dist/doc/latex/sanitize-umlaut/sanitize-umlaut.pdf index 0d9216b6d9d..abb30adb4a6 100644 Binary files a/Master/texmf-dist/doc/latex/sanitize-umlaut/sanitize-umlaut.pdf and b/Master/texmf-dist/doc/latex/sanitize-umlaut/sanitize-umlaut.pdf differ diff --git a/Master/texmf-dist/doc/latex/sanitize-umlaut/sanitize-umlaut.tex b/Master/texmf-dist/doc/latex/sanitize-umlaut/sanitize-umlaut.tex index cdeac7add0e..25e9284e1d3 100644 --- a/Master/texmf-dist/doc/latex/sanitize-umlaut/sanitize-umlaut.tex +++ b/Master/texmf-dist/doc/latex/sanitize-umlaut/sanitize-umlaut.tex @@ -2,19 +2,19 @@ % !TeX encoding=UTF-8 % !TeX spellcheck=en_US %% -%% The LaTeX package sanitize-umlaut - version 1.10 (2020/01/01) +%% The LaTeX package sanitize-umlaut - version 1.2.1 (2022/06/29) %% sanitize-umlaut.tex: Manual %% %% ------------------------------------------------------------------------------------------- -%% Copyright (c) 2016-2020 by Prof. Dr. Dr. Thomas F. Sturm +%% Copyright (c) 2016-2022 by Prof. Dr. Dr. Thomas F. Sturm %% ------------------------------------------------------------------------------------------- %% %% 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 +%% https://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX %% version 2005/12/01 or later. %% %% This work has the LPPL maintenance status `author-maintained'. @@ -27,8 +27,8 @@ \usepackage{% sanitize-umlaut} -\def\version{1.10}% -\def\datum{2020/01/01}% +\def\version{1.2.1}% +\def\datum{2022/06/29}% \hypersetup{ pdftitle={Manual for the sanitize-umlaut package}, @@ -52,7 +52,7 @@ \footnote{Prof.~Dr.~Dr.~Thomas F.~Sturm, Institut f\"{u}r Mathematik und Informatik, Universit\"{a}t der Bundeswehr M\"{u}nchen, D-85577 Neubiberg, Germany; email: \href{mailto:thomas.sturm@unibw.de}{thomas.sturm@unibw.de}}\par\medskip -\normalsize\url{http://www.ctan.org/pkg/sanitize-umlaut}\par +\normalsize\url{https://www.ctan.org/pkg/sanitize-umlaut}\par \url{https://github.com/T-F-S/sanitize-umlaut} } \end{center} @@ -112,7 +112,7 @@ An alternative would be to filter the resulting raw \myverb{.idx} index Another alternative is to replace MakeIndex by Xindy or another index processor. - +\clearpage \section{Important Compatibility Informations}% \subsection{Past} @@ -139,6 +139,12 @@ This patch \textbf{is not compatible} to older versions of \LaTeX/|inputenc| (be Therefore, if your \LaTeX\ distribution is not reasonable up to date, you should stay at version 1.00 of |sanitize-umlaut|. +With the 2022 June release of \LaTeX, characters defined via |utf8.def| are now +defined as |\protected| macros. Therefore, |sanitize-umlaut| version 1.2.0 (or newer) +patches some relevant parts of two-octets characters during |\index| back to +pre 2022 June behaviour. Obviously, you loose |\protected| here, if you +load |sanitize-umlaut|. + \subsection{Future} As always, the future is dark and difficult to see. Further changes of |inputenc| implementation may force further changes of |sanitize-umlaut|. @@ -147,6 +153,7 @@ Also, if some miracle happens, MakeIndex may be updated one day to recognize UTF-8 properly to make |sanitize-umlaut| superfluous. +\clearpage \section{Package Usage}% \subsection{Prerequisites} diff --git a/Master/texmf-dist/tex/latex/sanitize-umlaut/sanitize-umlaut.sty b/Master/texmf-dist/tex/latex/sanitize-umlaut/sanitize-umlaut.sty index 86918c3baa1..65041d21126 100644 --- a/Master/texmf-dist/tex/latex/sanitize-umlaut/sanitize-umlaut.sty +++ b/Master/texmf-dist/tex/latex/sanitize-umlaut/sanitize-umlaut.sty @@ -1,16 +1,16 @@ -%% The LaTeX package sanitize-umlaut - version 1.10 (2020/01/01) +%% The LaTeX package sanitize-umlaut - version 1.2.1 (2022/06/29) %% sanitize-umlaut.sty: Sanitize umlauts for makeindex %% %% ------------------------------------------------------------------------------------------- -%% Copyright (c) 2016-2020 by Prof. Dr. Dr. Thomas F. Sturm +%% Copyright (c) 2016-2022 by Prof. Dr. Dr. Thomas F. Sturm %% ------------------------------------------------------------------------------------------- %% %% 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 +%% https://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX %% version 2005/12/01 or later. %% %% This work has the LPPL maintenance status `author-maintained'. @@ -18,25 +18,38 @@ %% This work consists of all files listed in README %% \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{sanitize-umlaut}[2020/01/01 version 1.10 sanitize umlauts] +\ProvidesPackage{sanitize-umlaut}[2022/06/29 version 1.2.1 sanitize umlauts] \def\sanitize@unicode@char#1#2{% \@namedef{u8:\detokenize{#1}}{#2}% } -\long\def\sanitize@umlaut@UTFviii@two@octets{% patch for 'utf8.def' + +% BEGIN: patch for 'utf8.def' +\long\def\sanitize@umlaut@UTFviii@two@octets{% \ifincsname \expandafter \UTF@two@octets@string - \else \fi \UTFviii@two@octets@combine } +\begingroup +\catcode`\~13 +\catcode`\"12 +\gdef\sanitize@umlaut@local@UTFviii@redefinition{% + \def\UTFviii@tmp{\edef~{\noexpand\sanitize@umlaut@UTFviii@two@octets\noexpand~}}% + \uccode`\~"C3% + \uppercase\expandafter{\UTFviii@tmp}% +} +\endgroup +% END: patch for 'utf8.def' + + \begingroup \catcode`\"=12 \gdef\sanitize@umlaut@utfviii{% - \let\UTFviii@two@octets\sanitize@umlaut@UTFviii@two@octets% + \sanitize@umlaut@local@UTFviii@redefinition% \sanitize@unicode@char{^^c3^^a4}{"a}% \sanitize@unicode@char{^^c3^^b6}{"o}% \sanitize@unicode@char{^^c3^^bc}{"u}% -- cgit v1.2.3