Ubuntu
Pandoc 語言環境問題
我正在嘗試使用 pandoc 的 markdown2pdf 生成文件 pdf 文件。我的源文件包含一些西里爾字母 UTF-8 符號。我的系統語言環境是 en_US.UTF-8。
在預設語言環境下執行時,markdown2pdf 無法載入文件:
$ markdown2pdf doc.md -o doc.pdf markdown2pdf:/tmp/pandoc/doc.log:hGetContents:無效參數(無效或不完整的多字節或寬字元)
如果我設置 LANG=ru_RU.UTF-8,markdown2pdf 載入文件正常,啟動 pandoc 和 pandoc 中斷(注意不同的錯誤文本):
$ LANG=ru_RU.UTF-8 markdown2pdf doc.md -o doc.pdf markdown2pdf:pandoc:doc.md:hGetContents:無效參數(無效或不完整的多字節或寬字元)
我不想更改我的系統區域設置。我該如何解決這個問題?
系統資訊:
$ lsb_release -a 沒有可用的 LSB 模組。 經銷商編號:Ubuntu 說明:Ubuntu 10.04.1 LTS 發布:10.04 代號:清醒 $ unname -a Linux localhost 2.6.32-24-generic #38-Ubuntu SMP Mon Jul 5 09:20:59 UTC 2010 x86_64 GNU/Linux $ pandoc --版本 pandoc 1.5.1.1
我不得不手動升級到 pandoc 1.6 來修復這個錯誤:
# Install and update cabal (Haskell's package manager) sudo apt-get install cabal cabal update cabal install cabal-install # Put cabal's executables to path echo "PATH=${PATH}:${HOME}/.cabal/bin" >> ${HOME}/.bashrc source ${HOME}/.bashrc # Reset bash's path cache hash -r cabal install -fhighlighting pandoc