
Я пытаюсь использовать \newtheorem
.
Вот мой небольшой файлик mystyle.sty
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsthm}
\newtheorem{action}{$\checkmark$ Action}
\newtheorem{law}{$\bigodot$ Law}
\newtheorem{fact}{$\boxdot$ Fact}
\newtheorem{warn}{$\warning$ Caveat}
Вот текстовый файл:
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amssymb}
%\usepackage{arevmath}
\usepackage{mystyle}
\begin{document}
\section{Head}
\begin{law}
The world is round
\end{law}
\begin{fact}
\(g =99.8 m/s^2\)
\end{fact}
\begin{action}
Teach co-recursion before recursion
\end{action}
\begin{warn}
Beware
\end{warn}
\end{document}
Итак, теперь вопросы:
- Я хочу предупреждающий символ, который есть,
arevmath
но общий вид без негоarevmath
лучше. Как управлять обоими? - Содержание идет курсивом. Но примеры, которые я нахожу для
newtheorem
его использования, идут обычным римским шрифтом. Что-то еще не так?? например... - Я взял eg из встроенного источника, который использует
\makeatletter
. Я вообще не уверен, как его использовать, за исключением какой-то неопределенной директивы: use in,.tex
not in.sty
.
решение1
Вы хотите использовать только символы, предоставляемые arevmath
, а не менять все математические символы для его использования.
На самом деле, arevmath
использует ams-mdbch
и мы видим, в ams-mdbch.sty
,
\xdef\checkmark{\noexpand\mathhexbox{\hexnumber@\symmathdesignA}D8}
\DeclareMathSymbol{\boxdot}{\mathbin}{mathdesignA}{"80}
Определение \bigodot
является стандартным, хотя и с использованием другого шрифта. Команда \warning
находится в arevsymbols.tex
и мы видим
\DeclareMathSymbol{\warning}{\mathalpha}{extraup}{125} % uni26A0
Хорошо, файл ams-mdbch.sty
есть
\DeclareSymbolFont{mathdesignA}{MDA}{mdbch}{b}{n}
\SetSymbolFont{largesymbols} {normal}{OMX}{mdbch}{m}{n}
и arevmath.sty
мы видим
\DeclareSymbolFont{extraup}{U}{zavm}{m}{n}
Довольно серьезная гонка! Но у нас есть все ингредиенты. Единственная проблема — \bigodot
, но ее можно решить.
\documentclass[11pt]{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amssymb}
%\usepackage{arevmath}
\DeclareFontEncoding{MDA}{}{}
\DeclareFontSubstitution{MDA}{cmr}{m}{n}
\newcommand{\arevcheckmark}{{\usefont{MDA}{mdbch}{b}{n}\symbol{"D8}}}
\newcommand{\arevbigodot}{%
$\vcenter{\hbox{\usefont{OMX}{mdbch}{m}{n}\symbol{"4A}}}$%
}
\newcommand{\arevboxdot}{{\usefont{MDA}{mdbch}{b}{n}\symbol{"80}}}
\newcommand{\arevwarning}{{\usefont{U}{zavm}{m}{n}\symbol{125}}}
\newtheorem{action}{\arevcheckmark\ Action}
\newtheorem{law}{\arevbigodot\ Law}
\newtheorem{fact}{\arevboxdot\ Fact}
\newtheorem{warn}{\arevwarning\ Caveat}
\begin{document}
\section{Head}
\begin{law}
The world is round
\end{law}
\begin{fact}
\(g =99.8 m/s^2\)
\end{fact}
\begin{action}
Teach co-recursion before recursion
\end{action}
\begin{warn}
Beware
\end{warn}
\end{document}
Я допустил неправильный набор единиц измерения в 9,8 м/с2 , исправьте это.
решение2
Моя текущая версия благодаря помощи egreg.
[Да, единицы измерения неверны. Но это был отвлекающий маневр для меня в любом случае, чтобы произвести некоторые mwe; это не то, что мне сейчас нужно в моем реальном примере]
\documentclass[11pt]{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsthm}
%\usepackage{arevmath}
\DeclareFontEncoding{MDA}{}{}
\DeclareFontSubstitution{MDA}{cmr}{m}{n}
\newcommand{\arevcheckmark}{{\usefont{MDA}{mdbch}{b}{n}\symbol{"D8}}}
%% \newcommand{\arevbigodot}{%
%% $\vcenter{\hbox{\usefont{OMX}{mdbch}{m}{n}\symbol{"4A}}}$%
%% }
\newcommand{\arevboxdot}{{\usefont{MDA}{mdbch}{b}{n}\symbol{"80}}}
\newcommand{\arevwarning}{{\usefont{U}{zavm}{m}{n}\symbol{125}}}
\theoremstyle{definition}
\newtheorem{action}{\arevcheckmark\ Action}
\newtheorem{law}{\(\odot\)\ Law}
\newtheorem{fact}{\(\boxdot\)\ Fact}
\newtheorem{warn}{\arevwarning\ Caveat}
\begin{document}
\section{Head}
\begin{law}
The world is round
\end{law}
\begin{fact}
\(g =99.8 m/s^2\)
\end{fact}
\begin{action}
Teach co-recursion before recursion
\end{action}
\begin{warn}
Beware
\end{warn}
\end{document}