diff options
Diffstat (limited to 'Master')
15 files changed, 318 insertions, 517 deletions
diff --git a/Master/texmf-dist/doc/latex/polyglossia/README b/Master/texmf-dist/doc/latex/polyglossia/README index 6282d0b25b5..58285f98c36 100644 --- a/Master/texmf-dist/doc/latex/polyglossia/README +++ b/Master/texmf-dist/doc/latex/polyglossia/README @@ -1,7 +1,7 @@ ¦----------------------------------------------¦ ¦ ¦ - ¦ THE POLYGLOSSIA PACKAGE v1.33.0 ¦ + ¦ THE POLYGLOSSIA PACKAGE v1.33.3 ¦ ¦ ¦ ¦ Modern multilingual typesetting ¦ ¦ with XeLaTeX and LuaLaTeX ¦ @@ -30,199 +30,9 @@ Polyglossia makes it possible to automate the following tasks: * Ensuring the proper directionality if the document contains languages written from right to left (via the package bidi, available separately). -Several features of Babel that do not make sense in the XeTeX world (like font -encodings, shorthands, etc) are not supported. For German however, several -shorthands do make sense and can be activated with the language option -babelshorthands=true. - -Polyglossia is distributed in the traditional way with *.dtx and *.ins files, -and also comes with a TDS-conformant ready-to-unpack zip file. - -To install from source (i.e. using polyglossia.dtx), run - xelatex polyglossia.dtx -which will generate all files and produce the pdf documentation all at once. -Alternatively if you have the file polyglossia.ins run - xetex polyglossia.ins -and follow the instructions displayed. - - BUGS -Users are encouraged to report bugs on the github tracker: -http://github.com/reutenauer/polyglossia/issues - - -CHANGES - -1.33.0 (20-05-2013) - * Added support for N’Ko. - * Bugfixes for LuaTeX - * More work in progress on Bidi in LuaTeX. - -1.32.0 (15-05-2013) - Transitional version to support right-to-left languages with LuaTeX. - -1.3 (11-05-2013) / 1.31 (10-05-2013) - * Several bugfixes. - * Sync with Babel 3.9. - * Consolidated support for LuaTeX for all languages but the ones using - South and South-East Asian scripts, and languages written from right - to left. Many thanks to Élie Roux for his help. - * Added support for Tibetan, contributed by Élie Roux (end of lines are experimental). - -1.30MM (06-08-2012) - * Added support for LuaTeX. Many languages don’t work yet. Please be - patient. - -1.2.0e (28-04-2012) - * Fixed a number of outstanding and not very interesting bugs. - * Added gloss files for Romansh and Friulan, contributed by Claudio - Beccari. +Polyglossia has no bug, of course. -1.2.0d (12-01-2012) - * Removed \makeatletter and \makeother from gloss files entirely. - -1.2.0cc (12-10-2011) [First update by Arthur Reutenauer] - * Update to gloss-italian.ldf by Claudio Beccari, incorporating changes - by Enrico Gregorio. - * Conclude every gloss file with \makeatother to match the initial - \makeatletter. (Not necessary from a technical point of vue, because of one of the changes by Enrico reported below, but I like it better that way :-) - * Conclude polyglossia.sty with \ExplSyntaxOff to match the initial - \ExplSyntaxOn. - * Added gloss file for Kannada, contributed by Aravinda VK and others. - * Corrections to the gloss-dutch.ldf thanks to Wouter Bolsterlee. - * Several patches by Enrico Gregorio, fixing long-standing bugs. - From the git log: - - Deleted setup for right-to-left writing direction, see http://tug.org/pipermail/xetex/2011-April/020319.html - - Changed three appearances of \newcommand to \newrobustcmd, as the commands needs to be protected. Bug reported by "kamensky". - - Corrected \datepolish as suggested by Piotr Kempa - - Changed \lccode" into \lccode\string", because it might come into action at wrong times when " is active - - Changed definition of key xpg@setup, as \@tmpfirst and \@tmpsecond were not expanded, causing dependence of \lefthyphenmin and \righthyphenmin to the last loaded language. Raised by Vadim Rodionov on the XeTeX mailing list. - - Deleted \bgroup and \egroup tokens from the definition of otherlanguage*; they serve no purpose (we are already inside an environment) and conflict with csquotes. Noticed by P. Lehman. - - Changed the calls of \input to \xpg@input, which inputs the required file and resets the catcode of @ to the same value as it had before the input. Since each .ldf file starts with \makeatletter, the old behaviour would leave a category 11 @, which is wrong. - - Added "\csuse{date#2}" to the definition of "otherlanguage*" - - -1.2.0b (03-10-2011) [Update by Philipp Stephani] - * Load xkeyval package explicitly since newer versions - of fontspec don't load it any more - -1.2.0a (27-07-2010) [Last update by François Charette] - * Initialize \fontfamily acc to value of \familydefault - (Fixes a bug when using polyglossia with beamer) - * Remove spurious space in def of \dateenglish - * Add missing English variant "american" - * Serbian: fix date format and captions (Latin+Cyrillic) - * Fix \atticnumeral in gloss-greek - * Small improvements and fixes in documentation - - -1.2.0 (15-07-2010) - * Adapted for fontspec 2.0 (will not work with earlier versions!) - * New implementation of a \PolyglossiaSetup interface - that simplifies writing gloss-*.ldf files - * Many internal enhancements and refactoring - (including a patch by Dirk Ulrich) - * Improved automatic font setup when \<lang>font is not defined - * New environment otherlanguage* (env. equivalent of \foreignlanguage - (Enrico Gregorio) - * Bugfix to prevent bogus expansion of \{rm,sf,tt}family even in aux files - (Enrico Gregorio) - * New gloss files for Armenian, Bengali, Occitan, Bengali, Lao, - Malayalam, Marathi, Tamil, Telugu, and Turkmen. - * New auxiliary packages 'devanagaridigits' and 'bengalidigits' - * hijrical no longer loads bidi and checks for incompatible l3calc - * Add Babel shorthands for Russian (based on a patch by Vladimir Lomov) - * Fix \fnum@{table,figure} for Lithuanian - * Various improvements in gloss-russian (provided by Vladimir Lomov and - others) - * Corrected captions for Bahasai, Lithuanian, Russian, Croatian - * Add option indentfirst=true for Spanish, Croation and other languages - (NB: indentfirst was previously named frenchindent) - * New option 'script' for German: Setting script=fraktur modifies the - captions for typesetting in Fraktur. - * New command \aemph for Arabic, Farsi, Urdu, etc. to mark emphasis through - overlining. - * Package option 'nolocalmarks' is now true by default: to activate it the - option 'localmarks' must be passed instead. - * Loading languages à la Babel as package options is no longer possible (this - feature was deprecated since v1.1.0). - -1.1.1 (23-03-2010) - * Bugfix for French: explicit spaces before/after double punctuation - signs ("Par exemple : les grands « espaces » du Canada ! ") are - now replaced by the appropriate non-breaking spaces, as in Babel. - * Bugfix for font switching mechanism within Latin script - (pending a complete re-implementation in v1.2): - the font shape and series are no longer reset when switching language. - * New macros for non-Western decimal digits - (instead of fontmappings) - * New gloss files for Asturian, Lithuanian and Urdu - * hijrical.sty is now locale-aware: \hijritoday is - formatted differently in Arabic, Farsi, Urdu, Turkish - and Bahasa Indonesia. ----NB: the above five items were not part of v1.1.1-rc1 which was made available on github--- - * Enable babelshorthands for Dutch - * Add missing macro \allowhyphens - * Add global option babelshorthands - * Support Catalan geminated l - * Bugfix when declaring more than one pkg option - * Protect \reset@font - * Add missing requirement makecmds - * Bugfix for smallcaps in captions - * Typo for ccname in Hebrew - * Add option numerals to gloss-russian - * Provide newXeTeXintercharclass when undefined - * Bugfix for Russian alph - * Remove superfluous level of {} in def of markright - * Bugfix for \datecatalan - * Change hyphenmins for Sanskrit - -1.1.0b - * Modify hyphenmins for Sanskrit (Yves Codet) - * Bugfixes for Serbian and Bulgarian (Enrico Gregorio) -1.1.0a - * Bugfix for interchar tokens -1.1.0 - * Use \newXeTeXintercharclass (thanks to Enrico Gregorio) - * Fixed implementation of shorthands for German (Babel code in file babelsh.def) - * Arabic (Khaled Hosny): - - Fix abjad form for 3 and 5 and add option abjadjimnotail - - bugfix for \arabicnumber - - make Gregorian calender the default - - fixed typos in the sample text - * Turkish (S. Ö. Yıldız): - - fix white-space before : and ! - - also check if the font specified TRK for language - - added missing Turkish translation of "Glossary" - * Suppress nopattern warning for non-hyphenated scripts - * Changed U+0163 to U+021B for Romanian (Elie Roux) - * Stylistic fixes and use macro \xpg@option for package options (E. Gregorio) - * Fix monthnames in Dutch (A. Ledda) - * Add Brazilian translation for "glossary" - * Remove spurious space generated by gloss-spanish - * Fix ldf file for brazilian - * Various improvements in the code communicated by E. Gregorio: - - remove superfluous \protect\language - - change default language from 0 to \l@nohyphenation=255 - - localize lccode handling of apostrophe in French; add it to Italian - * Fix frenchspacing for vietnamese - * Other minor bugfixes - -1.0.2 - This is mostly a bug fixes release. - * Captions corrected in Hebrew, Russian and Spanish - * Removed all \text<lang> wrappers within caption definitions - * Improved compatibility with Babel - * New option "babelshorthands" for German - * New option "Script" for Sanskrit - -1.0.1 - * Improved documentation (added sections on font setup and numeration mappings) - * Improvements and bugfixes for English and German - * Bugfix in gloss-syriac.ldf (spurious space after \textsyriac{...}) - * Extended the scope of \syriacabjad - * Added gloss-amharic.ldf (ported from ethiop.ldf in the package ethiop) - -1.0 - * Initial release on CTAN +Hum, sorry, wishful thinking. Please report any bugs, problems or requests on: +http://github.com/reutenauer/polyglossia/issues 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 22039ddf68a..20f010cfc36 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-thai.pdf b/Master/texmf-dist/doc/latex/polyglossia/example-thai.pdf Binary files differindex f58867b31f1..3bc9ce3ca12 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 93f570d252a..430c11454c4 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/examples.tex b/Master/texmf-dist/doc/latex/polyglossia/examples.tex index ee3381face1..31a756487c4 100644 --- a/Master/texmf-dist/doc/latex/polyglossia/examples.tex +++ b/Master/texmf-dist/doc/latex/polyglossia/examples.tex @@ -9,7 +9,7 @@ \setotherlanguage[numerals=thai]{thai} \setotherlanguage[locale=mashriq]{arabic} \setotherlanguage[spelling=new,latesthyphen=true,babelshorthands=true]{german} -\setotherlanguages{latin,russian,turkish,polish,latvian,sanskrit,ukrainian,farsi,syriac,divehi,hebrew,amharic} +\setotherlanguages{latin,russian,turkish,polish,latvian,sanskrit,ukrainian,farsi,syriac,divehi,hebrew,amharic,nko} \setotherlanguage[calendar=gregorian,numerals=western]{urdu} \setmainfont{Linux Libertine O} \defaultfontfeatures{Scale=MatchLowercase} @@ -21,6 +21,7 @@ \newfontfamily\thaifont[Script=Thai]{Norasi} \newfontfamily\thaanafont[Script=Thaana,WordSpace=2]{FreeSerif} \newfontfamily\ethiopicfont[Script=Ethiopic]{Abyssinica SIL} +\newfontfamily\nkofont[Renderer=Graphite]{Conakry} \parskip 1.33\baselineskip %\newcommand\showhyphmin{\fbox{\the\lefthyphenmin\ \the\righthyphenmin}} \begin{document} @@ -134,4 +135,10 @@ Quamquam sermone nativo fungi desinit, cumque nostris diebus perpauci Latine loq (\today) \end{amharic} +\begin{nko} +ߒߞߏ ߦߋ߫ ߛߓߍߟߌߞߊ߲ߞߋ ߟߋ߬ ߘߌ߫ ߝߘߊ߬ߝߌ߲߬ߠߊ߫ ߕߟߋ߬ߓߋ ߘߐ߫ ߡߊ߲߬ߘߋ߲߬ ߡߌߙߌ߲ߘߌ ߞߊ߲ ߞߊߡߊ߬߸ ߊ߬ ߣߴߊ߬ ߡߟߋߞߎߦߊߞߊ߲ ߕߐ߮ ߟߋ߬. ߞߊ߬ߕߎ߲߯ ߸ ߊ߬ ߞߘߐ ߟߋ߬ ߡߊ߲߬ߘߋ߲߫ ߝߘߏ߬ߓߊ߬ߞߊ߲ ߓߏߟߏ߲ ߓߍ߯ ߘߐ߫ ߞߏ߫: ߒ ߞߊ߲߫ ߠߋ߬ ߞߏ߫. ߝߣߊ߫߸ ߊ߬ ߦߋ߫ ߟߊߓߊ߯ߙߟߊ߫ ߟߊ߫ ߖߡߊ߬ߣߊ ߢߌ߲߬ ߠߎ߫ ߟߋ߬ ߘߐ߫ ߓߊߞߍ߭: ߖߌ߬ߣߍ߫، ߜߋ߲ߞߐ߰ߖߌ߬ߘߊ، ߊ߬ ߣߌ߫ ߡߊߟߌ߫. +\\ +(\today) +\end{nko} + \end{document} diff --git a/Master/texmf-dist/doc/latex/polyglossia/polyglossia.pdf b/Master/texmf-dist/doc/latex/polyglossia/polyglossia.pdf Binary files differindex c8f85f50b20..72f051b649f 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 261743604c6..5305003ae3e 100644 --- a/Master/texmf-dist/doc/latex/polyglossia/polyglossia.tex +++ b/Master/texmf-dist/doc/latex/polyglossia/polyglossia.tex @@ -237,22 +237,25 @@ that are explained in section \ref{specific} below. %vietnamese %welsh %%%%% private note: the following table was automatically generated with "maketabular.pl 5 < above_input" +% Note above from François. Note from self: the table was then +% painstakingly edited by hand because I failed to see the note above :-P -- Arthur \begin{tabular}{lllll} \hline -albanian & croatian & \TX{hebrew} & norsk & swedish \\ -amharic & czech & \TX{hindi} & nynorsk & \TX{syriac} \\ -\TX{arabic} & danish & icelandic & occitan & tamil \\ -armenian & divehi & interlingua & polish & telugu \\ -asturian & \TX{dutch} & irish & portuges & tibetan \\ -bahasai & \TX{english} & \TX{italian} & romanian & \TX{thai} \\ -bahasam & \TX{esperanto} & \TX{lao} & \TX{russian} & turkish \\ -basque & estonian & latin & samin & turkmen \\ -\TX{bengali} & \TX{farsi} & latvian & \TX{sanskrit}& ukrainian \\ -brazil[ian] & finnish & lithuanian & scottish & urdu \\ -breton & french & \TX{lsorbian} & \TX{serbian} & \TX{usorbian} \\ -bulgarian & galician & \TX{magyar} & slovak & vietnamese \\ -\TX{catalan} & \TX{german} & malayalam & slovenian & welsh \\ -coptic & \TX{greek} & marathi & spanish & \\ +albanian & czech & \TX{hindi} & norsk & spanish \\ +amharic & danish & icelandic & nynorsk & swedish \\ +\TX{arabic} & divehi & interlingua & occitan & \TX{syriac} \\ +armenian & \TX{dutch} & irish & piedmontese & tamil \\ +asturian & \TX{english} & \TX{italian} & polish & telugu \\ +bahasai & \TX{esperanto} & kannada & portuges & tibetan \\ +bahasam & estonian & \TX{lao} & romanian & \TX{thai} \\ +basque & \TX{farsi} & latin & romansh & turkish \\ +\TX{bengali} & finnish & latvian & \TX{russian} & turkmen \\ +brazil[ian] & french & lithuanian & samin & ukrainian \\ +breton & friulan & \TX{lsorbian} & \TX{sanskrit}& urdu \\ +bulgarian & galician & \TX{magyar} & scottish & \TX{usorbian} \\ +\TX{catalan} & \TX{german} & malayalam & \TX{serbian} & vietnamese \\ +coptic & \TX{greek} & marathi & slovak & welsh \\ +croatian & \TX{hebrew} & nko & slovenian & \\ \hline \end{tabular} \caption{Languages currently supported in \pkg{polyglossia}} @@ -278,7 +281,7 @@ languages for details. Another option (turned off by default) is ‘localmarks’, which redefines the internal \LaTeX\ macros \cmd\markboth\ and \cmd\markright. -\new{v1.2.0}Note that this was formerly turned on by default, but ẃe +\new{v1.2.0}Note that this was formerly turned on by default, but we now realize that it causes more problems than otherwise. For backwards-compatibility the opposite option ‘nolocalmarks’ is still available. @@ -584,6 +587,13 @@ The default value of each option is given in italic. \item \TB{spelling} = \textit{modern} or old (for captions and date only, not for hyphenation) \end{itemize} +\textbf{Commands}: + \begin{itemize} + \item \Cmd\Asbuk: produces the uppercase Russian alphabet, for + environments such as ¦enumerate¦ + \item \Cmd\asbuk: same in lowercase + \end{itemize} + \subsection{sanskrit}\label{sanskrit} \textbf{Options}: \begin{itemize} diff --git a/Master/texmf-dist/source/latex/polyglossia/polyglossia.dtx b/Master/texmf-dist/source/latex/polyglossia/polyglossia.dtx index 4800ec29d70..fa59bcd6be6 100644 --- a/Master/texmf-dist/source/latex/polyglossia/polyglossia.dtx +++ b/Master/texmf-dist/source/latex/polyglossia/polyglossia.dtx @@ -11,7 +11,7 @@ ¦----------------------------------------------¦ ¦ ¦ - ¦ THE POLYGLOSSIA PACKAGE v1.33.0 ¦ + ¦ THE POLYGLOSSIA PACKAGE v1.33.3 ¦ ¦ ¦ ¦ Modern multilingual typesetting ¦ ¦ with XeLaTeX and LuaLaTeX ¦ @@ -40,202 +40,12 @@ Polyglossia makes it possible to automate the following tasks: * Ensuring the proper directionality if the document contains languages written from right to left (via the package bidi, available separately). -Several features of Babel that do not make sense in the XeTeX world (like font -encodings, shorthands, etc) are not supported. For German however, several -shorthands do make sense and can be activated with the language option -babelshorthands=true. - -Polyglossia is distributed in the traditional way with *.dtx and *.ins files, -and also comes with a TDS-conformant ready-to-unpack zip file. - -To install from source (i.e. using polyglossia.dtx), run - xelatex polyglossia.dtx -which will generate all files and produce the pdf documentation all at once. -Alternatively if you have the file polyglossia.ins run - xetex polyglossia.ins -and follow the instructions displayed. - - BUGS -Users are encouraged to report bugs on the github tracker: -http://github.com/reutenauer/polyglossia/issues - - -CHANGES - -1.33.0 (20-05-2013) - * Added support for N’Ko. - * Bugfixes for LuaTeX - * More work in progress on Bidi in LuaTeX. - -1.32.0 (15-05-2013) - Transitional version to support right-to-left languages with LuaTeX. - -1.3 (11-05-2013) / 1.31 (10-05-2013) - * Several bugfixes. - * Sync with Babel 3.9. - * Consolidated support for LuaTeX for all languages but the ones using - South and South-East Asian scripts, and languages written from right - to left. Many thanks to Élie Roux for his help. - * Added support for Tibetan, contributed by Élie Roux (end of lines are experimental). - -1.30MM (06-08-2012) - * Added support for LuaTeX. Many languages don’t work yet. Please be - patient. - -1.2.0e (28-04-2012) - * Fixed a number of outstanding and not very interesting bugs. - * Added gloss files for Romansh and Friulan, contributed by Claudio - Beccari. - -1.2.0d (12-01-2012) - * Removed \makeatletter and \makeother from gloss files entirely. - -1.2.0cc (12-10-2011) [First update by Arthur Reutenauer] - * Update to gloss-italian.ldf by Claudio Beccari, incorporating changes - by Enrico Gregorio. - * Conclude every gloss file with \makeatother to match the initial - \makeatletter. (Not necessary from a technical point of vue, because of one of the changes by Enrico reported below, but I like it better that way :-) - * Conclude polyglossia.sty with \ExplSyntaxOff to match the initial - \ExplSyntaxOn. - * Added gloss file for Kannada, contributed by Aravinda VK and others. - * Corrections to the gloss-dutch.ldf thanks to Wouter Bolsterlee. - * Several patches by Enrico Gregorio, fixing long-standing bugs. - From the git log: - - Deleted setup for right-to-left writing direction, see http://tug.org/pipermail/xetex/2011-April/020319.html - - Changed three appearances of \newcommand to \newrobustcmd, as the commands needs to be protected. Bug reported by "kamensky". - - Corrected \datepolish as suggested by Piotr Kempa - - Changed \lccode" into \lccode\string", because it might come into action at wrong times when " is active - - Changed definition of key xpg@setup, as \@tmpfirst and \@tmpsecond were not expanded, causing dependence of \lefthyphenmin and \righthyphenmin to the last loaded language. Raised by Vadim Rodionov on the XeTeX mailing list. - - Deleted \bgroup and \egroup tokens from the definition of otherlanguage*; they serve no purpose (we are already inside an environment) and conflict with csquotes. Noticed by P. Lehman. - - Changed the calls of \input to \xpg@input, which inputs the required file and resets the catcode of @ to the same value as it had before the input. Since each .ldf file starts with \makeatletter, the old behaviour would leave a category 11 @, which is wrong. - - Added "\csuse{date#2}" to the definition of "otherlanguage*" - +Polyglossia has no bug, of course. -1.2.0b (03-10-2011) [Update by Philipp Stephani] - * Load xkeyval package explicitly since newer versions - of fontspec don't load it any more - -1.2.0a (27-07-2010) [Last update by François Charette] - * Initialize \fontfamily acc to value of \familydefault - (Fixes a bug when using polyglossia with beamer) - * Remove spurious space in def of \dateenglish - * Add missing English variant "american" - * Serbian: fix date format and captions (Latin+Cyrillic) - * Fix \atticnumeral in gloss-greek - * Small improvements and fixes in documentation - - -1.2.0 (15-07-2010) - * Adapted for fontspec 2.0 (will not work with earlier versions!) - * New implementation of a \PolyglossiaSetup interface - that simplifies writing gloss-*.ldf files - * Many internal enhancements and refactoring - (including a patch by Dirk Ulrich) - * Improved automatic font setup when \<lang>font is not defined - * New environment otherlanguage* (env. equivalent of \foreignlanguage - (Enrico Gregorio) - * Bugfix to prevent bogus expansion of \{rm,sf,tt}family even in aux files - (Enrico Gregorio) - * New gloss files for Armenian, Bengali, Occitan, Bengali, Lao, - Malayalam, Marathi, Tamil, Telugu, and Turkmen. - * New auxiliary packages 'devanagaridigits' and 'bengalidigits' - * hijrical no longer loads bidi and checks for incompatible l3calc - * Add Babel shorthands for Russian (based on a patch by Vladimir Lomov) - * Fix \fnum@{table,figure} for Lithuanian - * Various improvements in gloss-russian (provided by Vladimir Lomov and - others) - * Corrected captions for Bahasai, Lithuanian, Russian, Croatian - * Add option indentfirst=true for Spanish, Croation and other languages - (NB: indentfirst was previously named frenchindent) - * New option 'script' for German: Setting script=fraktur modifies the - captions for typesetting in Fraktur. - * New command \aemph for Arabic, Farsi, Urdu, etc. to mark emphasis through - overlining. - * Package option 'nolocalmarks' is now true by default: to activate it the - option 'localmarks' must be passed instead. - * Loading languages à la Babel as package options is no longer possible (this - feature was deprecated since v1.1.0). - -1.1.1 (23-03-2010) - * Bugfix for French: explicit spaces before/after double punctuation - signs ("Par exemple : les grands « espaces » du Canada ! ") are - now replaced by the appropriate non-breaking spaces, as in Babel. - * Bugfix for font switching mechanism within Latin script - (pending a complete re-implementation in v1.2): - the font shape and series are no longer reset when switching language. - * New macros for non-Western decimal digits - (instead of fontmappings) - * New gloss files for Asturian, Lithuanian and Urdu - * hijrical.sty is now locale-aware: \hijritoday is - formatted differently in Arabic, Farsi, Urdu, Turkish - and Bahasa Indonesia. ----NB: the above five items were not part of v1.1.1-rc1 which was made available on github--- - * Enable babelshorthands for Dutch - * Add missing macro \allowhyphens - * Add global option babelshorthands - * Support Catalan geminated l - * Bugfix when declaring more than one pkg option - * Protect \reset@font - * Add missing requirement makecmds - * Bugfix for smallcaps in captions - * Typo for ccname in Hebrew - * Add option numerals to gloss-russian - * Provide newXeTeXintercharclass when undefined - * Bugfix for Russian alph - * Remove superfluous level of {} in def of markright - * Bugfix for \datecatalan - * Change hyphenmins for Sanskrit - -1.1.0b - * Modify hyphenmins for Sanskrit (Yves Codet) - * Bugfixes for Serbian and Bulgarian (Enrico Gregorio) -1.1.0a - * Bugfix for interchar tokens -1.1.0 - * Use \newXeTeXintercharclass (thanks to Enrico Gregorio) - * Fixed implementation of shorthands for German (Babel code in file babelsh.def) - * Arabic (Khaled Hosny): - - Fix abjad form for 3 and 5 and add option abjadjimnotail - - bugfix for \arabicnumber - - make Gregorian calender the default - - fixed typos in the sample text - * Turkish (S. Ö. Yıldız): - - fix white-space before : and ! - - also check if the font specified TRK for language - - added missing Turkish translation of "Glossary" - * Suppress nopattern warning for non-hyphenated scripts - * Changed U+0163 to U+021B for Romanian (Elie Roux) - * Stylistic fixes and use macro \xpg@option for package options (E. Gregorio) - * Fix monthnames in Dutch (A. Ledda) - * Add Brazilian translation for "glossary" - * Remove spurious space generated by gloss-spanish - * Fix ldf file for brazilian - * Various improvements in the code communicated by E. Gregorio: - - remove superfluous \protect\language - - change default language from 0 to \l@nohyphenation=255 - - localize lccode handling of apostrophe in French; add it to Italian - * Fix frenchspacing for vietnamese - * Other minor bugfixes - -1.0.2 - This is mostly a bug fixes release. - * Captions corrected in Hebrew, Russian and Spanish - * Removed all \text<lang> wrappers within caption definitions - * Improved compatibility with Babel - * New option "babelshorthands" for German - * New option "Script" for Sanskrit - -1.0.1 - * Improved documentation (added sections on font setup and numeration mappings) - * Improvements and bugfixes for English and German - * Bugfix in gloss-syriac.ldf (spurious space after \textsyriac{...}) - * Extended the scope of \syriacabjad - * Added gloss-amharic.ldf (ported from ethiop.ldf in the package ethiop) - -1.0 - * Initial release on CTAN +Hum, sorry, wishful thinking. Please report any bugs, problems or requests on: +http://github.com/reutenauer/polyglossia/issues %</README> %<*internal> \fi @@ -253,7 +63,7 @@ CHANGES The polyglossia package (C) 2008–2010 François Charette - (C) 2010-2013 Arthur Reutenauer + (C) 2011-2013 Arthur Reutenauer (C) 2013 Elie Roux License information appended @@ -368,7 +178,8 @@ CHANGES %<*internal> \generate{\file{polyglossia.ins}{\from{polyglossia.dtx}{batchfile}}} \nopreamble\nopostamble -\generate{\file{README}{\from{polyglossia.dtx}{README}}} +\generate{\file{../README}{\from{polyglossia.dtx}{../README}}} +\generate{\file{Changelog}{\from{polyglossia.dtx}{Changelog}}} \generate{\file{examples.tex}{\from{polyglossia.dtx}{examples.tex}}} \generate{\file{example-arabic.tex}{\from{polyglossia.dtx}{example-arabic.tex}}} \generate{\file{example-thai.tex}{\from{polyglossia.dtx}{example-thai.tex}}} @@ -626,22 +437,25 @@ CHANGES % ^^Avietnamese % ^^Awelsh % ^^A private note: the following table was automatically generated with "maketabular.pl 5 < above_input" +% ^^A Note above from François. Note from self: the table was then +% ^^A painstakingly edited by hand because I failed to see the note above :-P -- Arthur % \begin{tabular}{lllll} % \hline -% albanian & croatian & \TX{hebrew} & norsk & swedish \\ -% amharic & czech & \TX{hindi} & nynorsk & \TX{syriac} \\ -% \TX{arabic} & danish & icelandic & occitan & tamil \\ -% armenian & divehi & interlingua & polish & telugu \\ -% asturian & \TX{dutch} & irish & portuges & tibetan \\ -% bahasai & \TX{english} & \TX{italian} & romanian & \TX{thai} \\ -% bahasam & \TX{esperanto} & \TX{lao} & \TX{russian} & turkish \\ -% basque & estonian & latin & samin & turkmen \\ -% \TX{bengali} & \TX{farsi} & latvian & \TX{sanskrit}& ukrainian \\ -% brazil[ian] & finnish & lithuanian & scottish & urdu \\ -% breton & french & \TX{lsorbian} & \TX{serbian} & \TX{usorbian} \\ -% bulgarian & galician & \TX{magyar} & slovak & vietnamese \\ -% \TX{catalan} & \TX{german} & malayalam & slovenian & welsh \\ -% coptic & \TX{greek} & marathi & spanish & \\ +% albanian & czech & \TX{hindi} & norsk & spanish \\ +% amharic & danish & icelandic & nynorsk & swedish \\ +% \TX{arabic} & divehi & interlingua & occitan & \TX{syriac} \\ +% armenian & \TX{dutch} & irish & piedmontese & tamil \\ +% asturian & \TX{english} & \TX{italian} & polish & telugu \\ +% bahasai & \TX{esperanto} & kannada & portuges & tibetan \\ +% bahasam & estonian & \TX{lao} & romanian & \TX{thai} \\ +% basque & \TX{farsi} & latin & romansh & turkish \\ +% \TX{bengali} & finnish & latvian & \TX{russian} & turkmen \\ +% brazil[ian] & french & lithuanian & samin & ukrainian \\ +% breton & friulan & \TX{lsorbian} & \TX{sanskrit}& urdu \\ +% bulgarian & galician & \TX{magyar} & scottish & \TX{usorbian} \\ +% \TX{catalan} & \TX{german} & malayalam & \TX{serbian} & vietnamese \\ +% coptic & \TX{greek} & marathi & slovak & welsh \\ +% croatian & \TX{hebrew} & nko & slovenian & \\ % \hline % \end{tabular} % \caption{Languages currently supported in \pkg{polyglossia}} @@ -667,7 +481,7 @@ CHANGES % % Another option (turned off by default) is ‘localmarks’, which % redefines the internal \LaTeX\ macros \cmd\markboth\ and \cmd\markright. -% \new{v1.2.0}Note that this was formerly turned on by default, but ẃe +% \new{v1.2.0}Note that this was formerly turned on by default, but we % now realize that it causes more problems than otherwise. For backwards-compatibility % the opposite option ‘nolocalmarks’ is still available. % @@ -973,6 +787,13 @@ CHANGES % \item \TB{spelling} = \textit{modern} or old (for captions and date only, not for hyphenation) % \end{itemize} % +% \textbf{Commands}: +% \begin{itemize} +% \item \Cmd\Asbuk: produces the uppercase Russian alphabet, for +% environments such as ¦enumerate¦ +% \item \Cmd\asbuk: same in lowercase +% \end{itemize} +% % \subsection{sanskrit}\label{sanskrit} % \textbf{Options}: % \begin{itemize} @@ -2757,7 +2578,7 @@ and may look very wrong.} %% we need to handle it differently \define@key{english}{variant}{% %needs to be reset for loop over hyphennames below: - \renewcommand*{\do}[1]{% + \def\do##1{% \ifcsdef{l@#1}% {\csletcs{l@english}{l@#1}\listbreak}% {}% @@ -2801,7 +2622,7 @@ and may look very wrong.} \gdef\english@language{\language=\l@ukenglish\xpg@set@language@luatex@ii{ukenglish}}% \fi % and we reset \do to its previous definition here: - \renewcommand*{\do}[1]{\setotherlanguage{#1}}% + \def\do##1{\setotherlanguage{#1}}% } \def\captionsenglish{% @@ -5231,20 +5052,42 @@ and may look very wrong.} % The word "ߕߟߋ߬" is mandatory between month name and day number. \def\datenko{% - \def\today{\nkonumber{\day}\space ߕߟߋ߬\space\ifcase\month\or -ߓߌ߲ߠߊߥߎߟߋ߲\or -ߞߏ߲ߞߏߜߍ\or -ߕߙߊߓߊ\or -ߞߏ߲ߞߏߘߌ߬ߓߌ\or -ߘߓߊ߬ߕߊ\or -ߥߊ߬ߛߌߥߊ߬ߙߊ\or -ߞߊ߬ߙߌߝߐ߭\or -ߘߓߊ߬ߓߌߟߊ\or -ߕߎߟߊߝߌ߲\or -ߞߏ߲ߓߌߕߌ߮\or -ߣߍߣߍߓߊ\or -ߞߏ߬ߟߌ߲߬ߞߏߟߌ߲\fi -\space\nkonumber{\year} + \def\today{% + \nkonumber{\year}\space + \ifcase\month + \orߓߌ߲ߠߊߥߎߟߋ߲% + \orߞߏ߲ߞߏߜߍ% + \orߕߙߊߓߊ + \orߞߏ߲ߞߏߘߌ߬ߓߌ% + \orߘߓߊ߬ߕߊ% + \orߥߊ߬ߛߌߥߊ߬ߙߊ% + \orߞߊ߬ߙߌߝߐ߭% + \orߘߓߊ߬ߓߌߟߊ% + \orߕߎߟߊߝߌ߲% + \orߞߏ߲ߓߌߕߌ߮% + \orߣߍߣߍߓߊ% + \orߞߏ߬ߟߌ߲߬ߞߏߟߌ߲\fi + \spaceߕߟߋ߬ + \space\nkonumber{\day} + }% + + \def\today{% + \nkonumber{\year}\space + \ifcase\month + \or ߓߌ߲ߠߊߥߎߟߋ߲% + \or ߞߏ߲ߞߏߜߍ% + \or ߕߙߊߓߊ% + \or ߞߏ߲ߞߏߘߌ߬ߓߌ% + \or ߘߓߊ߬ߕߊ% + \or ߥߊ߬ߛߌߥߊ߬ߙߊ% + \or ߞߊ߬ߙߌߝߐ߭% + \or ߘߓߊ߬ߓߌߟߊ% + \or ߕߎߟߊߝߌ߲% + \or ߞߏ߲ߓߌߕߌ߮% + \or ߣߍߣߍߓߊ% + \or ߞߏ߬ߟߌ߲߬ߞߏߟߌ߲\fi + \space ߕߟߋ߬ + \space\nkonumber{\day} }% }% @@ -7855,22 +7698,35 @@ local next, type = next, type local nodes, fonts, node = nodes, fonts, node +local nodecodes = nodes.nodecodes + local insert_node_before = node.insert_before local insert_node_after = node.insert_after local remove_node = nodes.remove -local end_of_math = node.end_of_math local has_attribute = node.has_attribute local node_copy = node.copy +local new_node = node.new --- node types as of April 2013 -local glue_code = 10 -local glue_spec_code= 47 -local glyph_code = 37 -local penalty_code = 12 -local kern_code = 11 +local end_of_math = node.end_of_math +if not end_of_math then -- luatex < .76 + local traverse_nodes = node.traverse_id + local math_code = nodecodes.math + local end_of_math = function (n) + for n in traverse_nodes(math_code, n.next) do + return n + end + end +end + +-- node types according to node.types() +local glue_code = nodecodes.glue +local glue_spec_code = nodecodes.glue_spec +local glyph_code = nodecodes.glyph +local penalty_code = nodecodes.penalty +local kern_code = nodecodes.kern -- we make a new node, so that we can copy it later on -local penalty_node = node.new(penalty_code) +local penalty_node = new_node(penalty_code) penalty_node.penalty = 10000 local function get_penalty_node() @@ -7878,7 +7734,7 @@ local function get_penalty_node() end -- same for glue node -local kern_node = node.new(kern_code) +local kern_node = new_node(kern_code) local function get_kern_node(dim) local n = node_copy(kern_node) @@ -8073,14 +7929,24 @@ local next, type = next, type local nodes, fonts, node = nodes, fonts, node +local nodecodes = nodes.nodecodes --- <= preloaded node.types() + local insert_node_before = node.insert_before local insert_node_after = node.insert_after local remove_node = nodes.remove local copy_node = node.copy -local end_of_math = node.end_of_math local has_attribute = node.has_attribute -local nodecodes = nodes.nodecodes --- <= preloaded node.types() +local end_of_math = node.end_of_math +if not end_of_math then -- luatex < .76 + local traverse_nodes = node.traverse_id + local math_code = nodecodes.math + local end_of_math = function (n) + for n in traverse_nodes(math_code, n.next) do + return n + end + end +end -- node types as of April 2013 local glyph_code = nodecodes.glyph @@ -8089,7 +7955,7 @@ local kern_code = nodecodes.kern -- we make a new node, so that we can copy it later on local penalty_node = node.new(penalty_code) -penalty_node.penalty = -2000 -- rather arbitrary... if someone has a better idea...? +penalty_node.penalty = 50 -- corresponds to the penalty LaTeX sets at explicit hyphens local function get_penalty_node() return copy_node(penalty_node) @@ -8173,6 +8039,7 @@ polyglossia = polyglossia or {} local polyglossia = polyglossia local current_language +local last_language local default_language local function loadlang(lang, id) @@ -8183,13 +8050,26 @@ end local function select_language(lang, id) loadlang(lang, id) - polyglossia.current_language = lang + current_language = lang + last_language = lang end local function set_default_language(lang, id) polyglossia.default_language = lang end +local function falsefun() + return false +end + +local function disable_hyphenation() + luatexbase.add_to_callback("hyphenate", falsefun, "polyglossia.disable_hyphenation") +end + +local function enable_hyphenation() + luatexbase.remove_from_callback("hyphenate", "polyglossia.disable_hyphenation") +end + local check_char if luaotfload and luaotfload.aux and luaotfload.aux.font_has_glyph then @@ -8233,6 +8113,8 @@ polyglossia.default_language = default_language polyglossia.check_char = check_char polyglossia.load_frpt = load_frpt polyglossia.load_tibt_eol = load_tibt_eol +polyglossia.disable_hyphenation = disable_hyphenation +polyglossia.enable_hyphenation = enable_hyphenation % \end{macrocode} % \iffalse %</polyglossia.lua> @@ -8242,11 +8124,11 @@ polyglossia.load_tibt_eol = load_tibt_eol % \Finale % % \iffalse -%<*README> +%<*../README> ¦----------------------------------------------¦ ¦ ¦ - ¦ THE POLYGLOSSIA PACKAGE v1.33.0 ¦ + ¦ THE POLYGLOSSIA PACKAGE v1.33.3 ¦ ¦ ¦ ¦ Modern multilingual typesetting ¦ ¦ with XeLaTeX and LuaLaTeX ¦ @@ -8275,29 +8157,28 @@ Polyglossia makes it possible to automate the following tasks: * Ensuring the proper directionality if the document contains languages written from right to left (via the package bidi, available separately). -Several features of Babel that do not make sense in the XeTeX world (like font -encodings, shorthands, etc) are not supported. For German however, several -shorthands do make sense and can be activated with the language option -babelshorthands=true. - -Polyglossia is distributed in the traditional way with *.dtx and *.ins files, -and also comes with a TDS-conformant ready-to-unpack zip file. - -To install from source (i.e. using polyglossia.dtx), run - xelatex polyglossia.dtx -which will generate all files and produce the pdf documentation all at once. -Alternatively if you have the file polyglossia.ins run - xetex polyglossia.ins -and follow the instructions displayed. - - BUGS -Users are encouraged to report bugs on the github tracker: -http://github.com/reutenauer/polyglossia/issues - +Polyglossia has no bug, of course. -CHANGES +Hum, sorry, wishful thinking. Please report any bugs, problems or requests on: +http://github.com/reutenauer/polyglossia/issues +%</../README> +%<*Changelog> +1.33.3 (28-05-2013) + * Changed formatting of some error messages (emergency fixes for TeX Live 2013) + +1.33.2 (26-05-2013) + * Added \disablehyphenation and \enablehyphenation, contributed by + Élie Roux. + * Fixed bug related to package inclusion. Polyglossia would break if + we loaded breqn.sty, and then called \setmainlanguage{english}, this + is no longer the case. + * Removed spurious space introduced by \captionswedish. + +1.33.1 (23-05-2013) + * Editorial changes to the documentation + * Hunted and documented bugs 1.33.0 (20-05-2013) * Added support for N’Ko. @@ -8307,7 +8188,7 @@ CHANGES 1.32.0 (15-05-2013) Transitional version to support right-to-left languages with LuaTeX. -1.3 (11-05-2013) / 1.31 (10-05-2013) +1.31 (10-05-2013) / 1.3 (11-05-2013) * Several bugfixes. * Sync with Babel 3.9. * Consolidated support for LuaTeX for all languages but the ones using @@ -8471,7 +8352,7 @@ CHANGES 1.0 * Initial release on CTAN -%</README> +%</Changelog> %<*examples.tex> \documentclass[a4paper]{article} \usepackage[no-math]{fontspec} @@ -8484,7 +8365,7 @@ CHANGES \setotherlanguage[numerals=thai]{thai} \setotherlanguage[locale=mashriq]{arabic} \setotherlanguage[spelling=new,latesthyphen=true,babelshorthands=true]{german} -\setotherlanguages{latin,russian,turkish,polish,latvian,sanskrit,ukrainian,farsi,syriac,divehi,hebrew,amharic} +\setotherlanguages{latin,russian,turkish,polish,latvian,sanskrit,ukrainian,farsi,syriac,divehi,hebrew,amharic,nko} \setotherlanguage[calendar=gregorian,numerals=western]{urdu} \setmainfont{Linux Libertine O} \defaultfontfeatures{Scale=MatchLowercase} @@ -8496,6 +8377,7 @@ CHANGES \newfontfamily\thaifont[Script=Thai]{Norasi} \newfontfamily\thaanafont[Script=Thaana,WordSpace=2]{FreeSerif} \newfontfamily\ethiopicfont[Script=Ethiopic]{Abyssinica SIL} +\newfontfamily\nkofont[Renderer=Graphite]{Conakry} \parskip 1.33\baselineskip %\newcommand\showhyphmin{\fbox{\the\lefthyphenmin\ \the\righthyphenmin}} \begin{document} @@ -8609,6 +8491,12 @@ Quamquam sermone nativo fungi desinit, cumque nostris diebus perpauci Latine loq (\today) \end{amharic} +\begin{nko} +ߒߞߏ ߦߋ߫ ߛߓߍߟߌߞߊ߲ߞߋ ߟߋ߬ ߘߌ߫ ߝߘߊ߬ߝߌ߲߬ߠߊ߫ ߕߟߋ߬ߓߋ ߘߐ߫ ߡߊ߲߬ߘߋ߲߬ ߡߌߙߌ߲ߘߌ ߞߊ߲ ߞߊߡߊ߬߸ ߊ߬ ߣߴߊ߬ ߡߟߋߞߎߦߊߞߊ߲ ߕߐ߮ ߟߋ߬. ߞߊ߬ߕߎ߲߯ ߸ ߊ߬ ߞߘߐ ߟߋ߬ ߡߊ߲߬ߘߋ߲߫ ߝߘߏ߬ߓߊ߬ߞߊ߲ ߓߏߟߏ߲ ߓߍ߯ ߘߐ߫ ߞߏ߫: ߒ ߞߊ߲߫ ߠߋ߬ ߞߏ߫. ߝߣߊ߫߸ ߊ߬ ߦߋ߫ ߟߊߓߊ߯ߙߟߊ߫ ߟߊ߫ ߖߡߊ߬ߣߊ ߢߌ߲߬ ߠߎ߫ ߟߋ߬ ߘߐ߫ ߓߊߞߍ߭: ߖߌ߬ߣߍ߫، ߜߋ߲ߞߐ߰ߖߌ߬ߘߊ، ߊ߬ ߣߌ߫ ߡߊߟߌ߫. +\\ +(\today) +\end{nko} + \end{document} %</examples.tex> %<*example-arabic.tex> diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-english.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-english.ldf index b1685259ce6..007b11ef5ec 100644 --- a/Master/texmf-dist/tex/latex/polyglossia/gloss-english.ldf +++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-english.ldf @@ -16,7 +16,7 @@ %% we need to handle it differently \define@key{english}{variant}{% %needs to be reset for loop over hyphennames below: - \renewcommand*{\do}[1]{% + \def\do##1{% \ifcsdef{l@#1}% {\csletcs{l@english}{l@#1}\listbreak}% {}% @@ -60,7 +60,7 @@ \gdef\english@language{\language=\l@ukenglish\xpg@set@language@luatex@ii{ukenglish}}% \fi % and we reset \do to its previous definition here: - \renewcommand*{\do}[1]{\setotherlanguage{#1}}% + \def\do##1{\setotherlanguage{#1}}% } \def\captionsenglish{% diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-nko.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-nko.ldf index b64b367776e..63a3c0f02d7 100644 --- a/Master/texmf-dist/tex/latex/polyglossia/gloss-nko.ldf +++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-nko.ldf @@ -38,20 +38,42 @@ % The word "ߕߟߋ߬" is mandatory between month name and day number. \def\datenko{% - \def\today{\nkonumber{\day}\space ߕߟߋ߬\space\ifcase\month\or -ߓߌ߲ߠߊߥߎߟߋ߲\or -ߞߏ߲ߞߏߜߍ\or -ߕߙߊߓߊ\or -ߞߏ߲ߞߏߘߌ߬ߓߌ\or -ߘߓߊ߬ߕߊ\or -ߥߊ߬ߛߌߥߊ߬ߙߊ\or -ߞߊ߬ߙߌߝߐ߭\or -ߘߓߊ߬ߓߌߟߊ\or -ߕߎߟߊߝߌ߲\or -ߞߏ߲ߓߌߕߌ߮\or -ߣߍߣߍߓߊ\or -ߞߏ߬ߟߌ߲߬ߞߏߟߌ߲\fi -\space\nkonumber{\year} + \def\today{% + \nkonumber{\year}\space + \ifcase\month + \orߓߌ߲ߠߊߥߎߟߋ߲% + \orߞߏ߲ߞߏߜߍ% + \orߕߙߊߓߊ + \orߞߏ߲ߞߏߘߌ߬ߓߌ% + \orߘߓߊ߬ߕߊ% + \orߥߊ߬ߛߌߥߊ߬ߙߊ% + \orߞߊ߬ߙߌߝߐ߭% + \orߘߓߊ߬ߓߌߟߊ% + \orߕߎߟߊߝߌ߲% + \orߞߏ߲ߓߌߕߌ߮% + \orߣߍߣߍߓߊ% + \orߞߏ߬ߟߌ߲߬ߞߏߟߌ߲\fi + \spaceߕߟߋ߬ + \space\nkonumber{\day} + }% + + \def\today{% + \nkonumber{\year}\space + \ifcase\month + \or ߓߌ߲ߠߊߥߎߟߋ߲% + \or ߞߏ߲ߞߏߜߍ% + \or ߕߙߊߓߊ% + \or ߞߏ߲ߞߏߘߌ߬ߓߌ% + \or ߘߓߊ߬ߕߊ% + \or ߥߊ߬ߛߌߥߊ߬ߙߊ% + \or ߞߊ߬ߙߌߝߐ߭% + \or ߘߓߊ߬ߓߌߟߊ% + \or ߕߎߟߊߝߌ߲% + \or ߞߏ߲ߓߌߕߌ߮% + \or ߣߍߣߍߓߊ% + \or ߞߏ߬ߟߌ߲߬ߞߏߟߌ߲\fi + \space ߕߟߋ߬ + \space\nkonumber{\day} }% }% diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-ukrainian.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-ukrainian.ldf index 26d3906ff4e..e7001edda42 100644 --- a/Master/texmf-dist/tex/latex/polyglossia/gloss-ukrainian.ldf +++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-ukrainian.ldf @@ -90,8 +90,8 @@ \def\cosec{\mathop{\operator@font cosec}\nolimits} \def\Prob{\mathop{\kern\z@\mathsf{P}}\nolimits} \def\Variance{\mathop{\kern\z@\mathsf{D}}\nolimits} -\def\nsd{\mathop{\mathrm{н.х.д.}}\nolimits} -\def\nsk{\mathop{\mathrm{н.х.к.}}\nolimits} +\def\nsd{\mathop{\mathrm{н.с.д.}}\nolimits} +\def\nsk{\mathop{\mathrm{н.с.к.}}\nolimits} \def\NSD{\mathop{\mathrm{НСД}}\nolimits} \def\NSK{\mathop{\mathrm{НСК}}\nolimits} \def\nod{\mathop{\mathrm{н.о.д.}}\nolimits} % ?????? diff --git a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-frpt.lua b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-frpt.lua index b858c1b3458..56af011152a 100644 --- a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-frpt.lua +++ b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-frpt.lua @@ -10,22 +10,35 @@ local next, type = next, type local nodes, fonts, node = nodes, fonts, node +local nodecodes = nodes.nodecodes + local insert_node_before = node.insert_before local insert_node_after = node.insert_after local remove_node = nodes.remove -local end_of_math = node.end_of_math local has_attribute = node.has_attribute local node_copy = node.copy +local new_node = node.new + +local end_of_math = node.end_of_math +if not end_of_math then -- luatex < .76 + local traverse_nodes = node.traverse_id + local math_code = nodecodes.math + local end_of_math = function (n) + for n in traverse_nodes(math_code, n.next) do + return n + end + end +end --- node types as of April 2013 -local glue_code = 10 -local glue_spec_code= 47 -local glyph_code = 37 -local penalty_code = 12 -local kern_code = 11 +-- node types according to node.types() +local glue_code = nodecodes.glue +local glue_spec_code = nodecodes.glue_spec +local glyph_code = nodecodes.glyph +local penalty_code = nodecodes.penalty +local kern_code = nodecodes.kern -- we make a new node, so that we can copy it later on -local penalty_node = node.new(penalty_code) +local penalty_node = new_node(penalty_code) penalty_node.penalty = 10000 local function get_penalty_node() @@ -33,7 +46,7 @@ local function get_penalty_node() end -- same for glue node -local kern_node = node.new(kern_code) +local kern_node = new_node(kern_code) local function get_kern_node(dim) local n = node_copy(kern_node) diff --git a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-tibt.lua b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-tibt.lua index 04355384029..46370c46af2 100644 --- a/Master/texmf-dist/tex/latex/polyglossia/polyglossia-tibt.lua +++ b/Master/texmf-dist/tex/latex/polyglossia/polyglossia-tibt.lua @@ -8,14 +8,24 @@ local next, type = next, type local nodes, fonts, node = nodes, fonts, node +local nodecodes = nodes.nodecodes --- <= preloaded node.types() + local insert_node_before = node.insert_before local insert_node_after = node.insert_after local remove_node = nodes.remove local copy_node = node.copy -local end_of_math = node.end_of_math local has_attribute = node.has_attribute -local nodecodes = nodes.nodecodes --- <= preloaded node.types() +local end_of_math = node.end_of_math +if not end_of_math then -- luatex < .76 + local traverse_nodes = node.traverse_id + local math_code = nodecodes.math + local end_of_math = function (n) + for n in traverse_nodes(math_code, n.next) do + return n + end + end +end -- node types as of April 2013 local glyph_code = nodecodes.glyph @@ -24,7 +34,7 @@ local kern_code = nodecodes.kern -- we make a new node, so that we can copy it later on local penalty_node = node.new(penalty_code) -penalty_node.penalty = -2000 -- rather arbitrary... if someone has a better idea...? +penalty_node.penalty = 50 -- corresponds to the penalty LaTeX sets at explicit hyphens local function get_penalty_node() return copy_node(penalty_node) diff --git a/Master/texmf-dist/tex/latex/polyglossia/polyglossia.lua b/Master/texmf-dist/tex/latex/polyglossia/polyglossia.lua index 2a344720ec6..cb1e789ad63 100644 --- a/Master/texmf-dist/tex/latex/polyglossia/polyglossia.lua +++ b/Master/texmf-dist/tex/latex/polyglossia/polyglossia.lua @@ -20,6 +20,7 @@ polyglossia = polyglossia or {} local polyglossia = polyglossia local current_language +local last_language local default_language local function loadlang(lang, id) @@ -30,13 +31,26 @@ end local function select_language(lang, id) loadlang(lang, id) - polyglossia.current_language = lang + current_language = lang + last_language = lang end local function set_default_language(lang, id) polyglossia.default_language = lang end +local function falsefun() + return false +end + +local function disable_hyphenation() + luatexbase.add_to_callback("hyphenate", falsefun, "polyglossia.disable_hyphenation") +end + +local function enable_hyphenation() + luatexbase.remove_from_callback("hyphenate", "polyglossia.disable_hyphenation") +end + local check_char if luaotfload and luaotfload.aux and luaotfload.aux.font_has_glyph then @@ -80,3 +94,5 @@ polyglossia.default_language = default_language polyglossia.check_char = check_char polyglossia.load_frpt = load_frpt polyglossia.load_tibt_eol = load_tibt_eol +polyglossia.disable_hyphenation = disable_hyphenation +polyglossia.enable_hyphenation = enable_hyphenation diff --git a/Master/texmf-dist/tex/latex/polyglossia/polyglossia.sty b/Master/texmf-dist/tex/latex/polyglossia/polyglossia.sty index a2f3bfd6fcd..08a05e72028 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}[2013/05/20 v1.33.0 +\ProvidesPackage{polyglossia}[2013/05/28 v1.33.3 Babel replacement for XeLaTeX and LuaTeX] \RequirePackage{etoolbox} \RequirePackage{makecmds} @@ -24,9 +24,6 @@ \RequireLuaModule{polyglossia} \fi -%% for \docvslist (etoolbox) -\providecommand*{\do}[1]{}% - %% custom message macros \providecommand*{\xpg@error}[1]{% \PackageError{polyglossia}{#1}{}% @@ -139,7 +136,6 @@ %% options currently available: %% language : the name of the language (as understood by fontspec) %% hyphennames : the different hyphenation patterns to try (comma separated list) -%%% TODO: what if a language has no hyphenation possible? ex: tibetan %%% TODO: if pattern is prefixed by !, then it should be loaded as a fallback, with \xpg@nopatterns@fallback - i.e. with a warning: e.g. sanskrit for hindi, or catalan for asturian. %% script : the name of the script (as understood by fontspec) – default is Latin %% direction : the direction of the script: LR or RL @@ -168,7 +164,7 @@ \csgdef{init@noextras@#1}{}% we don't use this yet: remove? \csgdef{xpg@langname@#1}{\xpg@uppercasefirst{#1}}% %needed for docvslist with hyphennames key: - \renewcommand*{\do}[1]{% + \def\do##1{% \ifcsdef{l@#1}{}{% \ifstrequal{#1}{##1}{}% {\ifcsdef{l@##1}% @@ -186,7 +182,7 @@ {\xpg@info{Skipping~ automatic~ font~ setup~ for~ language~ #1}}% %% TODO? \toggletrue{#1@setup@done}% % reinit \do - \renewcommand*{\do}[1]{\setotherlanguage{##1}}% + \def\do##1{\setotherlanguage{##1}}% } \def\xpg@first#1,#2{#1} @@ -249,6 +245,36 @@ %TODO same thing with localdigits } +\def\xpg@lastlanguage{0}% + +\providebool{xpg@hyphenation@disabled}% +\boolfalse{xpg@hyphenation@disabled} + +\def\xpg@disablehyphenation{% + \ifbool{xpg@hyphenation@disabled}{}{% + \booltrue{xpg@hyphenation@disabled}% + \xdef\xpg@lastlanguage{\the\language}% + \xpg@set@language@luatex@ii{nohyphenation} + \language=\l@nohyphenation% + \ifluatex % + \directlua{polyglossia.disable_hyphenation()}% + \fi % + }% +} + +\def\xpg@enablehyphenation{% + \ifbool{xpg@hyphenation@disabled}{% + \boolfalse{xpg@hyphenation@disabled}% + \language=\csname xpg@lastlanguage\endcsname% + \ifluatex % + \directlua{polyglossia.enable_hyphenation()}% + \fi % + }{}% +} + +\let\disablehyphenation\xpg@disablehyphenation +\let\enablehyphenation\xpg@enablehyphenation + %\def\xpg@fontsetup#1{\xpg@csifdef@warn{xpg@fontsetup@#1}} %\def\xpg@fontsetup@none#1{\csgdef{#1@font}{\ifcsdef{#1font}{\csname #1font\endcsname}{}}} %<-- simplistic %\def\xpg@fontsetup@custom#1{\csuse{#1@font}} @@ -282,8 +308,7 @@ \edef\tmp@@scriptparam{Script=#2}% \expandafter\expandafter\expandafter\fontspec_if_script:nTF \expandafter{#1}% {\expandafter\expandafter\expandafter\addfontfeature\expandafter{\tmp@@scriptparam}}% - {\xpg@error{The~ current~ roman~ font~ does~ not~ contain\MessageBreak - the~ \expandafter\noexpand#2 ~ script!\MessageBreak + {\xpg@error{The~ current~ roman~ font~ does~ not~ contain~ the~ \expandafter\noexpand#2 ~ script!\MessageBreak Please~ define~ \expandafter\string\csname \xpg@lowercasefirst{#2}font\endcsname\space with~ \string\newfontfamily}}% } @@ -453,7 +478,7 @@ %we call this macro when a gloss file is not found for a given language \def\xpg@nogloss#1{% - \xpg@warning{File~ gloss-#1.ldf~ does~ not~ exist!^^J + \xpg@warning{File~ gloss-#1.ldf~ does~ not~ exist!\MessageBreak I~ will~ nevertheless~ try~ to~ use~ hyphenation~ patterns~ for~ #1.}% \PolyglossiaSetup{#1}{hyphenmins,hyphennames={#1},fontsetup=true}% % the above amounts to: @@ -617,7 +642,7 @@ } \newcommand\setotherlanguages[1]{% - \renewcommand*{\do}[1]{\setotherlanguage{##1}}% + \def\do##1{\setotherlanguage{##1}}% \docsvlist{#1}}% \def\common@language{% FIXME is this really needed??? |