如何更改Atom中的缩进模式?

时间:2014-03-24 11:30:02

标签: indentation atom-editor

我还没有能够解决这个问题。 Atom似乎使用空格作为默认缩进模式。我更喜欢使用标签。 Sublime Text内置了切换和转换缩进功能。

有人知道如何更改Atom的缩进模式吗?

Sublime Text的一些截图:

Sublime Text indentation menu open Sublime text indentation menu

16 个答案:

答案 0 :(得分:198)

请参阅设置>下的软标签标签长度编辑器设置

要快速切换缩进模式,您可以使用 Ctrl-Shift-P 并搜索编辑器:切换软标签

答案 1 :(得分:65)

转到文件 - >设置

这里有3种不同的选择。

  1. 软标签
  2. 标签长度
  3. 标签类型
  4. 我做了一些测试,并得出了每个人所做的事情的结论。

    软标签 - 启用此功能表示默认情况下会使用空格(即新文件)。

    标签长度 - 如果启用了软标签,标签字符显示的宽度或标签插入的空格数。

    标签类型 - 这确定了用于现有文件的缩进模式。如果将其设置为auto,则将使用现有缩进(制表符或空格)。如果将其设置为软或硬,则无论现有缩进如何,都会强制使用空格或制表符。最好把它留在汽车上。

    注意: Soft = space,hard = tab

答案 2 :(得分:22)

将此添加到您的~/.atom/config.cson

editor:
    tabLength: 4

答案 3 :(得分:14)

OS X:

  1. 转到Atom -> prefrencesCMD + ,

  2. 向下滚动并选择您喜欢的“标签长度”

  3. enter image description here

答案 4 :(得分:7)

您可以尝试转到“Atom>偏好设置>编辑器”并将标签长度设置为4。

enter image description here

这是针对mac的。对于Windows,您必须找到适当的菜单。

答案 5 :(得分:6)

在此添加@Manbroski答案对我有用:

尝试Ctrl-Shift-P Editor: Toggle Soft Tabs

答案 6 :(得分:4)

在聚会之后,但是在每个项目的基础上执行此操作的一种干净方法是将 .editorconfig 文件添加到项目的根目录中。当您同时处理多个项目时,可以避免更改Atom的设置。

这是我目前正在使用的一个非常基本的设置示例。适用于Atom,ST等...

http://editorconfig.org/

<audio src="http://soundbible.com/grab.php?id=2083&type=mp3" controls>
  <audio src="http://soundbible.com/grab.php?id=2083&type=mp3" controls>
    Your browser does not support the audio tag.
  </audio>
  Your browser does not support the audio tag.
</audio>

<canvas  width="200" height="100" style="border:1px solid black;">
 <audio src="http://soundbible.com/grab.php?id=2083&type=mp3" controls>
    Your browser does not support the audio tag.
  </audio>
 Your browser does not support the canvas tag.
</canvas>

答案 7 :(得分:2)

内置于核心:请参阅Settings ⇒ Tab Type并选择auto

  

当设置为“auto”时,编辑器会根据缓冲区的内容自动检测选项卡类型(它使用非注释行上的第一个前导空格),或使用Soft Tabs配置设置的值如果自动检测失败。

您可能还想查看Auto Detect Indentation包。来自文档:

  

自动检测已打开文件的缩进。它会查看每个打开的文件,并根据文件内容设置文件特定的选项卡设置(硬/软选项卡,选项卡长度),而不是始终使用编辑器默认值。

     

您可能将原子配置为使用4个空格作为制表符,但打开一个默认为2个空格的rails项目。如果没有此软件包,则必须全局更改tabstop设置,否则可能会导致文件中的引线间距不一致。

答案 8 :(得分:2)

我遇到了同样的问题,上述建议都没有奏效。最后,我尝试取消选中“编辑器设置”菜单中的“原子软选项卡”,该选项有效。

答案 9 :(得分:2)

如果您使用的是Babel,您可能还需要确保更新“Language Babel”套餐。对我来说,即使我在核心编辑器设置中将Tab Length设置为2,语言Babel配置中的相同设置也会用4覆盖它。

Atom -> Preferences -> Packages -> (Search for Babel) -> Grammar -> Tab Length

确保合适的语法,有“Babel ES6 Javascript Grammar”,“language-babel-extension Grammar”以及“Regular Expression”。您可能希望更新所有这些内容以保持一致。

答案 10 :(得分:2)

Tab Control以与你问题中描述的方式类似的方式提供了很好的控制。

对于JavaScript开发人员来说,使用ESLint配置ESLint Tab Length也很好。

或者如果您使用.editorconfig来定义特定于项目的缩进规则,则会EditorConfig

答案 11 :(得分:1)

如果全局制表符/空格缩进设置不再适合您的需求(IE您发现自己使用具有不同缩进格式的旧代码库,并且需要在它们之间快速切换,并且自动检测不起作用)您可能会尝试使用tab-control插件,它会复制屏幕截图中菜单的功能。

答案 12 :(得分:1)

当Atom自动缩进检测让它无可救药地错误并且拒绝让我输入一个文字Tab字符时,我最终找到了'Force-Tab' extension - 它让我重新控制。 我想保留shift-tab for outdenting,所以设置ctrl-tab以插入一个硬标签。在我的键盘图中,我添加了:

'atom-text-editor': 'ctrl-tab': 'force-tab:insert-actual-tab'

答案 13 :(得分:0)

如果您使用的是版本1.21.1:

  1. 点击包/设置查看/打开
  2. 选择&#34;编辑&#34;在左侧面板
  3. 直到你看到&#34;标签长度&#34;
  4. 为止
  5. 编辑值。我喜欢把它设置为4。
  6. 现在,只需关闭活动标签页,即可完成。

答案 14 :(得分:0)

此处所有最受欢迎的答案都是很好的答案,它们会打开制表符的空格,但它们都缺少一件事。如何将空格而不是制表符应用于现有代码。

要执行此操作,只需选择要格式化的所有代码,然后转到“编辑”->“行”->“自动缩进”,它将修复所有选定的内容。

或者,您可以只选择要格式化的所有代码,然后使用Ctrl Shift P并搜索“自动缩进”。只需在搜索结果中单击它,它将修复所有选定的内容。

答案 15 :(得分:0)

更改特定于语言的配置

我更改了默认选项卡设置,并且在编辑文件(Python文件)时仍然没有影响。当我修改〜/ .atom / config.cson中的“ *”设置时,它也没有改变。我对这两个都没有很好的解释。

但是,当我将以下内容添加到config.cson时,我能够将Python文件中的标签更改为2个空格:

'.source.python':
  editor:
    tabLength: 2

感谢此资源提供解决方案:Tab key not respecting tab length