\usepackage{newunicodechar} 加载但命令无效

\usepackage{newunicodechar} 加载但命令无效

尝试在 LaTeX 源代码中使用纯文本 Unicode(UTF-8 编码)符号。对相关符号进行了自己的定义(仅限 ASCII),只是为了证明这一概念。

\documentclass[12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[verbose]{newunicodechar}
%⋮
 % Unicode
\newunicodechar{♢}{<>}
\newunicodechar{⧫}{!}
\newunicodechar{⬠}{(P)}
%⋮
\begin{document}
%⋮
\subsection{Introduction}
♢ ⧫ ⬠ 
%…
\end{document}

由于没有任何 \newunicodechar,编译彻底失败:

This is pdfTeX, Version 3.14159265-2.6-1.40.15 (TeX Live 2014/Debian) (preloaded format=latex 2015.4.1)  10 JUL 2017 16:47  
entering extended mode  
 restricted \write18 enabled.  
 %&-line parsing enabled.  
**PP5_tiling.tex  
(./PP5_tiling.tex  
LaTeX2e <2014/05/01>  
(/usr/share/texlive/texmf-dist/tex/latex/newunicodechar/newunicodechar.sty  
Package: newunicodechar 2012/11/12 v1.1 Defining Unicode characters  
)  
! Package inputenc Error: Unicode char \u8:  not set up for use with LaTeX.  

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

l.63 ♢   
      ⧫ ⬠  
?

你可能做错什么?

答案1

错误信息是

! Package inputenc Error: Unicode char   (U+202F)
(inputenc)                not set up for use with LaTeX.

并且 U+202F NARROW NO-BREAK SPACE 未在任何地方定义。

如果我为其添加声明,则不会出现问题。

\documentclass[12pt]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[verbose]{newunicodechar}
%⋮
 % Unicode
\newunicodechar{♢}{<>}
\newunicodechar{⧫}{!}
\newunicodechar{⬠}{(P)}
\newunicodechar{ }{\nolinebreak\hspace{.1em}}
%⋮
\begin{document}
%⋮
\subsection{Introduction}
♢ ⧫ ⬠ 
%…
\end{document}

注意 T1 编码,否则您将无法获得<>

在此处输入图片描述

为什么你会收到不同的错误消息?因为你使用的是三年前的 TeX 发行版。是时候更新了。

相关内容