本文转载至:http://www.cnblogs.com/wwang/archive/2011/11/22/2259560.html
在G+上看到网友的介绍,发现vim可以把代码按照当前的语法高亮转换成html文档,真是一个很贴心的小功能。
对我来说,这个功能至少有两个作用。第一,把转出来的html文档直接放到博客里,这样读者看代码更加一目了然;第二,在需要把代码寄给同事review前先转成html格式,以应对大部分email客户端代码不能自动对齐的问题。
TOhtml使用起来很简单。
如果需要把整个文档转成html,在命令模式下执行:
:TOhtml
如果只是需要转某几行代码(如30到42行),则执行:
:30,42TOhtml
下面是用我之前博文里的一段代码转换出来的结果:
30 ssize_t my_show(struct kobject *kobj, struct attribute *attr, char *buffer) 31 { 32 struct my_kobj *obj = container_of(kobj, struct my_kobj, kobj); 33 ssize_t count = 0; 34 35 if (strcmp(attr->name, "name") == 0) { 36 count = sprintf(buffer, "%s\n", kobject_name(kobj)); 37 } else if (strcmp(attr->name, "val") == 0) { 38 count = sprintf(buffer, "%d\n", obj->val); 39 } 40 41 return count; 42 }