From 1ff28b17fa5479687257ee4525e3a06c8aa0a2c7 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Mon, 13 May 2013 22:15:54 +0000 Subject: polyglossia (13may13) git-svn-id: svn://tug.org/texlive/trunk@30442 c570f23f-e606-0410-a88d-b1316a301751 --- .../tex/latex/polyglossia/gloss-french.ldf | 140 +++++++++++++++++++++ 1 file changed, 140 insertions(+) create mode 100644 Master/texmf-dist/tex/latex/polyglossia/gloss-french.ldf (limited to 'Master/texmf-dist/tex/latex/polyglossia/gloss-french.ldf') diff --git a/Master/texmf-dist/tex/latex/polyglossia/gloss-french.ldf b/Master/texmf-dist/tex/latex/polyglossia/gloss-french.ldf new file mode 100644 index 00000000000..47476760ae0 --- /dev/null +++ b/Master/texmf-dist/tex/latex/polyglossia/gloss-french.ldf @@ -0,0 +1,140 @@ +\ProvidesFile{gloss-french.ldf}[polyglossia: module for french] + +\PolyglossiaSetup{french}{% + language=French, + script=Latin, + hyphennames={french,francais}, + frenchspacing=true, + indentfirst=true, + hyphenmins={2,2}, + fontsetup=true} + +\ifluatex + \newluatexattribute\xpg@frpt % + \directlua{polyglossia.load_frpt()}% + \global\newcount\xpg@interchartokenstate % +\else + \newXeTeXintercharclass\french@punctthin % ! ? ; et autres + \newXeTeXintercharclass\french@punctthick % : + \newXeTeXintercharclass\french@punctguillstart % « ‹ + \newXeTeXintercharclass\french@punctguillend % » › +\fi + +\def\xpg@unskip{\ifhmode\ifdim\lastskip>\z@\unskip\fi\fi} +\def\xpg@nospace#1{#1} + +\def\french@punctuation{% + \lccode"2019="2019 + \ifluatex + \global\xpg@frpt=1\relax % + \directlua{polyglossia.activate_frpt()}% + \else + \XeTeXinterchartokenstate=1 + \XeTeXcharclass `\! \french@punctthin + \XeTeXcharclass `\? \french@punctthin + \XeTeXcharclass `\‼ \french@punctthin + \XeTeXcharclass `\⁇ \french@punctthin + \XeTeXcharclass `\⁈ \french@punctthin + \XeTeXcharclass `\⁉ \french@punctthin + \XeTeXcharclass `\; \french@punctthin + \XeTeXcharclass `\: \french@punctthick + \XeTeXcharclass `\« \french@punctguillstart + \XeTeXcharclass `\» \french@punctguillend + \XeTeXcharclass `\‹ \french@punctguillstart + \XeTeXcharclass `\› \french@punctguillend + \XeTeXinterchartoks \z@ \french@punctthin = {\nobreak\thinspace}% + \XeTeXinterchartoks \z@ \french@punctthick = {\nobreakspace}% + \XeTeXinterchartoks 255 \french@punctthin = {\xpg@unskip\nobreak\thinspace}% + \XeTeXinterchartoks 255 \french@punctthick = {\xpg@unskip\nobreakspace}% + \XeTeXinterchartoks \french@punctguillstart \z@ = {\nobreakspace}% "«a" -> "« a" + % \XeTeXinterchartoks \z@ \french@punctguillstart = {\nobreakspace}% "a«" unchanged? + % \XeTeXinterchartoks \french@punctguillend \z@ = {\nobreakspace}% "»a" unchanged? + \XeTeXinterchartoks \z@ \french@punctguillend = {\nobreakspace}% "a»" -> "a »" + \XeTeXinterchartoks \french@punctguillstart 255 = {\nobreakspace\xpg@nospace}% "« " -> "«~" + \XeTeXinterchartoks 255 \french@punctguillend = {\xpg@unskip\nobreakspace}% " »" -> "~»" + \XeTeXinterchartoks \french@punctguillend \french@punctthin = {\nobreak\thinspace}% "»;" -> "» ;" + \XeTeXinterchartoks \french@punctguillend \french@punctthick = {\nobreakspace}% "»:" -> "» :" + \XeTeXinterchartoks \french@punctthin \french@punctguillend = {\nobreakspace}% "?»" -> "? »" + \fi + } + +\def\nofrench@punctuation{% + \lccode"2019=\z@ + \ifluatex + \global\xpg@frpt=0\relax % + % Though it would make compilation slightly faster, it is not possible to + % safely uncomment the following line. Imagine the following case: you start + % a paragraph by some french text, then, in the same paragraph, you change + % the language to something else, and thus call the following line. This means + % that, at then end of the paragraph, the function won't be in the callback, + % so the beginning of the paragraph won't be processed by it. + %\directlua{polyglossia.desactivate_frpt()} + \else + \XeTeXcharclass `\! \z@ + \XeTeXcharclass `\? \z@ + \XeTeXcharclass `\‼ \z@ + \XeTeXcharclass `\⁇ \z@ + \XeTeXcharclass `\⁈ \z@ + \XeTeXcharclass `\⁉ \z@ + \XeTeXcharclass `\; \z@ + \XeTeXcharclass `\: \z@ + \XeTeXcharclass `\« \z@ + \XeTeXcharclass `\» \z@ + \XeTeXcharclass `\‹ \z@ + \XeTeXcharclass `\› \z@ + \XeTeXinterchartokenstate=0 + \fi + } + +\def\captionsfrench{% + \def\refname{Références}% + \def\abstractname{Résumé}% + \def\bibname{Bibliographie}% + \def\prefacename{Préface}% + \def\chaptername{Chapitre}% + \def\appendixname{Annexe}% + \def\contentsname{Table des matières}% + \def\listfigurename{Table des figures}% + \def\listtablename{Liste des tableaux}% + \def\indexname{Index}% + \def\figurename{\textsc{Fig.}}% + \def\tablename{\textsc{Tab.}}% + \def\@Fpt{\ifcase\value{part}\or Première\or Deuxième\or + Troisième\or Quatrième\or Cinquième\or Sixième\or + Septième\or Huitième\or Neuvième\or Dixième\or Onzième\or + Douzième\or Treizième\or Quatorzième\or Quinzième\or + Seizième\or Dix-septième\or Dix-huitième\or Dix-neuvième\or + Vingtième\fi\space}% + \def\thepart{}% + \def\partname{\protect\@Fpt partie}% + \def\pagename{page}% + \def\seename{\emph{voir}}% + \def\alsoname{\emph{voir aussi}}% + \def\enclname{P.~J. }% + \def\ccname{Copie à }% + \def\headtoname{}% + \def\proofname{Démonstration}% + } +\def\datefrench{% + \def\today{\ifx\ier\undefined\def\ier{er}\fi + \ifnum\day=1\relax 1\ier% + \else \number\day\fi + \space \ifcase\month% + \or janvier\or février\or mars\or avril\or mai\or juin\or + juillet\or août\or septembre\or octobre\or novembre\or + décembre\fi + \space \number\year}} + +\def\noextras@french{% + \nofrench@punctuation% + } + +\def\blockextras@french{% + \french@punctuation% + } + +\def\inlineextras@french{% + \french@punctuation% + } + +\endinput -- cgit v1.2.3