Domanda

Quando si utilizza il pacchetto MnSymbol, pdflatex fornisce due avvertimenti sui caratteri:

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.

Si scopre che ciò è probabilmente dovuto a uno scontro con il pacchetto AMSSymb.

Dal momento che ho bisogno di pochi simboli dal pacchetto: c'è un modo per caricare un simbolo da un pacchetto, al posto di tutti?

È stato utile?

Soluzione

Ecco come ho risolto questo:

Scarica lo script perl " makefakeMnSymbol " dalla fonte completa del documento con il simbolo del lattice: http://mirror.ctan.org/info/symbols/comprehensive/source/ makefakeMnSymbol

Quindi, dalla riga di comando, fai chmod +x makefakeMnSymbol per renderlo eseguibile. Quindi, esegui

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

Metti fakeMnSymbol.sty in una directory texmf di scelta (globale o locale) ed esegui texhash

Se ora metti

\usepackage{fakeMnSymbol}

nel tuo preambolo, ora puoi usare qualsiasi MnSymbol, come \powerset prefissandolo come \MNSpowerset

Un grande ringraziamento a Scott Pakin per questo trucco ... e per la sua guida completa ai simboli ...


Questo hack ha problemi con i simboli in pedice / apice. Una soluzione alternativa consiste nell'utilizzare guardare l'origine fakeMnSymbol.sty per trovare da quale carattere è stato caricato il simbolo desiderato, insieme al suo numero. Ecco un esempio di uno dei miei preamboli in cui sovrascrivo il \boxminus integrato con un MnSymbol:

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

Altri suggerimenti

Questi avvertimenti non sono nulla di cui preoccuparsi. Infatti, nella prossima versione di LaTeX scompariranno (vedi segnalazione bug originale ). Nessun ETA al riguardo, tuttavia.

  

Inoltre, c'è qualche reale possibilità che ciò influenzi la composizione del documento?

No.

  

c'è un modo per impedirlo?

Posso patchare il codice del messaggio di avviso LaTeX prima di caricare il pacchetto e poi ripristinarlo in seguito (questo è quello che ho fatto in passato nei miei pacchetti), ma come utente imparerei semplicemente a ignorare il avvertimento.

Potrebbe essere utile quanto segue. Questo è il codice che ho dovuto aggiungere per estrarre solo il simbolo \ bigominus dal pacchetto MnSymbol.

\ DeclareFontFamily {U} {} {} MnSymbolF
\ {DeclareSymbolFont mnsymbols} {U} {} {MnSymbolF m} {n}
\ DeclareFontShape {U} {} {MnSymbolF m} {n} {
    lt &; -6 gt &; MnSymbolF5
   & Lt; gt 6-7 &; MnSymbolF6
   & Lt; 7-8 gt &; MnSymbolF7
   & Lt; gt 8-9 &; MnSymbolF8
   & Lt; gt 9-10 &; MnSymbolF9
  & Lt; 10-12 gt &; MnSymbolF10
  lt; 12 - gt & &; MnSymbolF12} {}
\ DeclareMathSymbol {\ bigominus} {\ mathop} {mnsymbols} {55}

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top