ide - 为什么 IDE 不支持动态格式化?

鉴于围绕各种代码格式化风格的所有圣战,以及许多公司严格的格式化要求,为什么 IDE 不允许动态重新格式化代码?
我的意思是让 IDE 每次都按照用户想要的方式格式化代码,并在没有任何格式化的情况下保存代码。 (好吧,也许换行,这样差异仍然很容易)
用户不必担心遵守编码标准,人们不会因为使用没有按照他们喜欢的方式格式化的代码而变得不适应,并且格式更改不会显示在存储库差异中。 必须有某种机制来关闭它,这样它就不会破坏旧的、预先格式化的代码,但除此之外,是什么阻止了它成为标准功能?

编辑:我知道某些 IDE 具有重新格式化功能,但这会导致几乎与它解决的问题一样多 - 源代码控制差异变得几乎无用,因为实际更改在大量无意义的格式更改中丢失,并且不同的制表符宽度仍然会使事物不对齐。此外,它不允许程序员使用他们喜欢的格式的代码。

最佳答案

因为大多数人都喜欢看到将要提交的代码。除非您用来查看代码的所有工具(diff 程序、grep、基于 Web 的源存储库查看器等)都了解如何以相同的方式动态格式化代码,否则您在查看时会被不同的格式混淆它在您的 IDE 中与其他工具相比。

我同意,如果我们有更多的结构化编程工具,而不是固定宽度的文本工具,那就太好了,但它需要更新工具链中的所有内容才能真正使其工作。

https://stackoverflow.com/questions/898664/

相关文章:

formatting - 如何使用 LaTeX 以实用程序员系列丛书的风格格式化源代码列表?

java - 是否可以使用 String.format 作为条件小数点?

c++ - ostream showbase 不显示 "0x"为零值

io - Fortran 将我的输出添加到星号 - 为什么?

javascript - 并非所有浏览器都支持 toLocaleString()?

c# - microsoft.interop.excel 格式化单元格

python - 将任意文本格式化为漂亮的 HTML 的 Python 模块的名称是什么?

android - HTML.fromHtml 换行符消失

java - 如何在 IntelliJ 中停止流式 API 的扁平化

formatting - 抑制 Fortran 95 写入语句中的换行符