我还无法弄清楚。Atom似乎使用空格作为默认缩进模式。我更喜欢有选项卡。Sublime Text具有用于切换和转换缩进的内置功能。
有人发现如何更改Atom的缩进模式吗?
Sublime Text的一些屏幕截图:
我还无法弄清楚。Atom似乎使用空格作为默认缩进模式。我更喜欢有选项卡。Sublime Text具有用于切换和转换缩进的内置功能。
有人发现如何更改Atom的缩进模式吗?
Sublime Text的一些屏幕截图:
Answers:
请参阅“设置”>“编辑器设置”下的“ 软选项卡”和“ 选项卡长度”。
要快速切换缩进模式,可以使用Ctrl-Shift-P并搜索“ 编辑器:切换软标签”。
Ctrl-Shift-P
Editor: Toggle Soft Tabs
转到文件->设置
这里有3种不同的选择。
我做了一些测试,得出了每个人所做的这些结论。
软选项卡 -启用此选项意味着默认情况下它将使用空格(例如,用于新文件)。
制表符长度 -制表符的显示宽度,或者如果启用了软制表符,则为制表符插入多少空格。
选项卡类型 -确定用于现有文件的缩进模式。如果将其设置为自动,它将使用现有的缩进(制表符或空格)。如果将其设置为软或硬,它将强制空格或制表符,而不考虑现有的缩进。最好将其保留为自动。
注意:软=空格,硬=制表符
将此添加到您的 ~/.atom/config.cson
editor:
tabLength: 4
在这里添加@Manbroski答案对我有用:
尝试 Ctrl-Shift-P
Editor: Toggle Soft Tabs
晚了一点,但是按每个项目执行此操作的一种干净方法是将.editorconfig文件添加到项目的根目录。同时处理多个项目时,无需更改Atom的设置。
这是我当前正在使用的非常基本的设置的示例。适用于Atom,ST等
# Automatically add new line to end of all files on save.
[*]
insert_final_newline = true
# 2 space indentation for SASS/CSS
[*.{scss,sass,css}]
indent_style = space
indent_size = 2
# Set all JS to tab => space*2
[js/**.js]
indent_style = space
indent_size = 2
这是内置的核心:请Settings ⇒ Tab Type
选择auto
:
设置为“自动”时,编辑器会根据缓冲区的内容自动检测选项卡类型(它使用非注释行上的第一个前导空格),如果自动设置,则使用“软选项卡”配置设置的值。检测失败。
您可能还想看看自动检测缩进包。从文档:
自动检测打开的文件的缩进。它查看每个打开的文件,并根据文件的内容而不是始终使用编辑器默认值来设置文件特定的选项卡设置(硬/软选项卡,选项卡长度)。
您可能已将atom配置为对选项卡使用4个空格,但打开一个默认为2个空格的rails项目。如果没有此软件包,则必须全局更改Tabstop设置,否则可能会导致文件中的引线间距不一致。
search-and-replace
使用命令面板convert spaces to tabs
(或类似的东西)。我认为过去对我有用。
我只是遇到了同样的问题,以上建议均无济于事。最后,我尝试取消选中“编辑器设置”菜单中的““原子软标签””,该方法可以正常工作。
\t
文件中没有任何内容时,我的箭头键会跳过空格...
“选项卡控件”以与问题中所述相似的方式提供了很好的控件。
对于JavaScript开发人员来说,使用ESLint配置的ESLint Tab Length也很不错。
或者,如果您使用.editorconfig
来定义特定于项目的缩进规则,则可以使用EditorConfig
当Atom自动缩进检测无可避免地出错并拒绝让我键入原义的Tab字符时,我最终找到了'Force-Tab'扩展名 -这使我获得了控制权。我想保留shift-tab来进行缩排,因此将ctrl-tab设置为插入硬标签。在我的键盘图中,我添加了:
'atom-text-editor':
'ctrl-tab': 'force-tab:insert-actual-tab'
如果您使用的是1.21.1版本:
现在,只需关闭活动的选项卡窗格即可。
更改特定于语言的配置
我更改了默认选项卡设置,并且在编辑文件(Python文件)时仍然没有影响。当我修改〜/ .atom / config.cson中的“ *”设置时,它也没有改变。我对这两个都没有很好的解释。
但是,当我将以下内容添加到config.cson时,我能够将Python文件中的选项卡更改为2个空格:
'.source.python':
editor:
tabLength: 2
感谢此资源提供了解决方案:Tab键不考虑Tab的长度