
Estou tentando criar um pacote muito básico para usar com uma fonte chamada HEJI2 (que fornece alguns símbolos musicais para usar em linha). Meu código fica assim:
\ProvidesPackage{heji}[2019/12/9 v1.0]
\RequirePackage{fontspec}[2018/07/30 vv2.6h]
\newfontfamily{\HEfont}{HEJI2.ttf}
\makeatletter
\newcommand*{\fsize}{\dimexpr\f@size pt\relax}
\makeatother
\newcommand{\heji}[2]{\mbox{#1\hspace{0.3mm}\raisebox{0.25\fsize}{\large\HEfont #2}}}
\DeclareOption{accfirst}{
\renewcommand{\heji}[2]{\mbox{\raisebox{0.25\fsize}{\large\HEfont #2}#1}}
}
\ProcessOptions\relax
\endinput
Usar o pacote parece funcionar, mas quando o compilo, recebo os seguintes erros (não fatais):
! Missing = insterted for \ifnum.
<to be read again>
v
1.4
?
! Missing number, treated as zero.
<to be read again>
v
1.4
?
Não tenho certeza do que isso significa exatamente. Parece que consigo retornar pelas mensagens e no final recebo um .pdf formatado corretamente, de acordo com as especificações do meu pacote. Agradeceríamos qualquer ajuda! (Compilando com Lualatex)
Responder1
Você pode encontrar, por exemplo, emLaTeX2ε para autores( texdoc usrguide
), seção3.2 Comandos de preâmbulo:
Na verdade, esse parágrafo descreve o segundo argumento opcional para \documentclass
, mas o analisador de data é o mesmo. EmAs fontes LaTeX2ε( texdoc source2e
), seção68.2 Nome e versão do pacotehá mais ou menos o mesmo parágrafo sobre \ProvidesPackage
.
Em primeiro lugar, esse formato de data (ainda é suportado, mas) está obsoleto e agora o formato ISO YYYY-MM-DD
deve ser usado.
E essa exigência não é inteiramente verdadeira. Especificamente odiao campo deve ser DD
, enquanto os outros dois podem até estar vazios (o bom senso aconselha não ;-), então, por exemplo, \ProvidesPackage{heji}[1/1/09 v1.0]
teria funcionado. Você teve a infelicidade de remover o zero inicial do lugar errado ;-)