
参照に cleverref を使用しようとしていますが、今のところうまくいきません。現在の設定は次のようになっています。
\documentclass[a4paper]{article}
% PACKAGES
\usepackage[english,ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage{hyperref}
\usepackage[ngerman]{varioref}
\usepackage[ngerman]{cleveref}
\begin{document}
\section{Test}\label{test}
This is some text containing a self-reference \cref{test}.
\end{document}
結果は次のようになります:
This is some text containing a self-reference ??.
ラテックスは私にこう言います:
LaTeX Warning: Reference `test' on page 1 undefined on input line 14.
そして、2 回目に実行すると ( のみを使用pdflatex test.tex
):
LaTeX Warning: \Cref reference format for label type `' undefined on input line 14.
ngerman
すでに と を入力して言語をグローバルに設定しようとしました\documentclass[a4paper,ngerman] ..
が、代わりに と も試しましたgerman
が、english
効果はありませんでした。
私が何を間違っているのか分かる人はいますか?
答え1
パッケージの読み込み順序を変更する必要があります。 は、参照する関連パッケージのvarioref
前に読み込まれhyperref
、最後にする必要があります。cleveref
\documentclass[a4paper]{article}
% PACKAGES
\usepackage[english,ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{varioref}
\usepackage{hyperref}
\usepackage[ngerman]{cleveref}
\begin{document}
\section{Test}\label{test}
This is some text containing a self-reference \cref{test}.
\end{document}