【发布时间】:2011-05-23 22:13:07
【问题描述】:
有一个 GNU indent 用于样式化 C 源代码,有 JavaScript 的等价物吗?
我希望它有编码风格、缩进风格等选项,就像indent一样。
我会将它用于 *NIX 平台上的一个相当大的项目,所以我不喜欢仅限 Windows 的实用程序或在线工具。
【问题讨论】:
标签: javascript
有一个 GNU indent 用于样式化 C 源代码,有 JavaScript 的等价物吗?
我希望它有编码风格、缩进风格等选项,就像indent一样。
我会将它用于 *NIX 平台上的一个相当大的项目,所以我不喜欢仅限 Windows 的实用程序或在线工具。
【问题讨论】:
标签: javascript
我没有使用过它,但不久前我在js-beautify 上添加了书签,快速检查似乎表明它可能满足您的要求。 (而且,使用 JavaScript 编写,您可能可以轻松改进它。)
【讨论】:
indent 之上的东西当然会更好。
indent 的 10 倍,不过我还是去看看吧,因为这里似乎没有竞争对手。
indent 更大(它是一个完整的 JavaScript 实现)。在我的系统上,编译后的 v8 库是 indent 程序大小的 142 倍。但在 10M 左右,它不会破坏我的存储设备,它让我可以做一些有趣的事情。 :-)
有jsBeautifier,它可以通过Rhino 在启用Java 的环境中从命令行运行,也可以通过V8 运行(或其他几个,请查看github page)。显然他们正在开发 Python 命令行版本。
显然有人(至少)在updating (不,显然它只是 indent itself to understand JavaScript 上开始了。开源的乐趣!即使不完整,语法也非常相似......indent 的网页前端 - 根本没有帮助。)所以改写:我想知道修改 indent 以支持 JavaScript 有多难?语法非常相似...
【讨论】:
indent,只是做了一个前面-结束它。没有用。 :-)
indent 的 JavaScript 将会很有用。但如果没有,我可能不得不尝试 js-beautifier,虽然构建它相当复杂。
你有几个选择:
有些编辑器也会为您这样做:
编辑:
最后,已经有几个 SO 问题回答了这个问题,您可以找到 by searching(一些结果指向格式化程序以在线显示代码,这是另一回事,尽管您也可以使用它):
【讨论】:
fixjsstyle 命令,但你几乎无法控制它。当然,编译器服务是一个在线工具——ryanli 专门要求提供离线选项。
indent 更难...
有Javascript Tidy,它使用浏览器本身重新格式化Javascript代码。所以结果取决于你使用的浏览器。
您无法确定样式,但是一旦将 Javascript 重新格式化为标准格式,就可以更轻松地修改源代码以匹配您自己的样式。
【讨论】:
libjavascript-beautifier-perl 包有 /usr/bin/js_beautify,这对我有用。
【讨论】: