Discussion:
`Please insert PRERENDERUNICODE in preamble'
(too old to reply)
Merciadri Luca
2010-01-29 10:43:35 UTC
Permalink
Hello,

Consider the following MWE:

==
\documentclass[10pt,a4paper,twoside,final,makeidx,openright]{book}%report

%% -- USED PACKAGES --

\usepackage{makeidx}

\usepackage[utf8x]{inputenc}
\usepackage[english,frenchb]{babel}

\usepackage{multicol} %permet d'utiliser le mode multicolonnes
\usepackage{amsmath}

%\usepackage[Rejne]{fncychap}


\usepackage[version=3]{mhchem}


\begin{document}

\chapter{Élévation}

\end{document}
==

Try to compile it with `latex' (.tex -> .dvi). Everything is fine.

Uncomment

==
\usepackage[Rejne]{fncychap}
==
now. Now appear the following errors:

==
Chapitre 1.
! Argument of à has an extra }.
<inserted text>
\par
l.21 \chapter{Élévation}

I've run across a `}' that doesn't seem to match anything.
For example, `\def\a#1{...}' and `\a}' would produce
this error. If you simply proceed now, the `\par' that
I've just inserted will cause me to report a runaway
argument that might be the root of the problem. But if
your `}' was spurious, just type `2' and it will go away.

! Missing \endcsname inserted.
<to be read again>
\relax
l.21 \chapter{Élévation}

The control sequence marked <to be read again> should
not appear between \csname and \endcsname.

Missing character: There is no à in font cmr17!

Overfull \hbox (330.77776pt too wide) in paragraph at lines 21--21
[]\OT1/cmr/m/n/24.88 [PLEASEINSERT\PRERENDERUNICODE{}INTOPREAMBLE]
[]


! Package utf8x Error: Character137appearedalone.

See the utf8x package documentation for explanation.
Type H <return> for immediate help.
...

l.21 \chapter{Élévation}
==

Inserting

==
\PRERENDERUNICODE{}
==
into preamble does not change anything. I do not understand this
error, as I used many fncychap's styles (Rejne, Conny, etc.) in other
files, without any problems. (I have another file, with a very long preamble which uses
exactly the same parameters, but compiles nicely.)

The .tex file is in UTF-8 encoding.

Any idea?

Thanks.


- --
Merciadri Luca
See http://www.student.montefiore.ulg.ac.be/~merciadri/
- --

Bad news travels fast.
Philipp Stephani
2010-01-29 10:51:30 UTC
Permalink
Post by Merciadri Luca
Hello,
==
\documentclass[10pt,a4paper,twoside,final,makeidx,openright]{book}%report
%% -- USED PACKAGES --
\usepackage{makeidx}
\usepackage[utf8x]{inputenc}
\usepackage[english,frenchb]{babel}
\usepackage{multicol} %permet d'utiliser le mode multicolonnes
\usepackage{amsmath}
%\usepackage[Rejne]{fncychap}
\usepackage[version=3]{mhchem}
\begin{document}
\chapter{Élévation}
\end{document}
==
Try to compile it with `latex' (.tex -> .dvi). Everything is fine.
Uncomment
==
\usepackage[Rejne]{fncychap}
==
==
Chapitre 1.
! Argument of à has an extra }.
<inserted text>
\par
l.21 \chapter{Élévation}
I've run across a `}' that doesn't seem to match anything.
For example, `\def\a#1{...}' and `\a}' would produce
this error. If you simply proceed now, the `\par' that
I've just inserted will cause me to report a runaway
argument that might be the root of the problem. But if
your `}' was spurious, just type `2' and it will go away.
! Missing \endcsname inserted.
<to be read again>
\relax
l.21 \chapter{Élévation}
The control sequence marked <to be read again> should
not appear between \csname and \endcsname.
Missing character: There is no à in font cmr17!
Overfull \hbox (330.77776pt too wide) in paragraph at lines 21--21
[]\OT1/cmr/m/n/24.88 [PLEASEINSERT\PRERENDERUNICODE{}INTOPREAMBLE]
[]
! Package utf8x Error: Character137appearedalone.
See the utf8x package documentation for explanation.
Type H <return> for immediate help.
...
l.21 \chapter{Élévation}
==
Inserting
==
\PRERENDERUNICODE{}
==
into preamble does not change anything. I do not understand this
error, as I used many fncychap's styles (Rejne, Conny, etc.) in other
files, without any problems. (I have another file, with a very long preamble which uses
exactly the same parameters, but compiles nicely.)
The .tex file is in UTF-8 encoding.
Any idea?
Thanks.
Hello,

try to use [utf8] instead of [utf8x]. The latter loads the ucs package
which is not developed any more. The ucs package requires you to
preload the character blocks you want to use with the
\PreloadUnicodePage or \PrerenderUnicode commands. See the ucs manual
for a detailed description how to use them.
--
Change “LookInSig” to “tcalveu” to answer by mail.
Merciadri Luca
2010-01-29 11:21:52 UTC
Permalink
Post by Philipp Stephani
try to use [utf8] instead of [utf8x]. The latter loads the ucs package
which is not developed any more. The ucs package requires you to
preload the character blocks you want to use with the
\PreloadUnicodePage or \PrerenderUnicode commands. See the ucs manual
for a detailed description how to use them.
I did not know this. I tried with \PrerenderUnicode, but the problem
still remains.

I tried without utf8x, using utf8, which gives

==
! Argument of \***@two@octets has an extra }.
<inserted text>
\par
l.24 \chapter{Élévation}

! Missing \endcsname inserted.
<to be read again>
\par
l.24 \chapter{Élévation}


! PACKAGE INPUTENC ERROR: UNICODE CHAR \U8:�\ENDCSNAME NOT SET UP FOR USE WITH
LATEX.

SEE THE INPUTENC PACKAGE DOCUMENTATION FOR EXPLANATION.
Type H <return> for immediate help.
...

l.24 \chapter{Élévation}


! Package inputenc Error: Keyboard character used is undefined
(inputenc) in inputencoding `utf8'.

See the inputenc package documentation for explanation.
Type H <return> for immediate help.
...

l.24 \chapter{Élévation}

[1] (./test.aux) )
==

Not better. Thanks.

- --
Merciadri Luca
See http://www.student.montefiore.ulg.ac.be/~merciadri/
- --

Before criticizing a man, walk a mile in his shoes.
Enrico Gregorio
2010-01-29 11:47:32 UTC
Permalink
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Post by Philipp Stephani
try to use [utf8] instead of [utf8x]. The latter loads the ucs package
which is not developed any more. The ucs package requires you to
preload the character blocks you want to use with the
\PreloadUnicodePage or \PrerenderUnicode commands. See the ucs manual
for a detailed description how to use them.
I did not know this. I tried with \PrerenderUnicode, but the problem
still remains.
I tried without utf8x, using utf8, which gives
==
<inserted text>
\par
l.24 \chapter{Élévation}
! Missing \endcsname inserted.
<to be read again>
\par
l.24 \chapter{Élévation}
! PACKAGE INPUTENC ERROR: UNICODE CHAR \U8:?ENDCSNAME NOT SET UP FOR USE WITH
LATEX.
SEE THE INPUTENC PACKAGE DOCUMENTATION FOR EXPLANATION.
Type H <return> for immediate help.
...
l.24 \chapter{Élévation}
! Package inputenc Error: Keyboard character used is undefined
(inputenc) in inputencoding `utf8'.
See the inputenc package documentation for explanation.
Type H <return> for immediate help.
...
l.24 \chapter{Élévation}
[1] (./test.aux) )
==
Not better. Thanks.
For mysterious reasons, fncychap claims to have made corrections
in one of its releases:

%%% Revision 1.1 (1997)
%%%
%%% Jan. 8th Modified package name base date option
%%% Jan. 22th Modified FmN and FmTi for error in book.cls
%%% \MakeUppercase{#}->{\MakeUppercase#}

However, stating

\renewcommand{\FmTi}[1]{\MakeUppercase{#1}}

just after loading fncychap, the problem you have disappears.
The reason is easy to explain: with normal fncychap settings,
"\FmTi{Élévation}" expands to "\MakeUppercase Élévation", but
with a UTF-8 text the token fed as argument to \MakeUppercase
is just the first octet forming the "É" (which produces the
error).

I don't know if the "remedy" may have unexpected consequences,
as I never use fncychap and usually advise against using it:
I found its styles going from bad (for example Rejna) to ugly
(for example Lenny) to horrible (for example Glenn). :-)

Ciao
Enrico
Merciadri Luca
2010-01-29 12:14:43 UTC
Permalink
Post by Enrico Gregorio
For mysterious reasons, fncychap claims to have made corrections
%%% Revision 1.1 (1997)
%%%
%%% Jan. 8th Modified package name base date option
%%% Jan. 22th Modified FmN and FmTi for error in book.cls
%%% \MakeUppercase{#}->{\MakeUppercase#}
I had not noticed this.
Post by Enrico Gregorio
However, stating
\renewcommand{\FmTi}[1]{\MakeUppercase{#1}}
just after loading fncychap, the problem you have disappears.
The reason is easy to explain: with normal fncychap settings,
"\FmTi{Élévation}" expands to "\MakeUppercase Élévation", but
with a UTF-8 text the token fed as argument to \MakeUppercase
is just the first octet forming the "É" (which produces the
error).
You are right, once again.
Post by Enrico Gregorio
I don't know if the "remedy" may have unexpected consequences,
I found its styles going from bad (for example Rejna) to ugly
(for example Lenny) to horrible (for example Glenn). :-)
It seems to do the trick without having other consequences on the
document. It is really nice. However, I am still unable to explain why
this document caused the error, when another document of mine,
containing the same preamble, with lots of other packages appended to
it, works great.

What do you suggest, then, for the output? Modifying everything
manually? I shall try to transfer this to fncychap's author.

Thanks, Enrico. :-)

- --
Merciadri Luca
See http://www.student.montefiore.ulg.ac.be/~merciadri/
- --

Better is the enemy of good.
Enrico Gregorio
2010-01-29 13:06:50 UTC
Permalink
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Post by Enrico Gregorio
For mysterious reasons, fncychap claims to have made corrections
%%% Revision 1.1 (1997)
%%%
%%% Jan. 8th Modified package name base date option
%%% Jan. 22th Modified FmN and FmTi for error in book.cls
%%% \MakeUppercase{#}->{\MakeUppercase#}
I had not noticed this.
Post by Enrico Gregorio
However, stating
\renewcommand{\FmTi}[1]{\MakeUppercase{#1}}
just after loading fncychap, the problem you have disappears.
The reason is easy to explain: with normal fncychap settings,
"\FmTi{Élévation}" expands to "\MakeUppercase Élévation", but
with a UTF-8 text the token fed as argument to \MakeUppercase
is just the first octet forming the "É" (which produces the
error).
You are right, once again.
Post by Enrico Gregorio
I don't know if the "remedy" may have unexpected consequences,
I found its styles going from bad (for example Rejna) to ugly
(for example Lenny) to horrible (for example Glenn). :-)
It seems to do the trick without having other consequences on the
document. It is really nice. However, I am still unable to explain why
this document caused the error, when another document of mine,
containing the same preamble, with lots of other packages appended to
it, works great.
Probably you didn't have any title starting with an accented letter.
What do you suggest, then, for the output? Modifying everything
manually? I shall try to transfer this to fncychap's author.
Thanks, Enrico. :-)
Don't use fncychap. :-)

Ciao
Enrico
Merciadri Luca
2010-01-29 16:28:26 UTC
Permalink
Post by Enrico Gregorio
Probably you didn't have any title starting with an accented letter.
Effectively.
Post by Enrico Gregorio
Post by Merciadri Luca
What do you suggest, then, for the output? Modifying everything
manually? I shall try to transfer this to fncychap's author.
Thanks, Enrico. :-)
Don't use fncychap. :-)
A matter of taste, but okay.

- --
Merciadri Luca
See http://www.student.montefiore.ulg.ac.be/~merciadri/
- --

Better late than never.
a***@gmail.com
2017-02-18 08:40:40 UTC
Permalink
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
==
\documentclass[10pt,a4paper,twoside,final,makeidx,openright]{book}%report
%% -- USED PACKAGES --
\usepackage{makeidx}
\usepackage[utf8x]{inputenc}
\usepackage[english,frenchb]{babel}
\usepackage{multicol} %permet d'utiliser le mode multicolonnes
\usepackage{amsmath}
%\usepackage[Rejne]{fncychap}
\usepackage[version=3]{mhchem}
\begin{document}
\chapter{Élévation}
\end{document}
==
Try to compile it with `latex' (.tex -> .dvi). Everything is fine.
Uncomment
==
\usepackage[Rejne]{fncychap}
==
==
Chapitre 1.
! Argument of à has an extra }.
<inserted text>
\par
l.21 \chapter{Élévation}
I've run across a `}' that doesn't seem to match anything.
For example, `\def\a#1{...}' and `\a}' would produce
this error. If you simply proceed now, the `\par' that
I've just inserted will cause me to report a runaway
argument that might be the root of the problem. But if
your `}' was spurious, just type `2' and it will go away.
! Missing \endcsname inserted.
<to be read again>
\relax
l.21 \chapter{Élévation}
The control sequence marked <to be read again> should
not appear between \csname and \endcsname.
Missing character: There is no à in font cmr17!
Overfull \hbox (330.77776pt too wide) in paragraph at lines 21--21
[]\OT1/cmr/m/n/24.88 [PLEASEINSERT\PRERENDERUNICODE{}INTOPREAMBLE]
[]
! Package utf8x Error: Character137appearedalone.
See the utf8x package documentation for explanation.
Type H <return> for immediate help.
...
l.21 \chapter{Élévation}
==
Inserting
==
\PRERENDERUNICODE{}
==
into preamble does not change anything. I do not understand this
error, as I used many fncychap's styles (Rejne, Conny, etc.) in other
files, without any problems. (I have another file, with a very long preamble which uses
exactly the same parameters, but compiles nicely.)
The .tex file is in UTF-8 encoding.
Any idea?
Thanks.
- --
Merciadri Luca
See http://www.student.montefiore.ulg.ac.be/~merciadri/
- --
Bad news travels fast.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.8 <http://mailcrypt.sourceforge.net/>
iEYEARECAAYFAktiu9IACgkQM0LLzLt8MhxRpwCgjcRkzp522rth9OuniuAn7e3L
Xm4An3lEqeRTSPRmpVFvIB26dkVPr1AD
=Jfcp
-----END PGP SIGNATURE-----
Charles P. Schaum
2017-02-18 18:49:51 UTC
Permalink
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hello,
==
\documentclass[10pt,a4paper,twoside,final,makeidx,openright]{book}%
report
%% -- USED PACKAGES --
\usepackage{makeidx}
\usepackage[utf8x]{inputenc}
\usepackage[english,frenchb]{babel}
\usepackage{multicol} %permet d'utiliser le mode multicolonnes
\usepackage{amsmath}
%\usepackage[Rejne]{fncychap}
\usepackage[version=3]{mhchem}
\begin{document}
\chapter{Élévation}
\end{document}
==
Try to compile it with `latex' (.tex -> .dvi). Everything is fine.
Uncomment
==
\usepackage[Rejne]{fncychap}
==
==
Chapitre 1.
! Argument of à has an extra }.
<inserted text>
\par
l.21 \chapter{Élévation}
I've run across a `}' that doesn't seem to match anything.
For example, `\def\a#1{...}' and `\a}' would produce this error. If you
simply proceed now, the `\par' that I've just inserted will cause me to
report a runaway argument that might be the root of the problem. But if
your `}' was spurious, just type `2' and it will go away.
! Missing \endcsname inserted.
<to be read again>
\relax
l.21 \chapter{Élévation}
The control sequence marked <to be read again> should not appear
between \csname and \endcsname.
Missing character: There is no à in font cmr17!
Overfull \hbox (330.77776pt too wide) in paragraph at lines 21--21
[]\OT1/cmr/m/n/24.88 [PLEASEINSERT\PRERENDERUNICODE{}INTOPREAMBLE]
[]
! Package utf8x Error: Character137appearedalone.
See the utf8x package documentation for explanation.
Type H <return> for immediate help.
...
l.21 \chapter{Élévation}
==
Inserting
==
\PRERENDERUNICODE{}
==
into preamble does not change anything. I do not understand this error,
as I used many fncychap's styles (Rejne, Conny, etc.) in other files,
without any problems. (I have another file, with a very long preamble
which uses exactly the same parameters, but compiles nicely.)
The .tex file is in UTF-8 encoding.
Any idea?
Thanks.
- --
Merciadri Luca See http://www.student.montefiore.ulg.ac.be/~merciadri/
- --
Bad news travels fast.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Processed by Mailcrypt 3.5.8
<http://mailcrypt.sourceforge.net/>
iEYEARECAAYFAktiu9IACgkQM0LLzLt8MhxRpwCgjcRkzp522rth9OuniuAn7e3L
Xm4An3lEqeRTSPRmpVFvIB26dkVPr1AD =Jfcp -----END PGP SIGNATURE-----
And below, it works. This seems to have been answered in Google Groups,
as a quick search for PrerenderUnicode pulled it up. In brief:

1. Use the T1 font encoding (or other appropriate) when using accented
Unicode characters in the source text under NFSS/inputenc/fontenc.

2. The error message is misleading. The appropriate control sequence is
\PrerenderUnicode, and TeX is case sensitive. I can see why beginners can
get frustrated with that.

3. Using utf8x is discouraged for various reasons, e.g., the ucs package.

4. You won't see the glyph that you have to put into \PrerenderUnicode
unless you use a font encoding that has the glyph. A little obfuscated,
but The LaTeX Companion makes this clear.

5. I explore issues with NFSS and fragile active characters in the
documentation of the nameauth package, section 2.9.3 in version 3.1. That
may necessitate using \***@edef in some cases and grouping tokens
in others to prevent the aforementioned fragility and undesired expansion
of active chars. Also section 2.5.4 of the nameauth manual mentions where
some NFSS characters expand once and others expand twice, which can lead
to one or two extra spaces in index entries (when using \***@edef)
that do not affect appearance but do affect index sorting.

So here is a working MWE, with the appropriate insertia:

\documentclass[10pt,a4paper,twoside,final,makeidx,openright]{book}%report

%% -- USED PACKAGES --

\usepackage{makeidx}

\usepackage[utf8x]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[english,frenchb]{babel}
\PrerenderUnicode{É}

\usepackage{multicol} %permet d'utiliser le mode multicolonnes
\usepackage{amsmath}

\usepackage[Rejne]{fncychap}


\usepackage[version=3]{mhchem}


\begin{document}

\chapter{Élévation}

\end{document}
--
change _dot_ to a period for email replies
Loading...