Latex - странное поведение символа "минус"
Есть такой минимальный воспроизводимый пример:
\documentclass[a4paper,11pt]{article}
\usepackage{cmap}
\usepackage[utf8]{inputenc}
\usepackage[english,russian]{babel}
\begin{document}
("-")
\end{document}
Если попытаться собрать pdf-ку, то выдаётся ошибка:
TeX capacity exceeded, sorry [input stack size=5000]. ("-"
Преодолеть ошибку можно двумя способами. И оба способа - странные... Вот они:
- Закомментировать строку \usepackage[english,russian]{babel} Документ отображается правильно.
Написать тело документа, окружтв символ минуса пробелами: (" - ") Ошибка уходит, но документ при этом отображается НЕправилно. Вот так:
( - ")
Я предполагаю, чтот загадочное поведение знака "минус" (это действительно знак "минус" - проверял!) объясняется тем, что он воспринимается как символ переноса. Но как бороться с этим делом?
Ответы (1 шт):
Это вина пакетов babel и babel-russian. Они
определяют так назваемые shorthands:
A shorthand is a sequence of one or two characters that expands to arbitrary TEX code. Shorthands can be used for different kinds of things, for example: (1) in some languages shorthands such as"aare defined to be able to hyphenate the word if the encoding isOT1; (2) in some languages shorthands such as!are used to insert the right amount of whitespace; (3) several kinds of discretionaries and breaks can be inserted easily with"-,"=, etc. (…)
Если вам действительно нужны именно простые двойные кавычки, можете попробовать вот так:
\catcode`@ = 11
\bbl@deactivate{"}
("-")
Или можете использовать русские кавычки вот так:
("`-"')
("<-">)