Editor 如何在Sublime Text 2中用制表符替换四个空格?

Editor 如何在Sublime Text 2中用制表符替换四个空格?,editor,sublimetext,Editor,Sublimetext,我想用制表符替换由另一个文本编辑器编写的所有“四个空格”。如何操作?在主菜单上 查看->缩进->将缩进转换为制表符/空格在状态栏的右下角,单击空格:N(或制表符宽度:N,其中N为整数),确保从四个空格转换时显示制表符宽度:4,然后从首次单击时出现的上下文菜单中选择“将缩进转换为制表符” 同样,如果要执行相反的操作,请单击状态栏上的空格或选项卡宽度文本,然后从同一菜单中选择 对\t(反斜杠-t,一个制表符)执行正则表达式“搜索”,并替换为四个空格 主菜单或右下角的状态栏间距菜单都可以做同样的事情,

我想用制表符替换由另一个文本编辑器编写的所有“四个空格”。如何操作?

在主菜单上


查看->缩进->将缩进转换为制表符/空格

在状态栏的右下角,单击
空格:N
(或
制表符宽度:N
,其中N为整数),确保从四个空格转换时显示
制表符宽度:4
,然后从首次单击时出现的上下文菜单中选择“将缩进转换为制表符”

同样,如果要执行相反的操作,请单击状态栏上的
空格
选项卡宽度
文本,然后从同一菜单中选择

\t
(反斜杠-t,一个制表符)执行正则表达式“搜索”,并替换为四个空格

主菜单或右下角的状态栏间距菜单都可以做同样的事情,只需较少的工作量。

选择全部,然后:

Windows/Linux: Ctrl+Shift+p

然后键入“缩进”


雨衣: Shift+Command+p


然后键入“缩进”

将Sublime配置为始终使用选项卡,尝试将以下内容添加到“首选项->设置用户”:

{
    "tab_size": 4,
    "translate_tabs_to_spaces": false
}

更多信息请点击此处:

创建一个快捷键绑定


{“keys”:[“super+alt+t”],“command”:“unexpand_tabs”,“args”:{“set_translate_tabs”:true}

将其添加到首选项>键绑定(用户)
当您按super+alt+t时,它会将空格转换为制表符

您可以添加简易键绑定:

首选项>密钥绑定-用户:

[
    { "keys": ["super+l"], "command": "reindent"},
]

现在选择行或文件并点击:command+l

如果要递归地将此更改应用于directoy中的所有文件,可以使用查找>在文件中查找。。。模态:

编辑我没有在图像中突出显示它,但您必须单击左侧的.*按钮,让Sublime将查找字段解释为regex/Edit

编辑2我忽略了在正则表达式中添加字符串起始锚点。我正在更正下面的问题,并将在有机会/编辑时更新图像

查找字段
^[^\S\t\n\r]{4}
中的正则表达式将以4个为一组匹配空白字符(不包括制表符和换行符)。替换字段
\t
表示您想用选项卡替换它们


如果单击Where字段右侧的按钮,您将看到有助于确定搜索、替换目标的选项<代码>添加文件夹选项将允许您选择要从中递归搜索的文件夹。
addincludefilter
选项将允许您将搜索限制为特定扩展名的文件

虽然所有答案都是正确的,但这是最简单的一个!谢谢你承认;它是:)从来没有使用过状态栏上下文菜单,我想我一直认为它们是静态指示器。它们并没有像它们可能应该的那样突出,我有几个错误,我必须为sublime no show stoppers归档。优秀的编辑器。如果您希望编辑器记住中所有文件的此设置,还可以使用中的设置project@phreakhead我不确定我是否完全理解您的需要(考虑打开一个新问题?),但如果您将“translate_tabs_to_spaces”设置为false,那么当您键入(新文本)并点击tab时,它将是一个制表符。如果您的文件已经有一些缩进作为4spaces(而不是tabs),您可以使用屏幕截图中菜单底部的选项将缩进转换为tabs。这与海报的内容相反asked@MaxNanasy的确如此。我想我对制表符的厌恶是如此之深,以至于是潜意识的。这个答案与所问的问题完全无关。请考虑将其改为正确答案或以其他方式删除您的答案。@ AndrewDunn“完全”?真正地事物的反面怎么可能“完全”不相关?从定义上讲,这是相关的,而且修复是显而易见的。如果我们能够编辑答案就好了。这是正确的答案,因为即使在选择“使用空格缩进”后,该选项也会在重新启动时重置。OP要求相反的结果。奇怪的是,我们没有选择。讨厌制表符。这是最快的,同时保持双手在键盘上+1令人惊奇的。。。这给了你一个选项,可以从像Bootstrap这样的带有两行缩进的文件中“删除行”,我想这并不能完全满足他的要求。这也会使线条重新缩进,因此实际上会改变缩进,而他只是询问如何将空格转换为制表符。无论如何,这是一个很好的答案,但在某些情况下,它会打乱你的缩进(例如,想想刀片缩进模板)。这是更好的,因为它与复制粘贴的代码一起工作。