Erro: \Sequência de controle indefinida\setmainfont no Ubuntu 12.04

Erro: \Sequência de controle indefinida\setmainfont no Ubuntu 12.04

Estou recebendo um erro ao compilar o seguinte código Latex:

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Code2000}
\begin{document}
abc
\end{document}

Erro:

\Undefined control sequence \setmainfont{Code2000}

Estou usando o Ubuntu 12.04 e o Kile versão 2.1.0 usando a plataforma de desenvolvimento KDE 4.8.5 (4.8.5)

Eu instalei texlive-fullpara fontspeco pacote.

O que estou perdendo por causa do qual ele não está reconhecendo o comando \setmainfont?

O arquivo de log é fornecido abaixo:

This is XeTeX, Version 3.1415926-2.2-0.9995.2 (TeX Live 2009/Debian) (format=xelatex 2014.3.20)  20 MAR 2014 20:00
entering extended mode
 %&-line parsing enabled.
**demo_unicode4.tex
(./demo_unicode4.tex
LaTeX2e <2009/09/24>
Babel <v3.8l> and hyphenation patterns for english, usenglishmax, dumylang, noh
yphenation, farsi, arabic, croatian, bulgarian, ukrainian, russian, czech, slov
ak, danish, dutch, finnish, french, basque, ngerman, german, german-x-2009-06-1
9, ngerman-x-2009-06-19, ibycus, monogreek, greek, ancientgreek, hungarian, san
skrit, italian, latin, latvian, lithuanian, mongolian2a, mongolian, bokmal, nyn
orsk, romanian, irish, coptic, serbian, turkish, welsh, esperanto, uppersorbian
, estonian, indonesian, interlingua, icelandic, kurmanji, slovenian, polish, po
rtuguese, spanish, galician, catalan, swedish, ukenglish, pinyin, loaded.
(/usr/share/texmf-texlive/tex/latex/base/article.cls
Document Class: article 2007/10/19 v1.4h Standard LaTeX document class
(/usr/share/texmf-texlive/tex/latex/base/size10.clo
File: size10.clo 2007/10/19 v1.4h Standard LaTeX file (size option)
)
\c@part=\count80
\c@section=\count81
\c@subsection=\count82
\c@subsubsection=\count83
\c@paragraph=\count84
\c@subparagraph=\count85
\c@figure=\count86
\c@table=\count87
\abovecaptionskip=\skip41
\belowcaptionskip=\skip42
\bibindent=\dimen102
)
(/usr/share/texmf-texlive/tex/xelatex/fontspec/fontspec.sty
Package: fontspec 2008/08/09 v1.18 Advanced font selection for XeLaTeX

(/usr/share/texmf-texlive/tex/generic/ifxetex/ifxetex.sty
Package: ifxetex 2009/01/23 v0.5 Provides ifxetex conditional
)
\c@zf@newff=\count88
\c@zf@index=\count89
\c@zf@script=\count90
\c@zf@language=\count91

(/usr/share/texmf-texlive/tex/latex/longtableswas/calc.sty
Package: calc 2007/08/22 v4.3 Infix arithmetic (KKT,FJ)
\calc@Acount=\count92
\calc@Bcount=\count93
\calc@Adimen=\dimen103
\calc@Bdimen=\dimen104
\calc@Askip=\skip43
\calc@Bskip=\skip44
LaTeX Info: Redefining \setlength on input line 76.
LaTeX Info: Redefining \addtolength on input line 77.
\calc@Ccount=\count94
\calc@Cskip=\skip45
)
(/usr/share/texmf-texlive/tex/latex/xkeyval/xkeyval.sty
Package: xkeyval 2008/08/13 v2.6a package option processing (HA)

(/usr/share/texmf-texlive/tex/generic/xkeyval/xkeyval.tex
\XKV@toks=\toks14
\XKV@tempa@toks=\toks15
\XKV@depth=\count95
File: xkeyval.tex 2008/08/13 v2.6a key=value parser (HA)

(/usr/share/texmf-texlive/tex/generic/xkeyval/keyval.tex)))
(/usr/share/texmf-texlive/tex/latex/base/fontenc.sty
Package: fontenc 2005/09/27 v1.99g Standard LaTeX package

(/usr/share/texmf-texlive/tex/xelatex/euenc/eu1enc.def
File: eu1enc.def 2008/03/08 v0.1d Experimental unicode font encoding
)
LaTeX Font Info:    Try loading font information for EU1+lmr on input line 100.


(/usr/share/texmf-texlive/tex/xelatex/euenc/eu1lmr.fd
File: eu1lmr.fd 2007/01/14 v1.3 Font defs for Latin Modern
))
LaTeX Info: Redefining \itshape on input line 1163.
LaTeX Info: Redefining \slshape on input line 1166.
LaTeX Info: Redefining \scshape on input line 1169.
LaTeX Info: Redefining \upshape on input line 1172.

fontspec.cfg loaded.
(/usr/share/texmf-texlive/tex/xelatex/fontspec/fontspec.cfg))
(./demo_unicode4.aux)
\openout1 = `demo_unicode4.aux'.

LaTeX Font Info:    Checking defaults for OML/cmm/m/it on input line 4.
LaTeX Font Info:    ... okay on input line 4.
LaTeX Font Info:    Checking defaults for T1/cmr/m/n on input line 4.
LaTeX Font Info:    ... okay on input line 4.
LaTeX Font Info:    Checking defaults for OT1/cmr/m/n on input line 4.
LaTeX Font Info:    ... okay on input line 4.
LaTeX Font Info:    Checking defaults for OMS/cmsy/m/n on input line 4.
LaTeX Font Info:    ... okay on input line 4.
LaTeX Font Info:    Checking defaults for OMX/cmex/m/n on input line 4.
LaTeX Font Info:    ... okay on input line 4.
LaTeX Font Info:    Checking defaults for U/cmr/m/n on input line 4.
LaTeX Font Info:    ... okay on input line 4.
LaTeX Font Info:    Checking defaults for EU1/lmr/m/n on input line 4.
LaTeX Font Info:    ... okay on input line 4.
Package fontspec Info: Adjusting the maths setup (use [no-math] to avoid this).
 on input line 4.
\symlegacymaths=\mathgroup4
LaTeX Font Info:    Overwriting symbol font `legacymaths' in version `bold'
(Font)                  OT1/cmr/m/n --> OT1/cmr/bx/n on input line 4.
LaTeX Font Info:    Redeclaring math accent \acute on input line 4.
LaTeX Font Info:    Redeclaring math accent \grave on input line 4.
LaTeX Font Info:    Redeclaring math accent \ddot on input line 4.
LaTeX Font Info:    Redeclaring math accent \tilde on input line 4.
LaTeX Font Info:    Redeclaring math accent \bar on input line 4.
LaTeX Font Info:    Redeclaring math accent \breve on input line 4.
LaTeX Font Info:    Redeclaring math accent \check on input line 4.
LaTeX Font Info:    Redeclaring math accent \hat on input line 4.
LaTeX Font Info:    Redeclaring math accent \dot on input line 4.
LaTeX Font Info:    Redeclaring math accent \mathring on input line 4.
LaTeX Font Info:    Redeclaring math symbol \colon on input line 4.
LaTeX Font Info:    Redeclaring math symbol \Gamma on input line 4.
LaTeX Font Info:    Redeclaring math symbol \Delta on input line 4.
LaTeX Font Info:    Redeclaring math symbol \Theta on input line 4.
LaTeX Font Info:    Redeclaring math symbol \Lambda on input line 4.
LaTeX Font Info:    Redeclaring math symbol \Xi on input line 4.
LaTeX Font Info:    Redeclaring math symbol \Pi on input line 4.
LaTeX Font Info:    Redeclaring math symbol \Sigma on input line 4.
LaTeX Font Info:    Redeclaring math symbol \Upsilon on input line 4.
LaTeX Font Info:    Redeclaring math symbol \Phi on input line 4.
LaTeX Font Info:    Redeclaring math symbol \Psi on input line 4.
LaTeX Font Info:    Redeclaring math symbol \Omega on input line 4.
LaTeX Font Info:    Redeclaring math symbol \mathdollar on input line 4.
LaTeX Font Info:    Redeclaring symbol font `operators' on input line 4.
LaTeX Font Info:    Encoding `OT1' has changed to `EU1' for symbol font
(Font)              `operators' in the math version `normal' on input line 4.
LaTeX Font Info:    Overwriting symbol font `operators' in version `normal'
(Font)                  OT1/cmr/m/n --> EU1/lmr/m/n on input line 4.
LaTeX Font Info:    Encoding `OT1' has changed to `EU1' for symbol font
(Font)              `operators' in the math version `bold' on input line 4.
LaTeX Font Info:    Overwriting symbol font `operators' in version `bold'
(Font)                  OT1/cmr/bx/n --> EU1/lmr/m/n on input line 4.
LaTeX Font Info:    Overwriting symbol font `operators' in version `normal'
(Font)                  EU1/lmr/m/n --> EU1/lmr/m/n on input line 4.
LaTeX Font Info:    Overwriting math alphabet `\mathrm' in version `normal'
(Font)                  EU1/lmr/m/n --> EU1/lmr/m/n on input line 4.
LaTeX Font Info:    Overwriting math alphabet `\mathit' in version `normal'
(Font)                  OT1/cmr/m/it --> EU1/lmr/m/it on input line 4.
LaTeX Font Info:    Overwriting math alphabet `\mathbf' in version `normal'
(Font)                  OT1/cmr/bx/n --> EU1/lmr/bx/n on input line 4.
LaTeX Font Info:    Overwriting math alphabet `\mathsf' in version `normal'
(Font)                  OT1/cmss/m/n --> EU1/lmss/m/n on input line 4.
LaTeX Font Info:    Overwriting math alphabet `\mathtt' in version `normal'
(Font)                  OT1/cmtt/m/n --> EU1/lmtt/m/n on input line 4.
LaTeX Font Info:    Overwriting symbol font `operators' in version `bold'
(Font)                  EU1/lmr/m/n --> EU1/lmr/bx/n on input line 4.
LaTeX Font Info:    Overwriting math alphabet `\mathrm' in version `bold'
(Font)                  EU1/lmr/m/n --> EU1/lmr/bx/n on input line 4.
LaTeX Font Info:    Overwriting math alphabet `\mathit' in version `bold'
(Font)                  OT1/cmr/bx/it --> EU1/lmr/bx/it on input line 4.
LaTeX Font Info:    Overwriting math alphabet `\mathsf' in version `bold'
(Font)                  OT1/cmss/bx/n --> EU1/lmss/bx/n on input line 4.
LaTeX Font Info:    Overwriting math alphabet `\mathtt' in version `bold'
(Font)                  OT1/cmtt/m/n --> EU1/lmtt/bx/n on input line 4.

! Font \zf@basefont=Code2000 at 10.0pt not loadable: Metric (TFM) file or insta
lled font not found.
\zf@fontspec ...ntname \zf@suffix " at \f@size pt 
                                                  \unless \ifzf@icu \zf@set@...
l.5 \setmainfont{Code2000}

I wasn't able to read the size data for this font,
so I will ignore the font specification.
[Wizards can fix TFM files using TFtoPL/PLtoTF.]
You might try inserting a different font spec;
e.g., type `I\font<same font id>=<substitute font name>'.

! Undefined control sequence.
\zf@set@font@type ...onttype \zf@basefont \zf@tfm 
                                                  \or \zf@atsuitrue \ifnum \...
l.5 \setmainfont{Code2000}

The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.

! Font \zf@basefont=Code2000 at 10.0pt not loadable: Metric (TFM) file or insta
lled font not found.
\zf@fontspec ...ntname \zf@suffix " at \f@size pt 
                                                  \fi \zf@firsttimetrue \zf@...
l.5 \setmainfont{Code2000}

I wasn't able to read the size data for this font,
so I will ignore the font specification.
[Wizards can fix TFM files using TFtoPL/PLtoTF.]
You might try inserting a different font spec;
e.g., type `I\font<same font id>=<substitute font name>'.

\c@zf@famc@Code2000=\count96
Package fontspec Info: Defining font family for 'Code2000' with options [] on i
nput line 5.
! Font \@tempfontb=Code2000 at 10.0pt not loadable: Metric (TFM) file or instal
led font not found.
\\zf@make@font@shapes ...f@suffix " at \f@size pt 
                                                  \edef \@tempb {\fontname \...
l.5 \setmainfont{Code2000}

I wasn't able to read the size data for this font,
so I will ignore the font specification.
[Wizards can fix TFM files using TFtoPL/PLtoTF.]
You might try inserting a different font spec;
e.g., type `I\font<same font id>=<substitute font name>'.

! Font \@tempfonta=Code2000 at 10.0pt not loadable: Metric (TFM) file or instal
led font not found.
\\zf@make@font@shapes ...f@suffix " at \f@size pt 
                                                  \edef \@tempa {\fontname \...
l.5 \setmainfont{Code2000}

I wasn't able to read the size data for this font,
so I will ignore the font specification.
[Wizards can fix TFM files using TFtoPL/PLtoTF.]
You might try inserting a different font spec;
e.g., type `I\font<same font id>=<substitute font name>'.

! Font \@tempfontb=Code2000/B at 10.0pt not loadable: Metric (TFM) file or inst
alled font not found.
\\zf@make@font@shapes ...f@suffix " at \f@size pt 
                                                  \edef \@tempb {\fontname \...
l.5 \setmainfont{Code2000}

I wasn't able to read the size data for this font,
so I will ignore the font specification.
[Wizards can fix TFM files using TFtoPL/PLtoTF.]
You might try inserting a different font spec;
e.g., type `I\font<same font id>=<substitute font name>'.

Package fontspec Info: Could not resolve font Code2000/B (it might not exist) o
n input line 5.
! Font \@tempfonta=Code2000 at 10.0pt not loadable: Metric (TFM) file or instal
led font not found.
\\zf@make@font@shapes ...f@suffix " at \f@size pt 
                                                  \edef \@tempa {\fontname \...
l.5 \setmainfont{Code2000}

I wasn't able to read the size data for this font,
so I will ignore the font specification.
[Wizards can fix TFM files using TFtoPL/PLtoTF.]
You might try inserting a different font spec;
e.g., type `I\font<same font id>=<substitute font name>'.

! Font \@tempfontb=Code2000/I at 10.0pt not loadable: Metric (TFM) file or inst
alled font not found.
\\zf@make@font@shapes ...f@suffix " at \f@size pt 
                                                  \edef \@tempb {\fontname \...
l.5 \setmainfont{Code2000}

I wasn't able to read the size data for this font,
so I will ignore the font specification.
[Wizards can fix TFM files using TFtoPL/PLtoTF.]
You might try inserting a different font spec;
e.g., type `I\font<same font id>=<substitute font name>'.

Package fontspec Info: Could not resolve font Code2000/I (it might not exist) o
n input line 5.
! Font \@tempfonta=Code2000 at 10.0pt not loadable: Metric (TFM) file or instal
led font not found.
\\zf@make@font@shapes ...f@suffix " at \f@size pt 
                                                  \edef \@tempa {\fontname \...
l.5 \setmainfont{Code2000}

I wasn't able to read the size data for this font,
so I will ignore the font specification.
[Wizards can fix TFM files using TFtoPL/PLtoTF.]
You might try inserting a different font spec;
e.g., type `I\font<same font id>=<substitute font name>'.

! Font \@tempfontb=Code2000/BI at 10.0pt not loadable: Metric (TFM) file or ins
talled font not found.
\\zf@make@font@shapes ...f@suffix " at \f@size pt 
                                                  \edef \@tempb {\fontname \...
l.5 \setmainfont{Code2000}

I wasn't able to read the size data for this font,
so I will ignore the font specification.
[Wizards can fix TFM files using TFtoPL/PLtoTF.]
You might try inserting a different font spec;
e.g., type `I\font<same font id>=<substitute font name>'.

Package fontspec Info: Could not resolve font Code2000/BI (it might not exist) 
on input line 5.
! Font EU1/Code2000(0)/m/n/10=Code2000: at 10.0pt not loadable: Metric (TFM) fi
le or installed font not found.
<to be read again> 
                   relax 
l.5 \setmainfont{Code2000}

I wasn't able to read the size data for this font,
so I will ignore the font specification.
[Wizards can fix TFM files using TFtoPL/PLtoTF.]
You might try inserting a different font spec;
e.g., type `I\font<same font id>=<substitute font name>'.

Missing character: There is no a in font nullfont!
Missing character: There is no b in font nullfont!
Missing character: There is no c in font nullfont!
Missing character: There is no 1 in font nullfont!
[1

] (./demo_unicode4.aux)

 *File List*
 article.cls    2007/10/19 v1.4h Standard LaTeX document class
  size10.clo    2007/10/19 v1.4h Standard LaTeX file (size option)
fontspec.sty    2008/08/09 v1.18 Advanced font selection for XeLaTeX
 ifxetex.sty    2009/01/23 v0.5 Provides ifxetex conditional
    calc.sty    2007/08/22 v4.3 Infix arithmetic (KKT,FJ)
 xkeyval.sty    2008/08/13 v2.6a package option processing (HA)
 xkeyval.tex    2008/08/13 v2.6a key=value parser (HA)
 fontenc.sty
  eu1enc.def    2008/03/08 v0.1d Experimental unicode font encoding
  eu1lmr.fd    2007/01/14 v1.3 Font defs for Latin Modern
fontspec.cfg
 ***********

 ) 
Here is how much of TeX's memory you used:
 2186 strings out of 494665
 44134 string characters out of 1166477
 121792 words of memory out of 3000000
 5460 multiletter control sequences out of 15000+50000
 3648 words of font info for 15 fonts, out of 3000000 for 9000
 669 hyphenation exceptions out of 8191
 27i,4n,27p,449b,142s stack positions out of 5000i,500n,10000p,200000b,50000s

Output written on demo_unicode4.pdf (1 page).

Responder1

A versão inicial da pergunta era enganosa, pois identificava que havia um erro de comando indefinido, mas não mostrava qual comando era indefinido. O erro é

! Undefined control sequence.
\zf@set@font@type ...onttype \zf@basefont \zf@tfm 
                                                  \or \zf@atsuitrue \ifnum \...
l.5 \setmainfont{Code2000}

Portanto, o comando indefinido é \zf@tfm.

No entanto, este erro é essencialmente uma falha interna espúria causada por não parar no primeiro erro. (As ações de recuperação do TeX quando você passa por um erro geralmente não são particularmente úteis e apenas levam a muitos erros falsos).

O primeiro erro relatado é

! Font \zf@basefont=Code2000 at 10.0pt not loadable: Metric (TFM) file or insta
lled font not found.
\zf@fontspec ...ntname \zf@suffix " at \f@size pt 
                                                  \unless \ifzf@icu \zf@set@...
l.5 \setmainfont{Code2000}

o que significa que ele não consegue encontrar a Code2000fonte porque ela não está instalada onde Tex espera ou não está instalada.

Responder2

O problema era na verdade duplo.

  1. Eu tinha uma versão antiga fontspec(que vem no texlive-xetexpacote) no meu sistema.
  2. O pacote code2000 não estava presente no meu sistema.

1. Certificando-se de ter a versão atualizada do fontspec em seu sistema:

  1. Incluir o comando \listfilesno código ajuda a rastrear a versão correta do fontspec.sty. O arquivo de log forneceu as seguintes informações: fontspec.sty 2008/08/09 v1.18 Advanced font selection for XeLaTeX –

  2. A próxima etapa é baixar a versão atualizada do fontspec. Instale o pacote mais recente do texlive-xetexrepositório. Eu segui a resposta emInstalando e usando XeTeXpara instalar o pacote.

2. Instalando o pacote code2000.

  1. Baixe o pacote em seu respectivo linkhttp://www.fonts2u.com/code2000.font
  2. Copiar para/usr/share/fonts/
  3. fc-cache -fvpara atualizar a lista de fontes.

Agora o código compila!

Responder3

Para pessoas que lutam com o pacote de especificações de fontes e se você receber erros contínuos em erros de "sequência de controle indefinida", foi isso que descobri para resolver!

No meu caso, descobri depois de horas que o problema não era o Lyx ou as definições do preâmbulo. A origem do problema é o MiKTeX. Às vezes você precisa atualizar os pacotes que está tentando usar, para fazer isso:

Vá para a atualização do MiKTeX Fonte de atualização -> Quero obter pacotes de... Use o repositório de pacotes mais próximo -> próximo Selecione o pacote fontspec ou os pacotes que você acha que estão causando erros -: próximo Os pacotes serão atualizados -> Abra o lyx e aproveite a vida novamente depois desses erros de merda;)

informação relacionada