diff options
author | Karl Berry <karl@freefriends.org> | 2022-04-09 20:30:34 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2022-04-09 20:30:34 +0000 |
commit | 6c470d1d7d65071defe8e0b9d8e90a935720fd17 (patch) | |
tree | c41dc94d0af4d225b23b537adc7993c146570c31 | |
parent | dc3f6c27d3ca58b293c798446665a35176d9ffc0 (diff) |
polyglossia (9apr22)
git-svn-id: svn://tug.org/texlive/trunk@62988 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/texmf-dist/doc/latex/polyglossia/README.md | 2 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/polyglossia/example-arabic.pdf | bin | 70604 -> 70706 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/polyglossia/example-korean.pdf | bin | 20309 -> 20306 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/polyglossia/example-thai.pdf | bin | 13478 -> 13562 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/polyglossia/examples.pdf | bin | 147484 -> 148122 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/polyglossia/polyglossia.pdf | bin | 348164 -> 351588 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/polyglossia/polyglossia.tex | 64 | ||||
-rw-r--r-- | Master/texmf-dist/source/latex/polyglossia/polyglossia.dtx | 321 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/polyglossia/gloss-latex.lde | 36 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/polyglossia/gloss-polish.ldf | 206 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/polyglossia/polyglossia.sty | 2 |
11 files changed, 610 insertions, 21 deletions
diff --git a/Master/texmf-dist/doc/latex/polyglossia/README.md b/Master/texmf-dist/doc/latex/polyglossia/README.md index df223991ec2..6a84e136c48 100644 --- a/Master/texmf-dist/doc/latex/polyglossia/README.md +++ b/Master/texmf-dist/doc/latex/polyglossia/README.md @@ -1,4 +1,4 @@ -# THE POLYGLOSSIA PACKAGE v1.54 +# THE POLYGLOSSIA PACKAGE v1.55 ## Multilingual typesetting with XeLaTeX and LuaLaTeX This package provides an alternative to Babel for users of XeLaTeX and LuaLaTeX. diff --git a/Master/texmf-dist/doc/latex/polyglossia/example-arabic.pdf b/Master/texmf-dist/doc/latex/polyglossia/example-arabic.pdf Binary files differindex 2ad7e7905b6..0593f72acda 100644 --- a/Master/texmf-dist/doc/latex/polyglossia/example-arabic.pdf +++ b/Master/texmf-dist/doc/latex/polyglossia/example-arabic.pdf diff --git a/Master/texmf-dist/doc/latex/polyglossia/example-korean.pdf b/Master/texmf-dist/doc/latex/polyglossia/example-korean.pdf Binary files differindex 99dd5c319d5..509e1043e52 100644 --- a/Master/texmf-dist/doc/latex/polyglossia/example-korean.pdf +++ b/Master/texmf-dist/doc/latex/polyglossia/example-korean.pdf diff --git a/Master/texmf-dist/doc/latex/polyglossia/example-thai.pdf b/Master/texmf-dist/doc/latex/polyglossia/example-thai.pdf Binary files differindex 36bff4d4298..e05902bb12a 100644 --- a/Master/texmf-dist/doc/latex/polyglossia/example-thai.pdf +++ b/Master/texmf-dist/doc/latex/polyglossia/example-thai.pdf diff --git a/Master/texmf-dist/doc/latex/polyglossia/examples.pdf b/Master/texmf-dist/doc/latex/polyglossia/examples.pdf Binary files differindex d74be57444c..9f71dac32cd 100644 --- a/Master/texmf-dist/doc/latex/polyglossia/examples.pdf +++ b/Master/texmf-dist/doc/latex/polyglossia/examples.pdf diff --git a/Master/texmf-dist/doc/latex/polyglossia/polyglossia.pdf b/Master/texmf-dist/doc/latex/polyglossia/polyglossia.pdf Binary files differindex 74e64410ad3..eba0c236985 100644 --- a/Master/texmf-dist/doc/latex/polyglossia/polyglossia.pdf +++ b/Master/texmf-dist/doc/latex/polyglossia/polyglossia.pdf diff --git a/Master/texmf-dist/doc/latex/polyglossia/polyglossia.tex b/Master/texmf-dist/doc/latex/polyglossia/polyglossia.tex index 2046d6a66ab..7e695190004 100644 --- a/Master/texmf-dist/doc/latex/polyglossia/polyglossia.tex +++ b/Master/texmf-dist/doc/latex/polyglossia/polyglossia.tex @@ -233,7 +233,7 @@ amharic & \TX{dutch} & interlingua & nko & \TX{spanis \TX{armenian} & \TX{esperanto} & japanese & occitan & \TX{syriac} \\ asturian & estonian & kannada & \TX{persian} & tamil \\ basque & \TX{finnish} & khmer & piedmontese & telugu \\ -\TX{belarusian} & \TX{french} & \TX{korean} & polish & \TX{thai} \\ +\TX{belarusian} & \TX{french} & \TX{korean} & \TX{polish} & \TX{thai} \\ \TX{bengali} & friulian & \TX{kurdish} & \TX{portuguese} & \TX{tibetan} \\ bosnian & \TX{gaelic} & \TX{lao} & romanian & turkish \\ breton & galician & \TX{latin} & romansh & turkmen \\ @@ -1068,10 +1068,11 @@ and that passing \xpgvalue{babelshorthands} (without value) is equivalent to pas \end{shorthands} \item \xpgboolkeyfalse[1.54]{schoolhyphens} If this is set to true, alternative (experimental) hyphenation patterns are used rather than the - default Finnish patterns. These patterns (called `School Hyphenation') are more basic in that - they do not contain hyphenation exceptions for compound words since these result in simple words - not being hyphenated at points where this would be valid. The backdrop of the `School' patterns - is that compound words might be hyphenated incorrectly. + default Finnish patterns. These (so-called `School') patterns allow hyphenation at + all valid points, including hyphenation points that are considered sub-optimal from an + ortho-typographic point of view (e.\,g., hyphenation between two vowels). + The default patterns try to prevent such hyphenation, with the drawback that simple words + are sometimes not being hyphenated at points where this would be valid. See \url{https://github.com/hyphenation/basic-finnish} for details. \end{itemize} @@ -1621,6 +1622,46 @@ Currently, only the Khalkha variety in Cyrillic script is supported. \item \Cmd\aemph (see section \ref{arabic}). \end{itemize} + +\subsection{polish}\label{polish} + +\paragraph*{Options:} +\begin{itemize} + \item \xpgboolkeyfalse[1.55]{babelshorthands} + If this is turned on, the following shorthands for Polish are activated: + \begin{shorthands} + \item[¦"=¦] for an explicit hyphen sign which is repeated at the beginning + of the next line when hyphenated, as common in Polish typesetting + (also if ¦splithyphens=false¦). Unlike plain ¦-¦, this also allows + for hyphenation at the other points preset in the hyphenation patterns. + \item[¦"|¦] disables a ligature at this position. + \item[\texttt{"\textasciitilde}] for a hyphen sign without a breakpoint. Useful for + cases where the hyphen should stick at the following syllable. + \item[¦"-¦] adds a hyphenation point that does still allow for hyphenation at the points preset + in the hyphenation patterns (as opposed to \cmd\-). + \item[¦""¦] allows for a line break at this position (without hyphenation sign). + \item[¦"/¦] a slash that allows for a subsequent line break. As opposed to \cmd\slash, hyphenation at the breakpoints + preset in the hyphenation patterns is still allowed. + \item[¦"`¦] for Polish left double quotes (looks like ,,). + \item[¦"'¦] for Polish right double quotes (looks like ''). + \item[¦"<¦] for French left double guillemets (looks like << -- used in Polish as second level quotes). + \item[¦">¦] for French right double guillemets (looks like >>). + \end{shorthands} + \item \xpgboolkeytrue[1.55]{splithyphens} + According to Polish typesetting conventions, if a word with a hard hyphen (such as \emph{czerwono-złote}) + is hyphenated at this hyphen, a second hyphenation character is to be inserted at the beginning + of the line that follows the hyphenation (\emph{czerwono-/-złote}). + By default, this is done automatically (if you are using \LuaTeX, the \pkg{luavlna} package is + loaded to achieve this). + Set this option to ¦false¦ to disable the feature. + \item \xpgboolkeytrue[1.55]{vlna} + According to Polish typesetting conventions, single-letter words (non-syllable prepositions) + must not occur at line ends. + \pkg{Polyglossia} takes care of this automatically by default (if you are using \LuaTeX, the + \pkg{luavlna} package is loaded to achieve this). + Set this option to ¦false¦ to disable the feature. +\end{itemize} + \subsection{portuguese}\label{portuguese} \paragraph*{Options:} \begin{itemize} @@ -2383,6 +2424,19 @@ where \meta{type} is a supported language id type (such as ¦bcp-47¦) and \meta \section{Revision history} \bgroup\footnotesize +\subsection*{1.55 (09-04-2022)} + +\subsubsection*{New features} +\begin{itemize} + \item New option \xpgoption{splithyphens} and \xpgoption{vlna} for Polish (\TXI{535}). + \item Add \xpgoption{babelshorthands} to Polish. +\end{itemize} + +\subsubsection*{Bug fixes} +\begin{itemize} + \item Add missing \texttt{gloss-latex.lde} file to release (\TXI{537}). +\end{itemize} + \subsection*{1.54 (27-03-2022)} \subsubsection*{New features} diff --git a/Master/texmf-dist/source/latex/polyglossia/polyglossia.dtx b/Master/texmf-dist/source/latex/polyglossia/polyglossia.dtx index d3f0abc5897..d9660ad6976 100644 --- a/Master/texmf-dist/source/latex/polyglossia/polyglossia.dtx +++ b/Master/texmf-dist/source/latex/polyglossia/polyglossia.dtx @@ -8,7 +8,7 @@ \iffalse %</internal> %<*README> -# THE POLYGLOSSIA PACKAGE v1.54 +# THE POLYGLOSSIA PACKAGE v1.55 ## Multilingual typesetting with XeLaTeX and LuaLaTeX This package provides an alternative to Babel for users of XeLaTeX and LuaLaTeX. @@ -109,6 +109,7 @@ to track the issues and follow progress. \generate{\file{babelsh.def}{\from{polyglossia.dtx}{babelsh.def}}} \generate{\file{cal-util.def}{\from{polyglossia.dtx}{cal-util.def}}} \generate{\file{xgreek-fixes.def}{\from{polyglossia.dtx}{xgreek-fixes.def}}} +\generate{\file{gloss-latex.lde}{\from{polyglossia.dtx}{gloss-latex.lde}}} \generate{\file{gloss-acadien.ldf}{\from{polyglossia.dtx}{gloss-acadien.ldf}}} \generate{\file{gloss-aeb.ldf}{\from{polyglossia.dtx}{gloss-aeb.ldf}}} \generate{\file{gloss-af.ldf}{\from{polyglossia.dtx}{gloss-af.ldf}}} @@ -615,7 +616,7 @@ to track the issues and follow progress. % \TX{armenian} & \TX{esperanto} & japanese & occitan & \TX{syriac} \\ % asturian & estonian & kannada & \TX{persian} & tamil \\ % basque & \TX{finnish} & khmer & piedmontese & telugu \\ -% \TX{belarusian} & \TX{french} & \TX{korean} & polish & \TX{thai} \\ +% \TX{belarusian} & \TX{french} & \TX{korean} & \TX{polish} & \TX{thai} \\ % \TX{bengali} & friulian & \TX{kurdish} & \TX{portuguese} & \TX{tibetan} \\ % bosnian & \TX{gaelic} & \TX{lao} & romanian & turkish \\ % breton & galician & \TX{latin} & romansh & turkmen \\ @@ -1450,10 +1451,11 @@ to track the issues and follow progress. % \end{shorthands} % \item \xpgboolkeyfalse[1.54]{schoolhyphens} % If this is set to true, alternative (experimental) hyphenation patterns are used rather than the -% default Finnish patterns. These patterns (called `School Hyphenation') are more basic in that -% they do not contain hyphenation exceptions for compound words since these result in simple words -% not being hyphenated at points where this would be valid. The backdrop of the `School' patterns -% is that compound words might be hyphenated incorrectly. +% default Finnish patterns. These (so-called `School') patterns allow hyphenation at +% all valid points, including hyphenation points that are considered sub-optimal from an +% ortho-typographic point of view (e.\,g., hyphenation between two vowels). +% The default patterns try to prevent such hyphenation, with the drawback that simple words +% are sometimes not being hyphenated at points where this would be valid. % See \url{https://github.com/hyphenation/basic-finnish} for details. % \end{itemize} % @@ -2003,6 +2005,46 @@ to track the issues and follow progress. % \item \Cmd\aemph (see section \ref{arabic}). % \end{itemize} % +% +% \subsection{polish}\label{polish} +% +% \paragraph*{Options:} +% \begin{itemize} +% \item \xpgboolkeyfalse[1.55]{babelshorthands} +% If this is turned on, the following shorthands for Polish are activated: +% \begin{shorthands} +% \item[¦"=¦] for an explicit hyphen sign which is repeated at the beginning +% of the next line when hyphenated, as common in Polish typesetting +% (also if ¦splithyphens=false¦). Unlike plain ¦-¦, this also allows +% for hyphenation at the other points preset in the hyphenation patterns. +% \item[¦"|¦] disables a ligature at this position. +% \item[\texttt{"\textasciitilde}] for a hyphen sign without a breakpoint. Useful for +% cases where the hyphen should stick at the following syllable. +% \item[¦"-¦] adds a hyphenation point that does still allow for hyphenation at the points preset +% in the hyphenation patterns (as opposed to \cmd\-). +% \item[¦""¦] allows for a line break at this position (without hyphenation sign). +% \item[¦"/¦] a slash that allows for a subsequent line break. As opposed to \cmd\slash, hyphenation at the breakpoints +% preset in the hyphenation patterns is still allowed. +% \item[¦"`¦] for Polish left double quotes (looks like ,,). +% \item[¦"'¦] for Polish right double quotes (looks like ''). +% \item[¦"<¦] for French left double guillemets (looks like << -- used in Polish as second level quotes). +% \item[¦">¦] for French right double guillemets (looks like >>). +% \end{shorthands} +% \item \xpgboolkeytrue[1.55]{splithyphens} +% According to Polish typesetting conventions, if a word with a hard hyphen (such as \emph{czerwono-złote}) +% is hyphenated at this hyphen, a second hyphenation character is to be inserted at the beginning +% of the line that follows the hyphenation (\emph{czerwono-/-złote}). +% By default, this is done automatically (if you are using \LuaTeX, the \pkg{luavlna} package is +% loaded to achieve this). +% Set this option to ¦false¦ to disable the feature. +% \item \xpgboolkeytrue[1.55]{vlna} +% According to Polish typesetting conventions, single-letter words (non-syllable prepositions) +% must not occur at line ends. +% \pkg{Polyglossia} takes care of this automatically by default (if you are using \LuaTeX, the +% \pkg{luavlna} package is loaded to achieve this). +% Set this option to ¦false¦ to disable the feature. +% \end{itemize} +% % \subsection{portuguese}\label{portuguese} % \paragraph*{Options:} % \begin{itemize} @@ -2765,6 +2807,19 @@ to track the issues and follow progress. % \section{Revision history} % % \bgroup\footnotesize +% \subsection*{1.55 (09-04-2022)} +% +% \subsubsection*{New features} +% \begin{itemize} +% \item New option \xpgoption{splithyphens} and \xpgoption{vlna} for Polish (\TXI{535}). +% \item Add \xpgoption{babelshorthands} to Polish. +% \end{itemize} +% +% \subsubsection*{Bug fixes} +% \begin{itemize} +% \item Add missing \texttt{gloss-latex.lde} file to release (\TXI{537}). +% \end{itemize} +% % \subsection*{1.54 (27-03-2022)} % % \subsubsection*{New features} @@ -3631,7 +3686,7 @@ to track the issues and follow progress. % \subsection{polyglossia.sty} % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{polyglossia}[2022/03/27 v1.54 +\ProvidesPackage{polyglossia}[2022/04/09 v1.55 Modern multilingual typesetting with XeLaTeX and LuaLaTeX] \RequirePackage{etoolbox} \RequirePackage{makecmds} @@ -9434,6 +9489,50 @@ polyglossia.newloader_loaded_languages = newloader_loaded_languages % \end{macrocode} % \iffalse %</xgreek-fixes.def> +%<*gloss-latex.lde> +% \fi +% \clearpage +% +% \subsection{gloss-latex.lde} +% \begin{macrocode} +\ProvidesLanguageDefinitionExtension{gloss-latex}{2021/07/10}{v1.53}{polyglossia: module for default language} + +\PolyglossiaSetup{latex}{ + hyphennames={english}, + hyphenmins={2,3}, + langtag=ENG, + fontsetup=true, + % ignore command + DefineCommandsCmd={use_none:n} +} + +\def\captionslatex{% + \def\prefacename{Preface}% + \def\refname{References}% + \def\abstractname{Abstract}% + \def\bibname{Bibliography}% + \def\chaptername{Chapter}% + \def\appendixname{Appendix}% + \def\contentsname{Contents}% + \def\listfigurename{List of Figures}% + \def\listtablename{List of Tables}% + \def\indexname{Index}% + \def\figurename{Figure}% + \def\tablename{Table}% + \def\partname{Part}% + \def\enclname{encl}% + \def\ccname{cc}% + \def\headtoname{To}% + \def\pagename{Page}% + \def\seename{see}% + \def\alsoname{see also}% + \def\proofname{Proof}% +} + + +% \end{macrocode} +% \iffalse +%</gloss-latex.lde> %<*gloss-acadien.ldf> % \fi % \clearpage @@ -21421,6 +21520,7 @@ polyglossia.newloader_loaded_languages = newloader_loaded_languages % \subsection{gloss-polish.ldf} % \begin{macrocode} \ProvidesFile{gloss-polish.ldf}[polyglossia: module for polish] + \PolyglossiaSetup{polish}{ bcp47=pl, hyphennames={polish}, @@ -21433,6 +21533,186 @@ polyglossia.newloader_loaded_languages = newloader_loaded_languages % BCP-47 compliant aliases \setlanguagealias*{polish}{pl} +\ifluatex + \RequirePackage{luavlna} +\fi + +\define@boolkey{polish}[polish@]{babelshorthands}[true]{} + +\define@boolkey{polish}[polish@]{splithyphens}[true]{} + +\define@boolkey{polish}[polish@]{vlna}[true]{} + +% Register default options +\xpg@initialize@gloss@options{polish}{babelshorthands=false,splithyphens=true,vlna=true} + +\ifsystem@babelshorthands + \setkeys{polish}{babelshorthands=true} +\else + \setkeys{polish}{babelshorthands=false} +\fi + +\ifcsundef{initiate@active@char}{% + \input{babelsh.def}% + \initiate@active@char{"}% + \shorthandoff{"}% +}{} + +\def\polish@@splhyphen#1{% + \def\polish@sh@tmp{% + \if\polish@sh@next-#1% + \else\expandafter\polish@@@splhyphen{#1}\fi% + }% + \futurelet\polish@sh@next\polish@sh@tmp% +} + +\def\polish@@@splhyphen#1{% + \ifnum\hyphenchar \font>0% + \kern\z@\discretionary{-}{\char\hyphenchar\the\font}{#1}% + \nobreak\hskip\z@% + \else% + #1% + \fi% +} + +\def\polish@splhyphen{% + \polish@@splhyphen{-}% +} + +\def\polish@shorthands{% + \bbl@activate{"}% + \def\language@group{polish}% + \declare@shorthand{polish}{"=}{\polish@splhyphen}% + \declare@shorthand{polish}{""}{\hskip\z@skip}% + \declare@shorthand{polish}{"~}{\textormath{\leavevmode\hbox{-}}{-}}% + \declare@shorthand{polish}{"-}{\nobreak\-\bbl@allowhyphens}% + \declare@shorthand{polish}{"|}{% + \textormath{\penalty\@M\discretionary{-}{}{\kern.03em}% + \bbl@allowhyphens}{}% + }% + \declare@shorthand{polish}{"/}{\textormath + {\bbl@allowhyphens\discretionary{/}{}{/}\bbl@allowhyphens}{}}% + \declare@shorthand{polish}{"`}{„}% + \declare@shorthand{polish}{"'}{”}% + \declare@shorthand{polish}{"<}{«}% + \declare@shorthand{polish}{">}{»}% +} + +\def\nopolish@shorthands{% + \@ifundefined{initiate@active@char}{}{\bbl@deactivate{"}}% +} + +\ifxetex + % splithyphens + \newXeTeXintercharclass\polish@hyphen % - + % vlna + \newXeTeXintercharclass\polish@openpunctuation + \newXeTeXintercharclass\polish@nonsyllabicpreposition + \ifdefined\e@alloc@intercharclass@top + \chardef\polish@boundary=\e@alloc@intercharclass@top + \else + \ifdefined\XeTeXinterwordspaceshaping + \chardef\polish@boundary=4095 % + \def\newXeTeXintercharclass{% + \e@alloc\XeTeXcharclass\chardef + \xe@alloc@intercharclass\m@ne\@ucharclass@boundary}% + \else + \chardef\polish@boundary=255 + \fi + \fi +\fi + +\def\polish@hyphens{% + \ifluatex + \AfterPreamble{\enablesplithyphens{polish}}% + \else + \XeTeXinterchartokenstate=1 + \XeTeXcharclass `\- \polish@hyphen + \XeTeXinterchartoks \z@ \polish@hyphen = {\polish@@splhyphen}% "-" -> "\polish@@splhyphen-" + % necessary if used together with vlna: + \XeTeXinterchartoks \polish@nonsyllabicpreposition \polish@hyphen = {\polish@@splhyphen}% "-" -> "\polish@@splhyphen-" + \fi% +} + +\def\nopolish@hyphens{% + \ifluatex + \AfterPreamble{\disablesplithyphens{polish}}% + \else + \XeTeXcharclass `\- \z@ + \fi% +} + +% Add nonbreakable space after single-letter word to +% prevent them to land at the end of a line +% vlna code taken and adapted from xevlna.sty +\ifxetex + \def\polish@nointerchartoks{\let\polish@interchartoks\polish@PreCSpreposition}% + \def\polish@PreCSpreposition{% + \def\next{}% + \ifnum\catcode`\ =10 % nothing will be done in verbatim + \ifmmode % nothing in math + \else + \let\polish@interchartoks\polish@nointerchartoks + \let\next\polish@ExamineCSpreposition + \fi\fi + \next% + }% + \def\polish@ExamineCSpreposition #1{#1\futurelet\next\polish@ProcessCSpreposition}% + \def\polish@ProcessCSpreposition{\ifx\next\polish@XeTeXspace\nobreak\fi}% + \futurelet\polish@XeTeXspace{ }\polish@nointerchartoks +\fi + +\def\polish@vlna{% + \ifluatex + \singlechars{polish}{AaIiOoUuWwZz} + \preventsingleon + \else + % Code taken and adapted from xevlna.sty + \XeTeXinterchartokenstate=1 + \XeTeXcharclass `\( \polish@openpunctuation + \XeTeXcharclass `\[ \polish@openpunctuation + \XeTeXcharclass `\„ \polish@openpunctuation + \XeTeXcharclass `\« \polish@openpunctuation + \XeTeXcharclass `\W \polish@nonsyllabicpreposition + \XeTeXcharclass `\w \polish@nonsyllabicpreposition + \XeTeXcharclass `\Z \polish@nonsyllabicpreposition + \XeTeXcharclass `\z \polish@nonsyllabicpreposition + \XeTeXcharclass `\O \polish@nonsyllabicpreposition + \XeTeXcharclass `\o \polish@nonsyllabicpreposition + \XeTeXcharclass `\U \polish@nonsyllabicpreposition + \XeTeXcharclass `\u \polish@nonsyllabicpreposition + \XeTeXcharclass `\A \polish@nonsyllabicpreposition + \XeTeXcharclass `\a \polish@nonsyllabicpreposition + \XeTeXcharclass `\I \polish@nonsyllabicpreposition + \XeTeXcharclass `\i \polish@nonsyllabicpreposition + \XeTeXinterchartoks \polish@boundary \polish@nonsyllabicpreposition {\polish@interchartoks}% + \XeTeXinterchartoks \polish@openpunctuation \polish@nonsyllabicpreposition {\polish@interchartoks}% + \fi +} + +\def\nopolish@vlna{% + \ifluatex + \preventsingleoff + \else + \XeTeXcharclass`\(\z@ + \XeTeXcharclass`\[\z@ + \XeTeXcharclass`\„\z@ + \XeTeXcharclass`\«\z@ + \XeTeXcharclass`\W\z@ + \XeTeXcharclass`\w\z@ + \XeTeXcharclass`\Z\z@ + \XeTeXcharclass`\z\z@ + \XeTeXcharclass`\O\z@ + \XeTeXcharclass`\o\z@ + \XeTeXcharclass`\U\z@ + \XeTeXcharclass`\u\z@ + \XeTeXcharclass`\A\z@ + \XeTeXcharclass`\a\z@ + \XeTeXcharclass`\I\z@ + \XeTeXcharclass`\i\z@ + \fi +} + \def\captionspolish{% \def\prefacename{Przedmowa}% \def\refname{Literatura}% @@ -21454,8 +21734,8 @@ polyglossia.newloader_loaded_languages = newloader_loaded_languages \def\seename{Zobacz}% \def\alsoname{Zobacz też}% \def\proofname{Dowód}% - \def\glossaryname{Glossary}% <-- Needs translation - } + \def\glossaryname{Słowniczek}% +} \def\datepolish{% \def\today{\number\day\space\ifcase\month\or @@ -21463,7 +21743,26 @@ polyglossia.newloader_loaded_languages = newloader_loaded_languages lipca\or sierpnia\or września\or października\or listopada\or grudnia\fi\space \number\year}% - } +} + +\def\noextras@polish{% + \ifpolish@babelshorthands\nopolish@shorthands\fi% + \nopolish@hyphens% + \nopolish@vlna% + \ifxetex\XeTeXinterchartokenstate=0\fi% +} + +\def\blockextras@polish{% + \ifpolish@babelshorthands\polish@shorthands\else\nopolish@shorthands\fi% + \ifpolish@vlna\polish@vlna\else\nopolish@vlna\fi% + \ifpolish@splithyphens\polish@hyphens\else\nopolish@hyphens\fi% +} + +\def\inlineextras@polish{% + \ifpolish@babelshorthands\polish@shorthands\else\nopolish@shorthands\fi% + \ifpolish@vlna\polish@vlna\else\nopolish@vlna\fi% + \ifpolish@splithyphens\polish@hyphens\else\nopolish@hyphens\fi% +} % \end{macrocode} % \iffalse @@ -27526,7 +27825,7 @@ This is today: \today % \typeout{* To finish the installation you have to move the following} % \typeout{* file into a directory searched by TeX:} % \typeout{*} -% \typeout{* \space\space\space all *.sty, *.lua, *.def and *.ldf files} +% \typeout{* \space\space all *.sty, *.lua, *.def, *.lde and *.ldf files} % \typeout{*} % \typeout{* You also need to compile the *.map files with teckit_compile} % \typeout{* and place the resulting *.tec files under} diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-latex.lde b/Master/texmf-dist/tex/latex/polyglossia/gloss-latex.lde new file mode 100644 index 00000000000..fe217db47b3 --- /dev/null +++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-latex.lde @@ -0,0 +1,36 @@ +\ProvidesLanguageDefinitionExtension{gloss-latex}{2021/07/10}{v1.53}{polyglossia: module for default language} + +\PolyglossiaSetup{latex}{ + hyphennames={english}, + hyphenmins={2,3}, + langtag=ENG, + fontsetup=true, + % ignore command + DefineCommandsCmd={use_none:n} +} + +\def\captionslatex{% + \def\prefacename{Preface}% + \def\refname{References}% + \def\abstractname{Abstract}% + \def\bibname{Bibliography}% + \def\chaptername{Chapter}% + \def\appendixname{Appendix}% + \def\contentsname{Contents}% + \def\listfigurename{List of Figures}% + \def\listtablename{List of Tables}% + \def\indexname{Index}% + \def\figurename{Figure}% + \def\tablename{Table}% + \def\partname{Part}% + \def\enclname{encl}% + \def\ccname{cc}% + \def\headtoname{To}% + \def\pagename{Page}% + \def\seename{see}% + \def\alsoname{see also}% + \def\proofname{Proof}% +} + + +\endinput diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-polish.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-polish.ldf index 0649d087a92..d6305cf06ea 100644 --- a/Master/texmf-dist/tex/latex/polyglossia/gloss-polish.ldf +++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-polish.ldf @@ -1,4 +1,5 @@ \ProvidesFile{gloss-polish.ldf}[polyglossia: module for polish] + \PolyglossiaSetup{polish}{ bcp47=pl, hyphennames={polish}, @@ -11,6 +12,186 @@ % BCP-47 compliant aliases \setlanguagealias*{polish}{pl} +\ifluatex + \RequirePackage{luavlna} +\fi + +\define@boolkey{polish}[polish@]{babelshorthands}[true]{} + +\define@boolkey{polish}[polish@]{splithyphens}[true]{} + +\define@boolkey{polish}[polish@]{vlna}[true]{} + +% Register default options +\xpg@initialize@gloss@options{polish}{babelshorthands=false,splithyphens=true,vlna=true} + +\ifsystem@babelshorthands + \setkeys{polish}{babelshorthands=true} +\else + \setkeys{polish}{babelshorthands=false} +\fi + +\ifcsundef{initiate@active@char}{% + \input{babelsh.def}% + \initiate@active@char{"}% + \shorthandoff{"}% +}{} + +\def\polish@@splhyphen#1{% + \def\polish@sh@tmp{% + \if\polish@sh@next-#1% + \else\expandafter\polish@@@splhyphen{#1}\fi% + }% + \futurelet\polish@sh@next\polish@sh@tmp% +} + +\def\polish@@@splhyphen#1{% + \ifnum\hyphenchar \font>0% + \kern\z@\discretionary{-}{\char\hyphenchar\the\font}{#1}% + \nobreak\hskip\z@% + \else% + #1% + \fi% +} + +\def\polish@splhyphen{% + \polish@@splhyphen{-}% +} + +\def\polish@shorthands{% + \bbl@activate{"}% + \def\language@group{polish}% + \declare@shorthand{polish}{"=}{\polish@splhyphen}% + \declare@shorthand{polish}{""}{\hskip\z@skip}% + \declare@shorthand{polish}{"~}{\textormath{\leavevmode\hbox{-}}{-}}% + \declare@shorthand{polish}{"-}{\nobreak\-\bbl@allowhyphens}% + \declare@shorthand{polish}{"|}{% + \textormath{\penalty\@M\discretionary{-}{}{\kern.03em}% + \bbl@allowhyphens}{}% + }% + \declare@shorthand{polish}{"/}{\textormath + {\bbl@allowhyphens\discretionary{/}{}{/}\bbl@allowhyphens}{}}% + \declare@shorthand{polish}{"`}{„}% + \declare@shorthand{polish}{"'}{”}% + \declare@shorthand{polish}{"<}{«}% + \declare@shorthand{polish}{">}{»}% +} + +\def\nopolish@shorthands{% + \@ifundefined{initiate@active@char}{}{\bbl@deactivate{"}}% +} + +\ifxetex + % splithyphens + \newXeTeXintercharclass\polish@hyphen % - + % vlna + \newXeTeXintercharclass\polish@openpunctuation + \newXeTeXintercharclass\polish@nonsyllabicpreposition + \ifdefined\e@alloc@intercharclass@top + \chardef\polish@boundary=\e@alloc@intercharclass@top + \else + \ifdefined\XeTeXinterwordspaceshaping + \chardef\polish@boundary=4095 % + \def\newXeTeXintercharclass{% + \e@alloc\XeTeXcharclass\chardef + \xe@alloc@intercharclass\m@ne\@ucharclass@boundary}% + \else + \chardef\polish@boundary=255 + \fi + \fi +\fi + +\def\polish@hyphens{% + \ifluatex + \AfterPreamble{\enablesplithyphens{polish}}% + \else + \XeTeXinterchartokenstate=1 + \XeTeXcharclass `\- \polish@hyphen + \XeTeXinterchartoks \z@ \polish@hyphen = {\polish@@splhyphen}% "-" -> "\polish@@splhyphen-" + % necessary if used together with vlna: + \XeTeXinterchartoks \polish@nonsyllabicpreposition \polish@hyphen = {\polish@@splhyphen}% "-" -> "\polish@@splhyphen-" + \fi% +} + +\def\nopolish@hyphens{% + \ifluatex + \AfterPreamble{\disablesplithyphens{polish}}% + \else + \XeTeXcharclass `\- \z@ + \fi% +} + +% Add nonbreakable space after single-letter word to +% prevent them to land at the end of a line +% vlna code taken and adapted from xevlna.sty +\ifxetex + \def\polish@nointerchartoks{\let\polish@interchartoks\polish@PreCSpreposition}% + \def\polish@PreCSpreposition{% + \def\next{}% + \ifnum\catcode`\ =10 % nothing will be done in verbatim + \ifmmode % nothing in math + \else + \let\polish@interchartoks\polish@nointerchartoks + \let\next\polish@ExamineCSpreposition + \fi\fi + \next% + }% + \def\polish@ExamineCSpreposition #1{#1\futurelet\next\polish@ProcessCSpreposition}% + \def\polish@ProcessCSpreposition{\ifx\next\polish@XeTeXspace\nobreak\fi}% + \futurelet\polish@XeTeXspace{ }\polish@nointerchartoks +\fi + +\def\polish@vlna{% + \ifluatex + \singlechars{polish}{AaIiOoUuWwZz} + \preventsingleon + \else + % Code taken and adapted from xevlna.sty + \XeTeXinterchartokenstate=1 + \XeTeXcharclass `\( \polish@openpunctuation + \XeTeXcharclass `\[ \polish@openpunctuation + \XeTeXcharclass `\„ \polish@openpunctuation + \XeTeXcharclass `\« \polish@openpunctuation + \XeTeXcharclass `\W \polish@nonsyllabicpreposition + \XeTeXcharclass `\w \polish@nonsyllabicpreposition + \XeTeXcharclass `\Z \polish@nonsyllabicpreposition + \XeTeXcharclass `\z \polish@nonsyllabicpreposition + \XeTeXcharclass `\O \polish@nonsyllabicpreposition + \XeTeXcharclass `\o \polish@nonsyllabicpreposition + \XeTeXcharclass `\U \polish@nonsyllabicpreposition + \XeTeXcharclass `\u \polish@nonsyllabicpreposition + \XeTeXcharclass `\A \polish@nonsyllabicpreposition + \XeTeXcharclass `\a \polish@nonsyllabicpreposition + \XeTeXcharclass `\I \polish@nonsyllabicpreposition + \XeTeXcharclass `\i \polish@nonsyllabicpreposition + \XeTeXinterchartoks \polish@boundary \polish@nonsyllabicpreposition {\polish@interchartoks}% + \XeTeXinterchartoks \polish@openpunctuation \polish@nonsyllabicpreposition {\polish@interchartoks}% + \fi +} + +\def\nopolish@vlna{% + \ifluatex + \preventsingleoff + \else + \XeTeXcharclass`\(\z@ + \XeTeXcharclass`\[\z@ + \XeTeXcharclass`\„\z@ + \XeTeXcharclass`\«\z@ + \XeTeXcharclass`\W\z@ + \XeTeXcharclass`\w\z@ + \XeTeXcharclass`\Z\z@ + \XeTeXcharclass`\z\z@ + \XeTeXcharclass`\O\z@ + \XeTeXcharclass`\o\z@ + \XeTeXcharclass`\U\z@ + \XeTeXcharclass`\u\z@ + \XeTeXcharclass`\A\z@ + \XeTeXcharclass`\a\z@ + \XeTeXcharclass`\I\z@ + \XeTeXcharclass`\i\z@ + \fi +} + \def\captionspolish{% \def\prefacename{Przedmowa}% \def\refname{Literatura}% @@ -32,8 +213,8 @@ \def\seename{Zobacz}% \def\alsoname{Zobacz też}% \def\proofname{Dowód}% - \def\glossaryname{Glossary}% <-- Needs translation - } + \def\glossaryname{Słowniczek}% +} \def\datepolish{% \def\today{\number\day\space\ifcase\month\or @@ -41,6 +222,25 @@ lipca\or sierpnia\or września\or października\or listopada\or grudnia\fi\space \number\year}% - } +} + +\def\noextras@polish{% + \ifpolish@babelshorthands\nopolish@shorthands\fi% + \nopolish@hyphens% + \nopolish@vlna% + \ifxetex\XeTeXinterchartokenstate=0\fi% +} + +\def\blockextras@polish{% + \ifpolish@babelshorthands\polish@shorthands\else\nopolish@shorthands\fi% + \ifpolish@vlna\polish@vlna\else\nopolish@vlna\fi% + \ifpolish@splithyphens\polish@hyphens\else\nopolish@hyphens\fi% +} + +\def\inlineextras@polish{% + \ifpolish@babelshorthands\polish@shorthands\else\nopolish@shorthands\fi% + \ifpolish@vlna\polish@vlna\else\nopolish@vlna\fi% + \ifpolish@splithyphens\polish@hyphens\else\nopolish@hyphens\fi% +} \endinput diff --git a/Master/texmf-dist/tex/latex/polyglossia/polyglossia.sty b/Master/texmf-dist/tex/latex/polyglossia/polyglossia.sty index 87196b182f5..4108c599b68 100644 --- a/Master/texmf-dist/tex/latex/polyglossia/polyglossia.sty +++ b/Master/texmf-dist/tex/latex/polyglossia/polyglossia.sty @@ -1,5 +1,5 @@ \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{polyglossia}[2022/03/27 v1.54 +\ProvidesPackage{polyglossia}[2022/04/09 v1.55 Modern multilingual typesetting with XeLaTeX and LuaLaTeX] \RequirePackage{etoolbox} \RequirePackage{makecmds} |