Intellij Idea中更改标签 - >空格 - >标签的快捷方式

时间:2017-01-08 11:10:43

标签: intellij-idea keyboard-shortcuts indentation shortcut

我知道我可以通过以下方式更改缩进:

File > Settings > Editor > Code Style > ANY_LANGUAGE > Tabs and Indents > Use tab character

但是在我的遗留项目中,在不同的文件中有一个混合o缩进。 IDE中是否有任何键盘快捷键用于将空格更改为选项卡并返回?或者我如何为所有或指定的语言文件设置一个?

5 个答案:

答案 0 :(得分:29)

要在标签和空格之间切换:

在主菜单上,选择编辑→转换缩进,然后分别选择 To Spaces To Tabs 。详细了解Changing Indentation

您可以通过按 Ctrl + Shift + A 快速执行与导航到操作菜单相同的操作在字段中输入convert indents

enter image description here

如果您想默认设置空格缩进,请转到设置→编辑器→代码样式→Java ,确保取消选中使用标签字符复选框并设置缩进值:

enter image description here

答案 1 :(得分:1)

在IntelliJ IDEA中,要将现有的选项卡转换为空格,反之亦然,请使用文件编辑转换缩进空格(或至标签页)。 重新格式化代码快捷键 Ctrl + Alt + L 也会执行此操作,同时应用其他更改。

要告诉IDE为标签前进插入空格,请转到文件设置编辑器代码样式(任何语言)制表符和缩进→然后取消选中 使用制表符< / strong>。

您可能还需要注意另一个控制文件缩进的设置:文件设置检测并使用现有文件缩进进行编辑< / strong>。由于某些原因,此设置并不总是一致的。如果您取消选中,则IntelliJ可能会也可能不会使用制表符自动缩进文件中的新行。

例如,假设您的一个Java文件中的每一行已经以制表符开头。例如,出于源代码控制的原因,您希望保留这些内容,但希望所有新代码都用空格代替制表符,包括缩进。因此,您已检测并使用现有文件缩进进行编辑 未选中,并且具有使用制表符 未选中(对于Java)。您清楚地告诉IntelliJ,即使缩进也不要插入制表符。

尽管如此,当您在以制表符开头的新行末尾按 Enter 时,IntelliJ会继续前进,并在刚创建的下一行的开头添加制表符。再次点击标签,它将添加空格(根据您的设置,这是预期的)。

如果有人知道如何解决此令人不愉快的意外行为,请发表评论。诚然,通过执行 Ctrl + Alt + L 将文件中的所有标签更改为空格,然后继续操作,您可以轻松解决此问题没有看到这种奇怪。但同样,这会修改源历史记录。

答案 2 :(得分:0)

编辑器>代码样式>检测并使用现有文件缩进进行编辑 如果文件缩进了空格,这会将“制表符”分成四个空格 当文件使用制表符缩进时,这还可以让您显示通知,并为您提供将其更改为空格的功能 注意-如果有区别,我使用的是intellij的专业版

答案 3 :(得分:0)

选择一个文件夹,执行:

    在MacO中通过Cmd+Shift+R在其中
  • 搜索并替换,例如。
  • 检查正则表达式选项
  • 提供[\t]作为要替换的文字
  • 提供空格为 替换文字

因为转换缩进操作会按文件进行归档,这对于大型项目而言不是很方便。

enter image description here

注意:在您仍然需要更改默认首选项以使用空格作为缩进时,如@DimaSan所述

答案 4 :(得分:-1)

您可以在“代码”>“重新设置代码格式”菜单中重新格式化每个文件以应用样式。 在Windows上,相关的快捷键是Ctrl-Alt-L。

选择包后,您可以选择重新格式化所有源文件(包括子目录)的格式,可以选择按文件扩展名过滤。

这是从IntelliJ IDEA 2018.2.3开始的Java文件。