如何以 latin1 編碼儲存 .bib 檔案並避免特殊字元出現問題?

如何以 latin1 編碼儲存 .bib 檔案並避免特殊字元出現問題?

我在 .bib 檔案中添加了許多新引用,這些引用是從 sciencedirect.com 等線上​​入口網站獲得的。

我正在使用 .bib 檔案管理我的 .bib 檔案JabRef 2.10

我的 bib 檔案是用 latin1 (CP1252) 編碼的,因為這與我的乳膠設定配合得很好。

不,有了新的參考資料,我無法再保存我的文件,因為編碼 CP1252 無法顯示以下字符 在此輸入影像描述

然後我嘗試將其保存為 UTF8,這確實運行良好,但在我的 Latex 設置中產生了很多問題:如果我理解正確,那麼我必須將其用作biber後端biblatex,並且我在編譯時遇到了無窮無盡的問題,並且無法最後得到一個可以工作的pdf檔。 :-(

我什至嘗試將所有 .tex 檔案更改為 utf8,以將它們與 .bib 檔案匹配,但仍然出現 biber 錯誤。 (一個想法:我有一些字段“註釋”了很多文本,這可能會導致問題。)

因此,我想要恢復 CP1252 編碼,但我不知道如何在 .bib 檔案中找到有問題的字符,並將其替換為 CP1252 可以處理的內容。

問題:

如何識別包含有問題字元的記錄並替換它們? bibtex 檔案非常大(數千個條目),我不知道如何解決這個問題,我已經浪費了幾個小時(非常短的)時間,並且看不到任何希望。

答案1

感謝@jon 的提示:

可以使用biber以下命令來完成:

biber --tool --output_encoding=cp1252 mybib.bib

我首先收到一條錯誤訊息:

read_file '/var/folders/FX/FXr0KhAz2RWkK++BYv0W1++++TU/-Tmp-/par-6d626734/cache-a3cdad9231‌​6c60c9c5179d80d6bb51a7a024393c/inc/lib/Biber/biber-tool.conf' - sysopen: No such file or directory at /var/folders/FX/FXr0KhAz2RWkK++BYv0W1++++TU/-Tmp-/par-6d626734/cache-a3cdad92316‌​c60c9c5179d80d6bb51a7a024393c/inc/lib/Biber/Config.pm line 341.

解決方案是清理 biber 快取:

rm -rf `biber --cache`

相關內容