2011年2月19日星期六

轉帖:[Linux: vim]vim自动生成html代码

[Linux: vim]vim自动生成html代码 - 呓语 Beta 2.0

[Linux: vim]vim自动生成html代码




九月 4th, 2010
发表评论
阅读评论




如果直接将vim编辑的文字复制粘贴到一些blog的编辑器中,这些代码将会是死板的白纸黑字。如果能加入关键字高亮功能
就好了,这样代码阅读起来会很方便。一些blog的编辑器提供了这项功能,一些没有,一些支持的语言不够全面。好在vim的syntax支持的语言够多,

绝大部分流行的语言都可以直接找到支持。如果能将vim显示的代码直接转换成为html就好多了,这样很多支持HTML编辑的blog就可以直接使用格式
化好的代码。


使用vim将代码转换为html有两种方式,TOhtml和syntax/2html.vim。


syntax/2html.vim

使用如下命令即可转换:

:runtime! syntax/2html.vim


注:官方文档说这种转换方式相对较慢,在数据量大的时候会花掉比较长的时间。


TOhtml

使用如下命令即可转换:

:TOhtml


这个命令有几个选项可供设置:


如果你想使代码的行号从0开始,而不是默认的1,你可以使用:

let html_number_lines=0

如果想取消,恢复到默认的状态,可以使用:

unlet html_number_lines


如果你想在html中使用css控制样式以减小生成html文件的体积,你可以使用:

let html_use_css=1


在阅读较长代码时,我们往往喜欢使用如下命令启用代码折叠:

set fdm=syntax

如果这中情况下生成html的话,一部分代码可能因为折叠而被忽略掉,加入如下设置,可以使生成html时忽略掉代码折叠设置,而生成不带有代码折叠的 html:

let html_ignore_folding=1


这些选项必须在执行TOhtml命令前设置,也可以写入~/.vimrc中,每次vim启动时自动加载。


 



图1 使用如上方法生成的~/.vimrc


图2 vim的键盘键位功能图

注:这个图设置成为桌面很实用。


 参考文献:

http://vimdoc.sourceforge.net/htmldoc/syntax.html    搜索2html和TOhtml

http://vimdoc.sourceforge.net/htmldoc/fold.html        关于vim fold(代码折叠)的介绍


沒有留言:

發佈留言