
Я хотел бы объявить символ обратной кавычки `
степенью математической операции ^
, так что, написав
\documentclass{article}
\usepackage{amsmath}
% \DeclareMathSymbol{`}{\mathbin}{symbols}{^}
\begin{document}
$3`2$
\end{document}
Я думал использовать \DeclareMathSymbol{<symbol>}{<type>}{<sym-font>}{<slot>}
, но не уверен, что для этого есть код слота, ^
так как это операция, а не символ.
Я бы хотел избежать использования, \newcommand
потому что в противном случае мне придется писать 3\`2
, чтобы получить власть.
БЕЗБОЛЕЗНЕННОЕ РЕШЕНИЕ
Установите легковесную программу autohotkey и создайте скрипт со следующим кодом
NumLock::
send {^}
return
После запуска вы можете напечатать символ каретки, ^
нажав клавишу Num Lock на цифровой клавиатуре.
Вы можете изменить NumLock на любой другой, проверьтесписок всех ключейисписок всех горячих клавиш, например
MButton:: middle/wheel mouse button
^p:: ctrl+p
+p:: shift+p
F2:: F2
решение1
Все это на самом деленетрекомендуется, если вы действительно не знаете, что делаете и/или не готовы страдать от последствий. По словам мистера Кота, это «опасная жизнь», и вы можете оказаться мертвы, когда кто-то откроет коробку ;-)
\DeclareMathSymbol
используется для выбора глифа в шрифте, который будет использоваться для написания определенного символа на бумаге. Надстрочный индекс происходит на гораздо более низком уровне в TeX. Обычно символ ^
имееткод категории (catcode)7, что является "маркером надстрочного индекса". Это означает, что всякий раз, когда TeX видит a ^
, он создает надстрочный индекс. В простейшем случае вы можете добиться этого эффекта, изменив catcode a `
на 7:
\documentclass{article}
\catcode`\`=7
\begin{document}
$3`2$ and some `quoted' text
\end{document}
Однако код выше вызовет , Missing $ inserted
поскольку теперь это `
надстрочный символ, он предназначен только для использования в математическом режиме. Вы можете переопределить, \`
чтобы он означал «нормальный» (catcode 12) `
символ:
\documentclass{article}
\renewcommand\`{`}
\catcode`\`=7
\begin{document}
$3`2$ and some \`quoted' text
\end{document}
и тогда вы не сможете написать гравис, скажем, D\'ej\`a vu
(вывод будет "Déj'a vu"). Плюс, любой код, который полагается на `
токен catcode-12, потерпит неудачу.
Возможно, лучшей альтернативой будет сделать `
активного персонажатольков математическом режиме и определим его равным надстрочному токену:
\documentclass{article}
{\catcode`\`=\active
\global\let`=^}
\mathcode`\`="8000
\begin{document}
$3`2$ and some `quoted' text
\end{document}
выходной сигнал:
Но опять же, это может где-то что-то сломать, а ведь `
это токен с кодом catcode 12.