默认情况下, Eclipse使用硬制表符缩进。如何将其更改为空格?
21 回答
Java 编辑器
- 单击窗口»首选项
- 展开Java »代码风格
- 单击格式化程序
- 单击编辑按钮
- 单击缩进选项卡
- 在General Settings下,将Tab policy设置为:
Spaces only
- 单击“确定”以应用更改。
[注意:如有必要,使用新名称保存配置文件作为默认配置文件不能被覆盖。]
默认文本编辑器
3.6 版之前:
Window->Preferences->Editors->Text Editors->Insert spaces for tabs
版本 3.6 及更高版本:
- 单击窗口»首选项
- 展开一般»编辑
- 单击文本编辑器
- 检查为制表符插入空格
- 单击“确定”以应用更改。
请注意,默认文本编辑器用作 Eclipse 中许多非 Java 编辑器的基础。令人惊讶的是,此设置直到 3.3 才可用。
C / C++
- 单击窗口»首选项
- 展开C/C++ »代码风格
- 单击格式化程序
- 单击“新建”按钮创建新配置文件,然后单击“确定”继续
- 单击缩进选项卡
- 在General Settings下,将Tab policy设置为:
Spaces only
- 单击“确定”以应用更改。
HTML
- 单击窗口»首选项
- 展开网络» HTML 文件
- 单击编辑器
- 在Formatting下,选择Indent using spaces单选按钮
- 单击确定以应用更改。
CSS
对 HTML 遵循相同的说明,但选择CSS Files而不是HTML Files。
JSP
默认情况下,JSP 文件遵循 HTML 文件的格式首选项。
XML
XML 文件间距在首选项中配置。
- 单击窗口»首选项
- 展开XML » XML 文件
- 单击编辑器
- 使用空格选择缩进
- 如果需要,您可以指定缩进大小:缩进的空格数。
对于默认文本编辑器:
- 通用»编辑器»文本编辑器»
Insert spaces for tabs
(检查)
对于 PHP:
- PHP »代码风格»格式化程序»
Tab policy
(选择“空格”) - PHP »代码风格»格式化程序»
Indentation size
(设置为 4)
对于 CSS:
- 网页» CSS »编辑器»
Indent using spaces
(选择它) - 网页» CSS »编辑器»
Indentation size
(设置为 4)
对于 HTML:
- 网页» HTML »编辑器»
Indent using spaces
(选择它) - 网页» HTML »编辑器»
Indentation size
(设置为 4)
对于 XML:
- XML » XML 文件»编辑器»
Indent using spaces
(选择它) - XML » XML 文件»编辑器»
Indentation size
(设置为 4)
对于 Javascript:
- Javascript »首选项»代码样式»格式化程序»编辑»
Indentation
(选择“仅空格”) - 重命名格式化程序设置配置文件以保存它
对于 Java:
- Java » Preferences » Code Style » Formatter » Edit »
Indentation
(选择“仅空格”) - 重命名格式化程序设置配置文件以保存它
窗口»首选项» Java »代码样式»格式化程序»编辑» Indentation
(选择“仅限空格”)
对于CDT:
- 转到 窗口/首选项» C/C++ »代码样式»格式化程序»新建
- 创建一个新的,因为内置配置文件无法更改
- MyProfile (为配置文件选择一个名称)
- 缩进»
Tab Policy
(仅选择空格)
只是为偶然发现此线程的人们提供的快速提示;在您的项目中,还有一个地方也可以设置此设置!
Eclipse 支持特定于项目的设置,一些项目将使用它们自己的、非托管的选项卡/空格设置,这些设置除了当前项目的属性外不会显示在任何地方。
这可以通过以下方式进行管理:
- 在包资源管理器中右键单击当前项目
- 属性» Java 代码风格
- 关闭所有项目特定的选项
如果您将其他人的代码导入到您的 Eclipse 中,这通常只会成为问题。
对于默认编辑器:
窗口»首选项»编辑器»文本编辑器»Insert spaces for tabs
对于 Java 编辑器
窗口»首选项» Java »代码样式»格式化程序»编辑»缩进» Tab policy
“仅限空格”
当我遇到这个问题时,我在所有我能找到的地方都将“使用制表符的空格”设置为 true,但我仍然得到制表符。最终是因为制表符在文件的其他地方使用,并且它试图进行智能缩进或令人沮丧的事情。
通过选择文件的全部内容并在 Mac 上按command+shift+f
. 这会将给定的格式应用于文件。我不知道 Windows 上的相同键绑定,但试试看。那时我开始得到预期的行为。
请务必检查 java 格式化程序,因为它会覆盖“为制表符插入空格”设置。去:
Java->Code Style"->Formatter->Edit->Identation
注意:您需要创建一个自定义格式才能保存您的配置。
面向 C/C++ 开发人员的 Eclipse IDE,版本:Helios Service Release 2
您需要通过按“窗口->首选项->代码样式”中的新建按钮来创建新的配置文件
转到缩进选项卡并选择“选项卡策略 = 仅空格”
面向 C/C++ 开发人员的 Eclipse IDE,版本:Kepler Service Release 1
按照以下路径创建新配置文件:“Window > Preferences > C/C++ > Code Style > Formatter”
转到缩进选项卡并选择“选项卡策略 = 仅空格”
我发现这个问题的解决方案非常简单,并且始终有效。它是更改 eclipse 设置文件。
例如(更改 HTML 缩进大小):
- 找到
org.eclipse.wst.html.core.prefs
应该在的文件your_workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/
- 添加/更改到文件中的行:
indentationChar=space
indentationSize=4
在 Eclipse 中,转到Window » Preferences然后搜索Formatter。
您将看到各种粗体链接,单击每个粗体链接并将其设置为use spaces
而不是tabs
.
在 java 格式化程序链接中,您必须spaces only
在缩进选项卡中编辑配置文件并选择选项卡策略
Window->Preferences->Java->Code Style->Formatter->Edit->Indentation = "Spaces Only"
在eclipse格式的xml中:
对于选项卡:
<setting id="org.eclipse.jdt.core.formatter.tabulation.char" value="tab"/>
对于空间:
<setting id="org.eclipse.jdt.core.formatter.tabulation.char" value="space"/>
不要错过两者的制表策略 * 仅限空格 * 使用空格缩进换行
我只检查了后者,并将组合框保留为仅选项卡,这一直失败 CheckStyle.. 仅供参考,我说的是首选项 > Java > 格式化程序 > 编辑...
还可以考虑使用 .editorconfig 文件:https ://marketplace.eclipse.org/content/editorconfig-eclipse 。不使用 Eclipse 的人也可以从中受益,在最坏的情况下,它可以作为指导。注意:我不会进入制表符与空间大战,而是使用空格 FTW :-)
您绝对可以使用 XML 文件来配置您的编码风格的格式化程序。格式化程序文件可帮助您在团队成员中拥有相同的编码风格和准则。
即使您在使用Eclipse编码时可能使用速记键,在下面添加这些设置变量也会有a tab= 2 spaces
并转换为空格。Tab
<setting id="org.eclipse.jdt.core.formatter.tabulation.size" value="2"/>
<setting id="org.eclipse.jdt.core.formatter.tabulation.char" value="space"/>
<setting id="org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations" value="yes"/>
最好的,
在 Mac OS X 上的 Eclipse mars (EE) 中,我可以在首选项中找到它的唯一方法是打开首选项对话框并键入 Formatter,然后选择 Java->Code Style->Formatter。
Java->Code Style 无法访问 Formatter!
不要忘记ANT 编辑器
由于某种原因,Ant Editor 没有出现在搜索结果中,'tab'
因此'spaces'
可能会被遗漏。
在Windows >首选项下
- Ant » Editor » Formatter »
Tab size:
(设置为 4) - Ant » Editor » Formatter »
Use tab character instead of spaces
(取消选中它)
- 单击窗口 » 首选项
- 展开 Java » 代码风格
- 单击格式化程序
- 点击新建
- 选择个人资料名称
- 点击确定
- 单击编辑按钮
- 单击缩进选项卡
- 在常规设置下,将选项卡策略设置为:仅限空格
- 单击确定。
作为对其他答案的补充,在 Mac OS X 上,“首选项”菜单位于 Eclipse 下,而不是Window(与 Windows/Linux Eclipse 发行版不同)。其他一切仍然与过去其他答案所指出的相同。
IE:Java Formatter 可用于:
Eclipse > | # Not Window!
Preferences > |
Java > |
Code Style > |
Formatter |
从这里,编辑格式化程序,并且可以在“缩进”下设置选项卡策略。