私はLaTeXが常に再実行しようとする大きな文書を持っています。
永続的な「ラベルが変更された可能性があります」という警告を診断するにはどうすればよいですか?、私はいくつかの に問題があったことを突き止めました。しかし、私は問題のあるがパッケージによってフラグ付けされるだろうと\vref
期待していました。パッケージのドキュメントには、\vref
varioref
varioref
上記のようなコマンドを定義すると、いくつかの興味深い問題が生じます。たとえば、「次のページで」のような生成されたテキストがページをまたいで分割されるとします。このような状況が発生すると、許容できる解決策を見つけるのは非常に困難であり、実際には、常に 1 つの状態から別の状態へと変化するドキュメントになる可能性があります (つまり、1 つの文字列を挿入し、これが間違っていることがわかり、次の実行で別の文字列を挿入して最初の文字列を再び正しくし、挿入する...)。したがって、varioref の現在の実装では、生成されたテキストがページ境界をまたいで分割されるたびにエラー メッセージが発行されます。たとえば、
table 5 on the current hpage break i page
はエラーになりますが、最終実行の直前にユーザーが
\vref
コマンドを通常のコマンドに置き換えることで解決する必要があります\ref
。これは完全に満足できるものではありませんが、このような場合には解決策はありません。
cleveref
後に(正しく)ロードしたパッケージは、正しくvarioref
実装されていると主張しています\vref
。しかし、cleveref
この診断機能を複製することになっていますか?バグを報告するか機能要求を報告するか、どのメンテナーに報告するかを決める必要があります :-)
\vref
問題を再現するために、正確な場所にがある MWE を作成しようとしましたが、失敗しました。
答え1
cleveref
varioref
コマンドを独自に使用するために再定義するときに、ページ間で壊れている相互参照のチェックを無効にします。そのため、これはcleveref
欠陥であると主張することもできますが、パッケージの現在の実装には理由があります。
現在、私は Toby と協力して、2 つのパッケージ間およびパッケージ間の共存性を向上させる作業を行っていますhyperref
。この作業が完了すると、このような問題が再び正しく診断されるはずです。
この改善varioref
はおそらく LaTeX の秋のリリースには反映されないでしょうが、冬のリリースでは利用できるようになるはずです。