如何将源代码文件转换为HTML?


13

我有一个用编程语言(例如PHP)编写的源代码文件,我想将其转换为HTML文件,因此我可以将其发布在Web上以便共享我的代码。

转换是指,例如,将新行转换为<br>标签,以便文本在文本编辑器和Web浏览器中都保持相同的格式。理想情况下,它还应保留语法突出显示,以便可以打印。

这在Vim中可以实现吗?如果是这样,怎么办?


4
转换是什么意思?预期输出是多少?
OrangeTux

预期的输出将是html(浏览器友好格式)。
kenorb 2015年

1
所有文本文件都是“浏览器友好的”。但是,当我看到Alexander Myshov的回答时,我想我明白您的意思了。
OrangeTux

1
我认为问题中缺少细节。您是要为每个源文件生成完整的HTML文档,还是仅生成可嵌入到另一个文档中的HTML代码片段,还是没关系?
toro2k 2015年

Answers:


16

以下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

有关:


1
您不需要%,因为这是默认设置。另请注意,这与其他答案(:runtime! syntax/2html.vim)完全相同,唯一的区别是TOhtml您可以轻松添加范围(而不是设置g:html_start_lineg:html_end_line手动添加。)
Martin Tournoij 2015年

5

据我了解,您希望将当前窗口的内容转换为HTML。尝试运行以下命令:

:runtime! syntax/2html.vim

更多信息在这里:

:help convert-to-HTML
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.