痛みのない解決策

痛みのない解決策

`バックティック記号を数学演算のべき乗として宣言したいので^、次のように記述します。

\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 が を見つけるたびに上付き文字を作成することを意味します。最も簡単な方法は、 の catcode を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 トークンであることに依存する何かがどこかで壊れる可能性があります。

関連情報