summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/polyglossia/gloss-french.ldf
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2013-05-13 22:15:54 +0000
committerKarl Berry <karl@freefriends.org>2013-05-13 22:15:54 +0000
commit1ff28b17fa5479687257ee4525e3a06c8aa0a2c7 (patch)
tree22d0f15f3680a26ce6a158e96b25bf1908471b9e /Master/texmf-dist/tex/latex/polyglossia/gloss-french.ldf
parente26fdd32ad8dc28823e2f351c31afa0dad690da9 (diff)
polyglossia (13may13)
git-svn-id: svn://tug.org/texlive/trunk@30442 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/polyglossia/gloss-french.ldf')
-rw-r--r--Master/texmf-dist/tex/latex/polyglossia/gloss-french.ldf140
1 files changed, 140 insertions, 0 deletions
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