如何从普通的格式化文本中获取HTML?

时间:2011-07-11 23:33:39

标签: ruby

我有一个看起来像

的数组
Ant run name    : Basics of Edumate
Overall result  : pass

Ant run took: 4 minutes 13 seconds

--------------------------
Details for all test suits
--------------------------

login           : Pass
AddCycleTemplate: Pass
AddCycleTemplate: Pass
AddAcademicYear : Pass
AddAcademicYear : Pass
AddCampus       : Pass

有什么简单的方法可以将ruby中的这个转换为保持格式的html吗?

2 个答案:

答案 0 :(得分:1)

如果您不关心格式化,只需将整个内容封装在< pre>< / pre>中。标签,你已经设置好了。所有新行和空格都将被保留,默认字体是等宽字体。

答案 1 :(得分:1)

如果这些是您将看到的种类的行,那么您当然可以编写执行以下操作的Ruby脚本:

  1. 首先,输出一个doctype声明,一个开头的html标签,一个head部分,一个开头的body标签,以及一个你喜欢的任何风格的开场表标签。

  2. 逐行读取您的Ant输出。如果该行中有冒号,则将其拆分为冒号并输出一个包含两列的表行(拆分的每一侧)。如果该行没有冒号,则将其文本写为colspan = 2,可能使用一个样式指示一个大的margin-top和margin-bottom,除了如果它是全部破折号,在这种情况下你应该忽略它

  3. 输出HTML以关闭表格和正文。

  4. 这无疑是一种黑客攻击而不是一般的解决方案,但是,如果你只为自己编写一个工具,那么你可以拥有一些非常小的蚂蚁输出,那就去吧。这不超过20行Ruby。把它写成从stdin读取并写入stdout,这样你就可以将你的蚂蚁输出传递给它了!