编写代码美化器

时间:2010-10-11 06:29:02

标签: ruby code-formatting

我想写一个代码美化器,我想用Ruby来做。有人能告诉我一个开始的地方吗?我在网上看过很多代码美化,但我从来没有遇到过如何编写代码的任何教程。对于从未承担任何项目(如编写编译器,解析器等)的人来说,这是一项非常具有挑战性的任务吗?

(还有其他语言更适合这类任务,不包括C / C ++吗?)

3 个答案:

答案 0 :(得分:3)

在这个网站上:红宝石的代码美化。

rubyBeautifier

答案 1 :(得分:2)

Python有一个有趣的功能 - 它将自己的解析器暴露给脚本。有are examples使用AST - 抽象语法树 - 并进行漂亮的打印。

我不知道Ruby以这种方式将自己的解析器暴露给它的脚本,但是Ruby的解析器是用Ruby here编写的。

答案 2 :(得分:2)

嗯......我认为最初的步骤就是你要为任何项目做的事情。

写一份要求清单。 描述您喜欢的程序的用户界面,并且不会妨碍您满足这些要求。 现在,您可以写下更多的“代码”设计,并选择最容易满足该设计的语言。

这是我头脑中的一些要求:

  • 支持美化这些语言的代码:Ruby,Python,Perl
  • 输出代码与输入行为相同
  • 输出一致使用制表符/空格
  • 输出具有一致的功能命名约定
  • 输出具有一致的变量命名约定
  • 输出具有匹配的大括号和缩进

尽可能多地制作,这是你的节目。 ; p我开玩笑说Perl,但我认为你支持的每种语言都会增加更多的工作。