如何在 IntelliJ IDEA 中使用制表符进行缩进?

Posted

技术标签:

【中文标题】如何在 IntelliJ IDEA 中使用制表符进行缩进?【英文标题】:How can I use tabs for indentation in IntelliJ IDEA? 【发布时间】:2012-01-22 00:26:25 【问题描述】:

如何在 IntelliJ IDEA 11.0 中使用制表符而不是多个空格进行缩进?

我在“代码样式”>“常规”>“默认缩进选项”下选中了“使用制表符”选中。并且还尝试检查“智能标签”,但没有帮助。

来自documentation:

如果选中此复选框,则使用制表符:

按 Tab 键时 用于缩进 用于代码重新格式化

否则,使用空格代替制表符。

【问题讨论】:

【参考方案1】:

文件 > 设置 > 编辑器 > 代码风格 > Java > 制表符和缩进 > 使用制表符

根据需要替代 Java 的首选武器。

【讨论】:

请注意,如果您要更改此设置并替换文件中的所有制表符/空格,则可能需要关闭并重新打开文件以在更改后更正检测。 知道为什么默认情况下不启用“使用制表符”吗? @IvanBalashov 制表符在其他文本编辑器中查看时可能会导致一些格式问题。此外,当您使用制表符而不是空格时,某些语言(如 Python)可能会中断。 当我想让 Tabs 作为所有语言的缩进时我该怎么办?我真的应该点击 500 种不同的语言并单独应用吗? 我已经这样做了,IntelliJ 仍在使用空格(见帖子why-wont-intellij-use-tabs)【参考方案2】:

IntelliJ IDEA 15

仅适用于当前文件

您有以下选择:

    Ctrl + Shift + A > 写“tabs” > 双击“To Tabs”

    如果要将制表符转换为空格,可以写“空格”,然后选择“到空格”。

    编辑 > 转换缩进 > 到制表符

    要将制表符转换为空格,您可以从同一位置选择“To Spaces”。

对于所有文件

其他答案中的路径略有改变:

文件 > 设置... > 编辑器 > 代码样式 > Java > 制表符和缩进 > 使用制表符 文件 > 其他设置 > 默认设置... > 编辑器 > 代码样式 > Java > 制表符和缩进 > 使用制表符 文件 > 设置... > 编辑器 > 代码样式 > 检测并使用现有文件缩进进行编辑 文件 > 其他设置 > 默认设置... > 编辑器 > 代码样式 > 检测并使用现有文件缩进进行编辑

您似乎在 设置...其他设置 > 默认设置... 中选中/取消选中该框并不重要,因为从一个窗口进行的更改将在另一个窗口中可用。

上述更改将应用​​于新文件,但如果您想将空格更改为现有文件中的制表符,则应格式化 按 Ctrl + Alt + L 的文件。

【讨论】:

这就是我所说的解释!非常感谢。我习惯了空格,我也设置了其他的东西,但我错过了重新格式化。【参考方案3】:

我已经开始使用 IntelliJ IDEA 社区版版本 12.1.3,我在以下位置找到了设置:-

File > Other Settings > Default Settings > choose from Code Style dropdown

【讨论】:

如果没有您的回答,就不会发现这个。谢谢! 您可能需要取消选择“检测文件缩进”【参考方案4】:

对于无法获得此功能的任何人,您还需要取消选中以下内容

Preferences > Editor > Code Style
[] Enable EditorConfig support
EditorConfig may override the IDE code style settings

我的 IntelliJ 版本 15.0.4

【讨论】:

谢谢!你刚刚保存了我的键盘。 我有 2 个空格作为制表符大小,并且从过去很多天开始一直在尝试解决这个问题。这就是我解决问题的方法。非常感谢@visheshd【参考方案5】:

如果您确实需要,IDEA 中的另一个有用选项可以关闭或保持检查:

Preferences -> Code Style -> Detect and use existing file indents for editing

如果您的团队要使用空格编写的现有代码切换到制表符格式,请取消选中

【讨论】:

【参考方案6】:

你试过.editorconfig吗?您可以在项目的根目录中创建此文件,并为不同的文件类型配置缩进。您的代码将自动格式化。示例如下:

# top-most EditorConfig file
root = true

# matches all files
[*]
indent_style = tab
indent_size = 4

# only json
[*.json]
indent_style = space
indent_size = 2

【讨论】:

此文件覆盖 intellij 设置中的任何其他内容。首先检查这个文件非常重要。 在此页面上尝试了所有方法(无论是否接受),这是唯一能克服空间重压的方法(Macos、Intellij CE 2018.3.4、现有 .rs 文件)。 【参考方案7】:

我的 Intellij 版本是 13.4.1

Intellij IDEA->Perference->Code Style(Project Setting)

【讨论】:

【参考方案8】:

扩展@Dmitiri Algazin 的答案:个别语言的设置被通用设置覆盖

Preferences -> Code Style -> Detect and use existing file indents for editing

因此,如果您想知道为什么在更改特定语言的设置后会忽略新设置,则有可能选中此复选框。

作为旁注;更改任何默认设置会自动创建一个设置配置文件克隆(即Default(1)),我认为它已经到位,因此默认 IDE 设置永远不会被覆盖。

实际上,编辑Default 设置或Project Settings 是否会对您的项目产生任何影响,一开始有点令人困惑,因为您可以从下拉菜单中选择Default,然后从那里进行编辑.

如果您不想继续看到 Default 的随机克隆填充您的设置配置文件,请直接编辑项目设置。

【讨论】:

【参考方案9】:

对于那些在此处缩进 phpstorm 时遇到问题的人,我有一个小窍门,希望对他们有所帮助...

首先你必须去文件-> 设置-> 键盘映射-> 选择-> 窗口。

如果它们在 Windows 机器上。如果你在 mac 上并选择 macos。

【讨论】:

以上是关于如何在 IntelliJ IDEA 中使用制表符进行缩进?的主要内容,如果未能解决你的问题,请参考以下文章

IntelliJ IDEA For Mac 快捷键

intellij idea 怎样关闭所有的debug断点,??

从零开始编写IntelliJ IDEA插件

IntelliJ IDEA常用配置

IntelliJ IDEA使用:tomcat和jetty配置

如何在 IntelliJ IDEA 中添加“库项目”?