erlang写中文注释的补丁

这段时间在整理网游的教程,在给服务器写文档的时候,发现erlang的edoc在生成文档的时候,如果使用的是中文的注释的话,就会失败,出现类似下面的错误:

       edoc: error in doclet 'edoc_doclet': {'EXIT',{no_translation,[{io,put_chars,[<0.31.0>,unicode,[[60,33,68,79,67,84,89|...],[45,47,47,87,51,67|...],[34],[],[62,10],[[[...]|...],[...]]]]},{edoc_lib,write_file,4},{edoc_doclet,source,9},{lists,foldl,3},{edoc_doclet,sources,5},{edoc_doclet,gen,6},{edoc_lib,run_plugin,5},{init,start_it,1}]}}.
{"init terminating in do_boot",error}

Crash dump was written to: erl_crash.dump
init terminating in do_boot (error)

在网上查了一下,发现也有人碰到这个问题,后来,在nabble论坛(该论坛有很多的erlang的问题及解决办法,补丁等)发现了解决办法:

1、获取erlang的源代码,ubuntu的话直接sudo apt-get install erlang-src

2、修改edoc的源代码:

修改edoc_lib:write_file/4的代码

file:open(File,[Write])

file:open(File,[Write,{encoding,utf8}])

修改edoc_tags:parse_tags/5的代码

text ->
   parse_tags(Ts,How,Env,Where,[T | Ts1]);

text ->
    Data = unicode:characters_to_list(list_to_binary(T#tag.data)),
    T2 = T#tag{data = Data},
    parse_tags(Ts, How, Env, Where, [T2 | Ts1]);

4、编译上述两个文件,然后覆盖掉原来的文件。这样就可以使用中文注释了。我一直用的是utf-8的编码,对于其他编码没有使用过

emacs的weblogger(1.4.4)的wordpress patch

emacs的weblogger(1.4.4)的wordpress patch

主要修正了weblogger-mode 1.4.4在emacs 23.1下无法设定Wordpress的categories的bug。同时修正了在我电脑上关于日期错误的bug。
注意:我将标签(tags)的设置修改为了Summary

以下是patch:
继续阅读emacs的weblogger(1.4.4)的wordpress patch

emacs写wordpress的一个小补丁

使用emacs的插件weblogger来写blog的时候,最新的版本在我这边没办法使用分类,所有的都是未分类的,但可使用’< ''>‘等,在weblogger的仓库中,我在bug列表里中找到到关于这方面的问题,同时,gabrielsaldana提供了一个针对之前修改的版本。该版本支持分类,但在我这边,不支持使用’< ' '>‘等,因为我从未学过lisp语言,所以没有在最新版本上做补丁,而是退一步在gabrielsaldana的版本上进行了修改,这样可以支持html部分。下面是patch:

继续阅读emacs写wordpress的一个小补丁