Markdown,Perl和字符编码:呈现非ASCII字符

时间:2015-01-12 04:17:52

标签: perl character-encoding windows-8.1 markdown

我是Markdown的新手,我立即喜欢一个可读的纯文本文档的概念,能够(而不是)轻松转换为html。在纯文本编辑器上编写比在文字处理器中更好!问题是,我不熟悉Perl语言。

所以我基本上阅读了所有文档,从起源点(John Gruber的daringfireball)开始,然后我在Windows 8操作系统中安装了Perl,这样我就可以转换 .md files to html
我使用了ActivePerl-5.20.1.2000-MSWin32-x64-298557.msi version。为了进行转换,我在控制台中使用了以下命令:

perl Markdown.pl input.txt > output.html

问题是,我不是母语为英语的人,而且我的文本确实有很多 accented characters, like á, ã, ç, ô and so on 。所以我的输出非常难看(并且不可读) )文字如:

Agora, um código com mais de um parágrafo

我搜索过,但我能找到的最接近的是: Rendering unicode characters in Markdown from Emacs

如何正确显示这些非ASCII字符?

谢谢!

2 个答案:

答案 0 :(得分:0)

在Perl程序中添加以下行before the print语句。

binmode(STDOUT, ":utf8");

另见:How can I output UTF-8 from Perl?

答案 1 :(得分:0)

我建议您切换到更成熟的Markdown实现,例如Pandoc

Pandoc仅支持UTF-8和UTF-8。

pandoc -s -o output.html input.txt

A comparison between the two.