多语言命令行源代码格式化程序

JW.*_*JW. 13 code-formatting

是否有一个命令行Unix工具,可以格式化/缩进/美化不同语言的源代码?我对Java,JavaScript,PHP和XML特别感兴趣,但理想情况下它会处理其他人.

(我不是在寻找能够生成语法高亮标记的东西;我已经知道有一些工具可以做到这一点.)