바벨은 발언을 깨고
Oct 13 2020
어떤 이유로 이것은 작동하지 않습니다.
\documentclass{article}
\usepackage[english,hebrew]{babel}
\usepackage{amsthm}
\newtheorem*{remark}{Remark}
\begin{document}
\begin{remark}
remark
\end{remark}
\end{document}
"{삽입 됨"이 없기 때문입니다.
하지만이 줄을 제거하면 \usepackage[english,hebrew]{babel}정상적으로 컴파일됩니다.
babel및 둘 다 어떻게 사용할 수 remark있습니까?
답변
1 Davislor Oct 13 2020 at 22:15
다음은 LuaLaTeX에서 저에게 효과적이었습니다.
\documentclass{article}
\tracinglostchars=2
\usepackage{unicode-math}
\usepackage[bidi=basic]{babel}
\babelprovide[import,main, onchar=ids fonts]{hebrew}
\babelprovide[onchar=ids fonts]{english}
\defaultfontfeatures{ Scale=MatchLowercase, Ligatures=TeX, Renderer=HarfBuzz }
\babelfont{rm}
[Ligatures=Common,Scale=1.0]{TeX Gyre Schola}
\babelfont[hebrew]{rm}
[Ligatures=Discretionary,
Language=Default,
UprightFont=*-Medium ,
BoldFont=*-Bold ,
ItalicFont=*-Medium , % Intentionally disable italics, which slant the opposite way.
BoldItalicFont=*-Bold]{DavidCLM}
\babelfont{sf}
[Ligatures=Common]{TeX Gyre Heros}
\babelfont[hebrew]{sf}
[Ligatures=Discretionary,Language=Default]{Miriam CLM}
\babelfont{tt}
{inconsolata}
\babelfont[hebrew]{tt}
[Language=Default]{Miriam Mono CLM}
\setmathfont{TeX Gyre Schola Math}
\babeltags{hebrew=hebrew}
\babeltags{english=english}
\usepackage{amsthm}
\newtheorem*{remark}{Remark}
\begin{document}
\begin{english}
\begin{remark}
remark בעברית
\end{remark}
\end{english}
\end{document}
이 예에서는 David CLM에서 기울임 꼴이 반대 방향으로 기울어 진 기울임 꼴과 잘 섞이지 않기 때문에 이탤릭체를 비활성화했지만 활성화하거나 FakeSlantto ItalicFeatures를 추가하여 왼쪽에서 오른쪽 기울임 꼴을 얻을 수도 있습니다 .
onchar=언어 옵션을 제거 할 수 있습니다 . 그런 다음 LuaLaTeX가 언어를 자동 감지하는 대신 \begin{english}또는 로 모든 언어에 태그를 지정해야 \texthebrew합니다. 그러나 전체 단락을 영어로 작성하면 올바른 서식을 얻을 수 있습니다.
2 JavierBezos Oct 13 2020 at 20:41
확실하지 않지만 .NET에 버그가 있다고 말하고 싶습니다 amsthm. 이 패키지를로드 한 후 다음 재정의를 시도하십시오.
\makeatletter
\def\deferred@thm@head#1{%
\if@inlabel \indent \par \fi % eject a section head if one is pending
\if@nobreak
\adjust@parskip@nobreak
\else
\addpenalty\@beginparpenalty
\addvspace\@topsep
\addvspace{-\parskip}%
\fi
\global\@inlabeltrue
\everypar{\the\dth@everypar}% <<<<<<<<<< Changed
\sbox\@labels{\normalfont#1}%
\ignorespaces
}
\makeatother