Eu tenho um documento grande que o LaTeX sempre deseja executar novamente. Usando a técnica descrita em
Como diagnosticar um aviso permanente "Etiqueta(s) pode(m) ter sido alterada(s)"?, rastreei o problema até alguns \vref
s. Mas eu esperava que os problemas \vref
fossem sinalizados para mim pelo varioref
pacote. A documentação para varioref
estados de pacote,
Definir comandos como os descritos acima apresenta alguns problemas interessantes. Suponha, por exemplo, que um texto gerado como “na próxima página” seja dividido entre páginas. Se isso acontecer, será muito difícil encontrar uma solução aceitável e, na verdade, pode até resultar em um documento que sempre mudará de um estado para outro (ou seja, inserir uma string, descobrir que isso está errado, inserir outra string no próxima execução que corrige a primeira string novamente, inserindo . A implementação atual do varioref emite, portanto, uma mensagem de erro sempre que o texto gerado é quebrado através dos limites da página, por exemplo,
table 5 on the current hpage break i page
resultaria em um erro, que precisa ser resolvido pelo usuário, substituindo o
\vref
comando por um comum\ref
pouco antes da execução final. Isto não é completamente satisfatório, mas, nesse caso, nenhuma solução o é.
O cleveref
pacote, que carreguei (corretamente) depois varioref
, afirma que foi implementado \vref
corretamente. Mas é cleveref
suposto replicar esta capacidade de diagnóstico? Preciso descobrir se devo relatar um bug ou uma solicitação de recurso e para qual mantenedor :-)
Tentei e não consegui produzir um MWE que estivesse \vref
exatamente no lugar certo para reproduzir o problema.
Responder1
cleveref
desativa a verificação de referências cruzadas quebradas entre páginas ao redefinir os varioref
comandos para seu próprio uso. Então você pode argumentar que é cleveref
culpa, mas há uma razão para isso na implementação atual do pacote.
Atualmente estou trabalhando com Toby para conseguir uma melhor coexistência entre os dois pacotes e também com o hyperref
pacote. Uma vez implementado, esses problemas devem ser diagnosticados corretamente novamente.
As varioref
melhorias para isso provavelmente não chegarão à versão de outono do LaTeX, mas deverão estar disponíveis na versão de inverno.