レポートの疑似コードを作成中にエラーが発生しました。以下は LaTeX のコードです。「未定義の制御シーケンス\BState
-> \State \algbackskip \BState
」というメッセージが表示されます。この件について、どうか助けてください。
\documentclass{article}
\usepackage{amsmath}
\usepackage{algorithm}
\usepackage[noend]{algpseudocode}
\begin{document}
\begin{algorithm}[H]
\begin{algorithmic}[1]
\BState \emph{\textbf{Key(s)}}:
\end{algorithmic}
\end{algorithm}
\end{document}
答え1
\@algbackskip
この問題の原因となっているのは、 ( の一部を構成)の不足部分です\BState
。
メインalgorithmicx
パッケージコード -algorithmicx.sty
- の定義が含まれています\@algbackskip
が、コメントアウトされています:
%\def\algbackskip{\hskip-\ALG@thistlm}
これは間違いである可能性があり、修正する必要があるというのが私の推測です。
\documentclass{article}
\usepackage[noend]{algpseudocode}
\makeatletter
% Reinsert missing \algbackskip
\def\algbackskip{\hskip-\ALG@thistlm}
\makeatother
\begin{document}
\begin{algorithmic}[1]
\State something
\If{this}
\State do this
\BState do that
\EndIf
\BState now this
\end{algorithmic}
\end{document}