Я пытаюсь использовать его, \mathcal
и он работает для нижних индексов, но не для главной буквы.
\begin{table}[h]
\centering
\caption{Data integration framework}
\label{tab:data_integration}
\begin{tabular}{| l | c | c |}
\toprule
& Language & Alphabet \\
\midrule
Global schema & \[\mathcal{L}_{\mathcal{G}}\] & \[\mathchal{A}_\mathcal{G}\] \\
Source schema & \[\mathcal{L}_{\mathcal{S}}\] & \[\mathcal{A}_{\mathcal{S}}\] \\
\hline
Query \[\mathcal{q}_{\mathcal{S}}\] & \[\mathcal{L}_{\mathcal{M},\mathcal{S}}\] & \[\mathcal{A}_{\mathcal{S}}\] \\
Query \[\mathcal{q}_{\mathcal{G}}\] & \[\mathcal{L}_{\mathcal{M},\mathcal{G} \] & \[\mathcal{A}_{\mathcal{G}}\] \\
\bottomrule
\end{tabular}
\end{table}
Я использую pdflatex
и получаю вот такую ошибку
! LaTeX Error: \mathcal allowed only in math mode.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.34 Global schema & \[\mathcal
{L}_{\mathcal{G}}\] & \[\mathcal{A}_\mathcal...
?
! Missing $ inserted.
<inserted text>
$
l.34 Global schema & \[\mathcal{L}_
{\mathcal{G}}\] & \[\mathcal{A}_\mathcal...
? x
Вот полная преамбула
\documentclass[12pt]{report}
\usepackage[utf8]{inputenc}
\PassOptionsToPackage{
natbib=true,
style=authoryear-comp,
backend=biber,
url=false,
doi=false,
isbn=false,
eprint=false,
}{biblatex}
\usepackage[backend=biber,bibencoding=utf8]{biblatex}
\addbibresource{/home/enrico/Università/uni_bib.bib}
\usepackage[bottom]{footmisc}
\usepackage[inline]{enumitem}
\usepackage{hyperref}
\usepackage{array}
\usepackage{svg}
\usepackage{graphicx}
\graphicspath{ {images/} }
\usepackage{tabularx}
\usepackage{booktabs}
\usepackage[T1]{fontenc}
\usepackage{blindtext}
\usepackage[a4paper,width=150mm,top=25mm,bottom=25mm,bindingoffset=6mm]{geometry}
\usepackage[final]{microtype}
\usepackage{setspace}
\onehalfspacing
%%%This is to have the titles of the chapters without the number%%%
\usepackage[raggedright,pagestyles]{titlesec}
\newpagestyle{main}{
\sethead[\thepage][][\chaptertitle]{\chaptertitle}{}{\thepage}
\headrule
}
\pagestyle{main}
\titleformat{\chapter}{\normalfont\huge\bfseries}{}{0pt}{\Huge}
Я не понимаю, что не так с моим использованием \[ \]
.
@quark67 ответил в комментарии. В этом случае мне нужно использовать $...$
вместо \[ \]
.
решение1
Ошибка немного тонкая. Команда \[
выполняет некоторую работу и в конечном итоге выдает команду $$
на запуск режима отображения математики (обратите внимание, что это $$
никогда не должно использоваться в document
среде LaTeX, но, конечно, режим отображения математики использует его внутренне).
Но что делает $$
в вашем случае? Ячейка выравнивания типа l
, c
или r
(не p
) обрабатывается вограниченный горизонтальный режимгде режим отображения математики не допускается и, по правилу, $$
просто входит и выходит из режима встроенной математики. Таким образом, TeX являетсянетв математическом режиме, когда \mathcal
находится. Отсюда (правда, загадочно)
! LaTeX Error: \mathcal allowed only in math mode.
сообщение об ошибке. Увы, возможно, можно было бы отловить ошибку использования \[
в ячейке таблицы типа или когда TeX находится в ограниченном горизонтальном режиме l
, но в настоящее время это не реализовано (и я не вижу для этого никаких реальных причин).c
r
Для этой задачи используйте режим встроенной математики, или \(...\)
.$...$
Обратите внимание, что \mathcal{q}
при имеющихся у вас настройках шрифтов не будет получено разумного результата.