Por que estou recebendo um erro `3 é um erro ruim`?

Por que estou recebendo um erro `3 é um erro ruim`?

Após atualizar do TeX Live 2022 para o TeX Live 2023, ao executar bibtex, bibtex8ou bibtexuno TeX Live 2023, recebo este erro para qualquer arquivo de entrada:

3 is a bad bad

bibtex não produz nenhuma saída. O que causa esse erro?

Responder1

badé uma variável bibtexusada para relatar "constantes" que não atendem a certas restrições. O único "bom" badé 0. Um badvalor de 3 significamax_print_line >= buf_size, o que não é permitido.

Começando no TeX Live 2023,bibtexagora obtém a max_print_line"constante" do ambiente. Portanto, se você tiver a max_print_linevariável de ambiente definida como ≥20000,como sugerido nesta resposta, agora você acionará esse erro, que não teria visto antes. Não parece que você possa definir buf_sizeuma variável de ambiente da mesma maneira.

Se você definir max_print_line=19999, o erro desaparecerá.

Se você está tentando entender como isso acontece bibtexlendo a versão PDF de sua fonte produzida com o weave que vem com o TeX Live, você pode ficar mais confuso porque o código que lê as variáveis ​​de ambiente não está lá, nem há um buf_sizevalor inicial de 20.000. Todas essas coisas ocorrem nobibtex.chchange file, que faz vários patches.

informação relacionada