Pergunta

Ao usar o pacote MNSymbol, o PDFlateX fornece dois avisos de fonte:

LaTeX Font Warning: Encoding 'OMS' has changed to 'U' for symbol font
(Font)              'symbols' in the math version 'normal' on input line 120.

LaTeX Font Info:    Overwriting symbol font 'symbols' in version 'normal'
(Font)                  OMS/cmsy/m/n --> U/MnSymbolF/m/n on input line 120.

Acontece que isso provavelmente se deve a um confronto com o pacote AMSSyMB.

Como preciso de apenas alguns símbolos do pacote: existe uma maneira de carregar um símbolo de um pacote, em vez de tudo?

Foi útil?

Solução

Aqui está como eu resolvi isso:

Faça o download do script Perl "makefakemnSymbol" da fonte abrangente do documento do símbolo de látex:http://mirror.ctan.org/info/symbols/comprensive/source/makefakemnSymbol

Em seguida, na linha de comando fazer chmod +x makefakeMnSymbol para torná -lo executável. Então corra

./makefakeMnSymbol `kpsewhich MnSymbol.sty` > fakeMnSymbol.sty

Coloque o FakemnSymbol.sty em um diretório de escolha Texmf (global ou local) e execute texhash

Se você agora colocar

\usepackage{fakeMnSymbol}

No seu preâmbulo, agora você pode usar qualquer mnSymbol, como \powerset ao prefixá -lo como \MNSpowerset

Muito obrigado a Scott Pakin por este hack ... e por seu guia abrangente de símbolos ...


Este hack tem problemas com símbolos em subscritos/superscripts. Uma volta é usar o olhar para o fakeMnSymbol.sty Fonte para descobrir qual fonte o símbolo que você deseja foi carregado, junto com seu número. Aqui está um exemplo de um dos meus preâmbulos em que eu substituo o embutido \boxminus com um mnsymbol:

\usepackage[]{fakeMnSymbol}
\DeclareSymbolFont{mnsymbolc}{U}{MnSymbolC}{m}{n}
\let\boxminus=\undefined
\DeclareMathSymbol{\boxminus}{2}{mnsymbolc}{112}

Outras dicas

Esses avisos não são nada com que se preocupar. De fato, no próximo lançamento do látex, eles desaparecerão (veja o Relatório de bug original). Não há ETA nisso, no entanto.

Além disso, existe alguma chance real que isso afete a digitação do documento?

Não.

Existe alguma maneira de impedir isso?

Pode corrigir o código da mensagem de aviso de látex antes de carregar o pacote e restaurá -lo novamente depois (foi o que eu fiz no passado em meus próprios pacotes), mas como usuário, eu apenas aprenderei a ignorar o aviso.

O seguinte pode ajudar. Esse é o código que eu tive que adicionar para obter apenas o símbolo bigominus do pacote MNSymbol.

Declarafontfamily {u} {mnsymbolf} {}
Declaresymbolfont {mnsymbols} {u} {mnsymbolf} {m} {n}
Declarafontshape {u} {mnsymbolf} {m} {n} {
<-6> mnSymbolf5
<6-7> MnSymbolf6
<7-8> MnSymbolf7
<8-9> MnSymbolf8
<9-10> MnSymbolf9
<10-12> MnSymbolf10
<12-> mnSymbolf12} {}
Declaremathsymbol { bigominus} { Mathop} {mnsymbols} {55}

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top