2010-03-19 9 views
149

provo a scrivere quanto segue in lattice:

\begin{itemize} 
    \item \textbf{insert(element|text)} inserts the element or text passed at the start of the selection. 
    \item \textbf{insert_after(element|text)} inserts the element or text passed at the end of the selection. 
    \item \textbf{replace(element|text)} replaces the selection with the passed text/element. 
    \item \textbf{delete()} deletes the selected text. 
    \item \textbf{annotate(name,value)} annotates the selected text with the passed name and value-pair. This can either be a hidden meta-data about the selection, or can alter the visible appearance. 
    \item \textbf{clear_annotation()} removes any annotation for this specific selection. 
    \item \textbf{update_element(value)} performs an update of the element at the selection with the passed value. 
\end{itemize} 

Per qualche ragione, ho ottenere un mucchio di errori. Penso che ci sia qualcosa con l'uso della parola "inserire". Ottengo errori come "Manca $ inserito", quindi sembra che l'analisi cerchi di correggere alcuni "errori" sulle mie parti. Devo sfuggire parole come "insert", come faccio?

risposta

271

Il "Mancato $ inserito" è probabilmente causato da trattini bassi e barre. Questi caratteri in LaTeX hanno un significato speciale in modalità matematica (che è delimitata da $ caratteri). Prova a sfuggirle; per esempio. update\_element anziché update_element.

Tuttavia, se si sta cercando di visualizzare il codice, una soluzione migliore sarebbe quella di utilizzare il \verb command, che comporre il testo in un font a spaziatura fissa e si occuperà automaticamente di sottolineatura e barre in modo corretto (non c'è bisogno di sfuggire loro con \).

3

La mia prima ipotesi è che LaTeX soffochi su | fuori da un ambiente matematico. Manca $ inserito di solito è un sintomo di qualcosa del genere.

+0

Come @Will fa notare, LaTeX non piace _. Sembra una spiegazione migliore della mia. –

33

In realtà è il trattino di sottolineatura. Utilizzare invece \_ o includere il pacchetto underscore.

+0

texlive-latex-raccomandato ha il pacchetto di sottolineatura. Ho dovuto aggiungere anche il carattere di sottolineatura degli archivi nel mio file sphinx.sty – zerocog

5

inoltre, ho avuto questo problema ma il file bib non si ricompilava. Ho rimosso il problema, che era una sottolineatura nel campo della nota, e ho compilato di nuovo il file tex, ma ho continuato a ottenere gli stessi errori. Alla fine ho eliminato il file bib compilato (.bbl credo) e ha funzionato bene. Ho dovuto sfuggire al _ usando una barra rovesciata.

+0

I per avere un segno di sottolineatura in un campo di nota. Grazie mille per aver suggerito questo! – Richard

17

Ho avuto anche questo problema. Ho risolto il problema rimuovendo la linea vuota non necessaria tra i tag equazione. Questo dà l'errore:

\begin{equation} 
P(\underline{\hat{X}} | \underline{Y}) = ... 

\end{equation} 

mentre questo codice viene compilato con successo:

\begin{equation} 
P(\underline{\hat{X}} | \underline{Y}) = ... 
\end{equation} 
+0

Questo ha risolto il mio problema. Stavo usando un'etichetta \ all'interno dell'equazione e avevo lasciato una riga vuota dopo di essa. – jpmorin

2

Ho avuto lo stesso problema - e ho letto tutte queste risposte, ma purtroppo nessuno di loro ha lavorato per me. Alla fine ho provato a rimuovere questa riga

e tutti gli errori sono scomparsi.

0

Penso che dia l'errore a causa del simbolo di sottolineatura.

Nota: il simbolo di sottolineatura non deve essere scritto direttamente, è necessario scrivere come \_.

Quindi correggi questi errori speciali di simbolo speciale.

0

È inoltre possibile ottenere questo errore se si utilizzano caratteri speciali con caratteri greci come \ alpha \ beta e così via, al di fuori della modalità matematica. Dopo averli avvolti in \ (... \) l'errore era sparito.

0

Avevo questo simbolo _ nella testa di una tabella e il codice non è stato eseguito, quindi ho dovuto eliminare.