Występuje błąd „Missing $ insert” w LaTeX

184

Próbuję napisać w lateksie:

\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}

Z jakiegoś powodu dostaję mnóstwo błędów. Myślę, że jest coś z użyciem słowa „wstawić”. Dostaję błędy takie jak „Missing $ insert”, więc wygląda na to, że parsuje próby naprawienia niektórych „błędów” z moich części. Czy muszę uciec od słów typu „wstaw”, jak to zrobić?

Espen Herseth Halvorsen
źródło

Odpowiedzi:

335

„Brakujące wstawione $” jest prawdopodobnie spowodowane podkreśleniami i słupkami. Te znaki w LaTeX mają specjalne znaczenie w trybie matematycznym (ograniczonym $znakami). Spróbuj uciec przed nimi; np. update\_elementzamiast update_element.

Jeśli jednak próbujesz wyświetlić kod, lepszym rozwiązaniem byłoby użycie \verbpolecenia , które spowoduje wpisanie tekstu czcionką o stałej szerokości i automatycznie będzie poprawnie obsługiwać podkreślenia i paski (bez konieczności ucieczki przed nimi \).

Will Vousden
źródło
Miałem ten błąd, ponieważ $w jednym z tytułów w mojej bibliografii znajdował się symbol. Korzystanie \$pomogło.
azet52
44

To właściwie podkreślenia. Użyj \_zamiast tego lub dołącz pakiet podkreślenia .

Nietzche-jou
źródło
Polecony texlive-latex ma pakiet podkreślenia. Musiałem także dodać podkreślenie usepackage do mojego pliku
sphinx.sty
Korzystanie z pakietu podkreślenia rozwiązało również problem, który napotkałem podczas próby wygenerowania pliku PDF z dokumentu knitr w RStudio za pomocą funkcji „semTable” (zanim spowodował błąd „brakujące $”.
Czy
17

Też miałem ten problem. Rozwiązałem to, usuwając niepotrzebną pustą linię między znacznikami równań . To daje błąd:

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

\end{equation}

podczas gdy ten kod kompiluje się pomyślnie:

\begin{equation}
P(\underline{\hat{X}} | \underline{Y}) = ...
\end{equation}
Utku Özdemir
źródło
To rozwiązało mój problem. Używałem etykiety \ w równaniu i zostawiłem po niej pustą linię.
jpmorin
6

miałem też ten problem, ale plik śliniak nie mógł się ponownie skompilować. Usunąłem problem, który był podkreśleniem w polu notatki, i ponownie skompilowałem plik tex, ale ciągle otrzymywałem te same błędy. Na koniec usunąłem skompilowany plik bib (chyba .bbl) i działał dobrze. Musiałem uciec z _ używając odwrotnego ukośnika.

Adrian
źródło
Miałem podkreślenie w polu notatki. Bardzo dziękuję za sugestię!
Richard
6

Miałem ten sam problem - przeczytałem wszystkie te odpowiedzi, ale niestety żadna z nich nie działała dla mnie. W końcu próbowałem usunąć tę linię

%\usepackage[latin1]{inputenc}

i wszystkie błędy zniknęły.

Oprogramowanie Matrix
źródło
4

Moje pierwsze przypuszczenie jest takie, że LaTeX dusi się | poza środowiskiem matematycznym. Brak wstawionego $ jest zwykle objawem czegoś takiego.

Znak wysokiej wydajności
źródło
1
Jak wskazuje @Will, LaTeX nie lubi _. Wygląda też na lepsze wytłumaczenie niż moje.
Mark High Performance
1

Myślę, że daje to błąd ze względu na symbol podkreślenia.

Uwaga: symbolu podkreślenia nie należy pisać bezpośrednio, należy pisać jak jako \_.

Napraw więc tego rodzaju specjalne błędy symboli.

Achilles Ram Nakirekanti
źródło
1

Ten błąd można również uzyskać, jeśli użyjesz greckich znaków specjalnych, takich jak \ alpha \ beta itd. Poza trybem matematycznym. Po owinięciu ich w \ (... \) błąd zniknął.

Alphacoder
źródło
To zadziałało dla mnie. Wiesz, dlaczego to działa i jak to zrobić bez owijania?
Octane
to postać ucieczki.
Brndn
0

Miałem ten symbol _w nagłówku jednej tabeli i kod nie działał, więc musiałem go usunąć.

Edwin Torres
źródło
0

W swoim kodzie, kiedy dostałem błąd, sprawdziłem możliwe źródło. W wierszu wpisałem początek \[i koniec, \]dzięki czemu $pojawił się błąd braku, chociaż próbowałem użyć $obu nawiasów. Usunięcie nawiasów lub użycie $[$zamiast $\[$rozwiązania mojego problemu. Jeśli masz coś takiego, spróbuj zmienić.

Bhanu Chander
źródło