此主题:
正是描述了我今天遇到的问题。因此,我尝试了给出的解决方案,IE我在序言中添加了这一点:
\usepackage{polyglossia}
\setdefaultlanguage{french}
\makeatletter
\XeTeXinterchartoks 4095 \french@punctthin = {\xpg@unskip\nobreak\thinspace}%
\XeTeXinterchartoks 4095 \french@punctthick = {\xpg@unskip\nobreakspace}%
\makeatother
提供的解决方案产生了一个奇妙的错误消息:
xparse.sty | Error line 38 | Package xparse Error: Support package l3kernel too old.}
fontspec.sty | Error | Fatal fontspec error: "cannot-use-pdftex" The fontspec package requires either XeTeX or LuaTeX to function. You must change your typesetting engine to, e.g., "xelatex" or "lualatex" instead of plain "latex" or "pdflatex". For immediate help type H <return>.
xsparse.sty | Warning | You have requested, on input line 26, version `2017/04/01' of package expl3, but only version `2016/03/28 v6468 L3 programming layer (loader) ' is available.
所以我尝试l3kernel
从以下位置下载并安装/更新该东西:
它什么也没做。另外,将编译器更改为xelatex
或也lualatex
没有多大帮助...我目前pdflatex
在 Windows 7 (x64) 机器上使用。
我太绝望了,我甚至无法更新babel
到最新版本,mpm
告诉我这个:
> mpm --update=babel
(... a long while after ...)
mpm: The operation would not be completed because the following file failed verification:
mpm:
mpm: C:\Users\Anthony\_TeXPackageRepository\babel.tar.lzma
(我尝试更新 babel 以\usepackage[french]{babel}
在我的序言中传递 a。)
我从本地存储库手动安装软件包(不久前遇到的问题让我不得不使用此解决方案,因此我.tar.lzma
从 CTAN 下载文件并设置mpm --set-repository=C:\Users\Anthony\_TeXPackageRepository\
。我不确定这里的问题是什么,因为这种方法通常适用于所有其他软件包,无论是安装它们还是更新它们。
有人知道这个冒号问题吗?似乎我一开始链接的帖子是唯一一个解决这个问题的帖子,还有一个显然已经解决了问题的 Gith 错误跟踪器 :(
答案1
我认为,最好的解决方案包括 (a) 完全重新安装您的 MikTeX 发行版(正如您所发现的,尝试对一些软件包进行零碎的更新是繁琐且容易出错的),(b) 使用babel
而不是polyglossia
,以及 (c) 不在输入文件之前:
和!
之中插入空格。只需让 LaTeX 处理实现法式排版细节的琐事即可。
% !TEX TS-program = xelatex
\documentclass[12pt]{memoir}
\usepackage[french]{babel}
\begin{document}
Bonjour tout le monde. Si je vais au bout de la ligne, je vais avoir cela: non!
\end{document}