通过转换,例如,我的意思是将新行转换为
<br>
标记,以使文本在文本编辑器和Web浏览器中都保持相同的格式。理想情况下,它还应保留语法突出显示,以便可以打印。 在Vim中可以实现吗?如果可以,怎么办?
#1 楼
以下vim命令将创建当前文件的html呈现。:TOhtml
它将文件保存在同一文件夹(扩展名为.html)中,并将包括样式,前景色/背景色和语法突出显示,因此该文件可以直接在Web上发布和打印。
有关更多选项(如添加行号,与旧浏览器的兼容性等),请检查:
:help TOhtml
。要非交互式地转换文件,请尝试以下命令:
vim -E -s -c "let g:html_no_progress=1" -c "syntax on" -c "set ft=c" -c "runtime syntax/2html.vim" -cwqa myfile.c
相关:
在stackoverflow上使用CSS样式将代码转换为HTML
评论
您不需要%,因为这是默认值。还要注意,这与其他答案(:runtime!语法/2html.vim)完全相同,唯一的区别是使用TOhtml可以轻松添加范围(而不是手动设置g:html_start_line和g:html_end_line)。
–马丁·图尔诺伊(Martin Tournoij)
2015年2月15日,0:14
在Vim 8.2(非标准文件类型,不是C)上,这对我来说无法正常工作:vim -E -s -c“ let g:html_no_progress = 1” -c“ set background = light” -c“ set ft = myfiletype “ -c”运行时语法/2html.vim“ -c wqa myfile.txt。具体来说,突出显示CSS规则的语法不会插入到生成的HTML文件中。如果我将-s删除为静默模式,则可以正常工作(但不确定如果没有tty,是否可以正常工作)。
–索伦·比约恩斯塔德(Soren Bjornstad)
20-11-11的3:39
#2 楼
据我了解,您希望将当前窗口的内容转换为HTML。尝试运行此命令:
:runtime! syntax/2html.vim
更多信息在这里: >
:help convert-to-HTML
评论
转换是什么意思?预期输出是什么?预期的输出将是html(浏览器友好格式)。
所有文本文件都是“浏览器友好的”。但是,当我看到Alexander Myshov的回答时,我想我明白您的意思了。
我认为这个问题缺少细节。您是要为每个源文件生成完整的HTML文档,还是仅生成可嵌入到另一个文档中的HTML代码片段,还是没关系?