括弧なしのコマンドのショートカット

括弧なしのコマンドのショートカット

ショートカットを作成したい

\textsubscriptARGS

ARGS任意の数値になります。

123\a33332次のように入力して、同じ出力を得たいと思います。123\textsubscript{33332}

試してみました\def\newcommand失敗しました。ありがとうございます!

\def\aa #1#2#3{\textsubscript{#1#2#3}} を試してみましたが、引数が 3 つの場合にのみ機能します。引数をオプションとして設定する方法、またはスペースの前のすべての文字を 1 つの引数として含める方法を知っていますか?

答え1

これにはあらゆる種類の間違いが書かれています:

ここに画像の説明を入力してください

\documentclass{article}

\usepackage{xspace}
\def\aa#1 {\textsubscript{#1}\xspace}

\begin{document}

Here is some 123\aa4 text together with
        some 123\aa45 text together with
        some 123\aa456 text together with
        some 123\aa4567 text together with
        some 123\aa45678 text together with
        some 123\aa456789 text together with
        some 123\textsubscript{4567890}.

\end{document}

なぜ?

  • \aaすでに定義されています(スウェーデン語の文字 å として)。

  • のパラメータテキストは\aa、文末のの使用法に一貫性がありません。\def必要引数の終了区切り文字としてスペースを使用します。 を条件とするのは.問題ありませんが、,!?、 、 の場合はどうなるでしょうか...

  • 見るの欠点xspace

答え2

整数だけが欲しい場合はかもしれない次のようにします。

\documentclass{article}
\usepackage{xspace}

\newcommand{\wrongwaytodosubscripts}{%
  \afterassignment\wwtdss\count255=
}
\def\wwtdss{\textsubscript{\the\count255}\xspace}

\begin{document}

123\wrongwaytodosubscripts123 followed by whatever.

123\wrongwaytodosubscripts123.

\end{document}

これを実行することを推奨するかどうかは、私が選択したマクロ名から明らかです。

ここに画像の説明を入力してください

そんなことしないで!エラーが発生しやすく、いくつかの制限があります。

関連情報