Сочетание клавиш для команды без фигурных скобок

Сочетание клавиш для команды без фигурных скобок

Я хочу создать ярлык для

\textsubscriptARGS

С ARGSлюбым числом.

Я хочу ввести что-то вроде 123\a33332и получить тот же результат, что и123\textsubscript{33332}

Я пробовал \def, но \newcommandбезуспешно. Спасибо!

Я попробовал \def\aa #1#2#3{\textsubscript{#1#2#3}}, и это работает, но только если есть 3 аргумента. Знаете ли вы, как сделать аргументы необязательными или включить все символы перед пробелом как один аргумент?

решение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параметр textтребуетпробел как конечный разделитель для его аргумента. Условие на a .было бы нормально, но что происходит с ,, или !, или ?, или ...

  • ВидетьНедостатки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}

Рекомендую ли я это делать, должно быть ясно из выбранного мной названия макроса.

введите описание изображения здесь

Не делай так!Он подвержен ошибкам и имеет ряд ограничений.

Связанный контент