
의 인수로 A
다른 새 명령 B
(하나의 인수가 있음 )을 사용하여 새 명령을 정의하는 방법이 궁금합니다 .x
A
다음은 간단한 예입니다.
\documentclass[english]{article}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{babel}
\begin{document}
\newcommand\ket[1][usedefault, addprefix=\global, 1=1]{|#1>}
\newcommand\hc[1][usedefault, addprefix=\global, 1=2]{Hc(#1)}
\newcommand\kc[1][usedefault, addprefix=\global, 1=3]{\ket[\hc[#1]]}
$$\kc[5]$$
\end{document}
내가 원했던 결과는 인데 |Hc(5)>
, 실제로는 나타났습니다 |Hc(5>)
. 엄청 이상해.
위의 코드에 어떤 문제가 있나요?
답변1
선택적 인수가 있는 내부 명령을 로 그룹화해야 합니다(구분하기보다는 구분해야 합니다). {...}
그렇지 않으면 전체 명령이 분리되고 인수의 내용이 잘못된 순서로 조판됩니다!
메모braket
: Dirac/Hilbert 상태 벡터에 대한 패키지가 있습니다 .
\documentclass[english]{article}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}
\usepackage{babel}
\begin{document}
\newcommand\ket[1][usedefault, addprefix=\global, 1=1]{|#1\rangle}
\newcommand\hc[1][usedefault, addprefix=\global, 1=2]{Hc(#1)}
\newcommand\kc[1][usedefault, addprefix=\global, 1=3]{\ket[{\hc[#1]}]}
\[\kc[5]\]
\end{document}