
Acabo de instalar MacTex y estoy ejecutando este sencillo programa:
\documentclass[12pt]{article}
\usepackage{fontspec}
\usepackage{dejavu}
\begin{document}
\setsansfont{DejaVu Sans}
\setromanfont{DejaVu Serif}
\setmonofont{DejaVu Sans Mono}
\begin{abstract}
This is the paper's abstract \ldots
\end{abstract}
\section{Introduction}
This is time for all good men to come to the aid of their party!
\end{document}
Cuando ejecuto este comando: xelatex simple.tex
obtengo:
This is XeTeX, Version 3.14159265-2.6-0.99996 (TeX Live 2016) (preloaded format=xelatex)
restricted \write18 enabled.
entering extended mode
(./simple.tex
LaTeX2e <2016/03/31>
Babel <3.9r> and hyphenation patterns for 83 language(s) loaded.
(/usr/local/texlive/2016/texmf-dist/tex/latex/base/article.cls
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class
(/usr/local/texlive/2016/texmf-dist/tex/latex/base/size12.clo))
(/usr/local/texlive/2016/texmf-dist/tex/latex/fontspec/fontspec.sty
(/usr/local/texlive/2016/texmf-dist/tex/latex/l3kernel/expl3.sty
(/usr/local/texlive/2016/texmf-dist/tex/latex/l3kernel/expl3-code.tex)
(/usr/local/texlive/2016/texmf-dist/tex/latex/l3kernel/l3xdvipdfmx.def))
(/usr/local/texlive/2016/texmf-dist/tex/latex/l3packages/xparse/xparse.sty)
(/usr/local/texlive/2016/texmf-dist/tex/latex/fontspec/fontspec-xetex.sty
(/usr/local/texlive/2016/texmf-dist/tex/latex/base/fontenc.sty
(/usr/local/texlive/2016/texmf-dist/tex/latex/euenc/eu1enc.def)
(/usr/local/texlive/2016/texmf-dist/tex/latex/euenc/eu1lmr.fd))
(/usr/local/texlive/2016/texmf-dist/tex/xelatex/xunicode/xunicode.sty
(/usr/local/texlive/2016/texmf-dist/tex/latex/tipa/t3enc.def
(/usr/local/texlive/2016/texmf-dist/tex/latex/euenc/eu1lmss.fd))
(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/graphicx.sty
(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/keyval.sty)
(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/graphics.sty
(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics/trig.sty)
(/usr/local/texlive/2016/texmf-dist/tex/latex/graphics-cfg/graphics.cfg)
(/usr/local/texlive/2016/texmf-dist/tex/xelatex/xetex-def/xetex.def
(/usr/local/texlive/2016/texmf-dist/tex/generic/oberdiek/infwarerr.sty)
(/usr/local/texlive/2016/texmf-dist/tex/generic/oberdiek/ltxcmds.sty)))))
(/usr/local/texlive/2016/texmf-dist/tex/latex/fontspec/fontspec.cfg)))
(/usr/local/texlive/2016/texmf-dist/tex/latex/dejavu/dejavu.sty
(/usr/local/texlive/2016/texmf-dist/tex/latex/dejavu/DejaVuSansMono.sty)
(/usr/local/texlive/2016/texmf-dist/tex/latex/dejavu/DejaVuSans.sty)
(/usr/local/texlive/2016/texmf-dist/tex/latex/dejavu/DejaVuSerif.sty))
(./simple.aux) (/usr/local/texlive/2016/texmf-dist/tex/latex/tipa/t3cmr.fd)
LaTeX Font Warning: Font shape `EU1/DejaVuSerif-TLF/m/n' undefined
(Font) using `EU1/lmr/m/n' instead on input line 6.
kpathsea:make_tex: Invalid fontname `DejaVu Sans', contains ' '
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
! fontspec error: "font-not-found"
!
! The font "DejaVu Sans" cannot be found.
!
! See the fontspec documentation for further information.
!
! For immediate help type H <return>.
!...............................................
l.8 \setsansfont{DejaVu Sans}
Abrí mi utilidad TexLive para ver si el dejavu
paquete está instalado y así está.
¿Que esta pasando aqui?
Respuesta1
En Mac OS xetex + fontspec
no encontrará fuentes OpenType en el árbol TeXLive si usa nombres de fuentes:
ya sea usar nombres de archivos,
o (lo más simple y recomendado por algunos) copie las fuentes que necesita en una ubicación reconocida por MacOS, así
~/Library/Fonts
o agregar un enlace simbólico dentro
~/Library/Fonts
, esto es lo que hice de una vez por todas, agrego dos enlaces simbólicos con objetivos respectivamente/Library/TeX/Root/texmf-dist/fonts/opentype
y/Library/TeX/Root/texmf-dist/fonts/truetype
. Esto supone que hay presente una estructura similar a "texdist". Entiendo que ahora se implementa a través de TeXLiveUtility en MacTeX, pero como MacTeX decidió que TL2017 elimine MacOS como Mavericks, ya no soy usuario de MacTeX, por lo que no estoy 100% seguro de que estas ubicaciones (en sí mismas enlaces simbólicos) existan con los nombres anteriores. Esta configuración necesitaNoactualización anual. Tampoco crea problemas con LuaLaTeX, ya que este último (a través deluaotfload
) es (desde hace algún tiempo, no lo era en el pasado) capaz de recortar su base de datos de fuentes a partir de duplicados que se originan al encontrar las mismas fuentes directamente en TeXLive. árbol e indirectamente a través de los dos enlaces simbólicos agregados por el usuario arriba a la ubicación oficial de MacOS, dirigidos a los repertorios del árbol TeXLive.
Respuesta2
kpathsea:make_tex: Nombre de fuente no válido `DejaVu Sans', contiene ' '
Dice que el nombre de tu fuente tiene espacio.
Para Ubuntu, si en caso de que falte dejavu, instálelo usando:
sudo apt install fonts-dejavu*
O instale todas las fuentes texlive
sudo apt install texlive-fonts-recommended
sudo apt install texlive-fonts-extra
También encontré la fuente dejavu aquí.https://ctan.org/pkg/dejavu. Pude descargar el archivo zip que contiene los archivos requeridos, pero no lo instalé porque texlive-fonts-extra
solucioné el problema que faltaba 'DejaVuSans.sty' en mi computadora. Pero si quieres instalarlo mira este blog:https://nathanvan.wordpress.com/2012/06/14/managing-latex-packages-manually-in-ubuntu-12-04/
Respuesta3
Lo siguiente me acaba de funcionar en macOS.
Descargando el dejavu
paquete como un archivo ZIP desde la página del paquete:https://ctan.org/tex-archive/fonts/dejavuEra la forma más fácil de solucionar este problema.
En el archivo ZIP, hay una dejavu
carpeta que contiene *.ttf
archivos. Abrí la /Applications/Font Book.app
aplicación, hice clic +
y la señalé a la dejavu/truetype
carpeta.
Aquí está mi configuración de Sphinx para Latex en el conf.py
archivo:
...
'fontpkg': r'''
\setmainfont{DejaVu Sans}
\setsansfont{DejaVu Sans}
\setmonofont{DejaVu Sans Mono}
''',
Para que funcione en Linux Ubuntu 20, he utilizado el apt install
comando recomendado por Sawan Vaidya.