【问题标题】:How to remove tabs on multiple rows at once如何一次删除多行上的标签
【发布时间】:2019-07-27 02:26:26
【问题描述】:

这不是编程问题,而是android-studio编辑器的不便。

如果您在所有行之前都有一个不需要的标签,您如何一次将它们全部删除?现在我必须手动执行超过 50 行来删除所有选项卡以使我的代码看起来干净。

如果您想一次添加多个选项卡,只需选择所有代码并按下选项卡按钮即可。所以我正在寻找相反的情况。

【问题讨论】:

    标签: android-studio code-formatting


    【解决方案1】:

    如果我没听错的话,你想美化代码本身。幸运的是,您根本不必手动执行此操作。

    它有一个键绑定,这可能因您的操作系统和默认使用的布局而异。转到文件 -> 设置 -> 键盘映射并搜索 auto-indent。这是我在使用默认键盘映射的 Windows 10 上得到的:

    同样,您可能依赖于操作系统(我假设这主要适用于 Mac)和您的键盘映射,但您可以使用 Ctrl+Alt+I.

    请注意,这主要是缩进。如果您选择打高尔夫球并想取消打高尔夫球,这将不起作用。至少它不适用于 Java。

    但是:这仅适用于 IDE 或插件支持的代码文件。这不适用于开箱即用的 .txt 文件。


    如果我误解了你,而你只想删除标签而不进行自动缩进,那么至少还有两个其他选项。

    第一个选项是使用多个游标。您可以使用 shift+alt+鼠标单击您想要光标的位置添加一个额外的光标,或者按住鼠标滚轮并在按住鼠标滚轮的同时移动光标。可能还有其他方法,但这是我所知道的两种。

    一旦你有多个光标,像往常一样删除标签。 但要小心!这样做可能会删除整行本身。如果是这样,您可以在左侧每个缩进级别执行 1 个制表符/n 个单位,然后按删除。

    (AFAIK)一次可以拥有多少个游标没有限制,但如果你愿意,理论上你可以一次使用 50 行。但一般建议 - 不要添加超出您一次可以看到的游标。这些确实并行运行,如果您不小心,很容易丢失跟踪,并且您可能最终会删除您不想删除的内容。


    最后,正则表达式解决方案:

    注意:注意这一点。如果使用不当,可能会得到不需要的结果。

    如果您只想在有限的区域内执行此操作,请先突出显示它。然后 CTRL+R,您将看到常规替换菜单。确保选中 RegexIn Selection

    要使用的基本正则表达式是^([\s]{2,4}|\t)。说明仅供参考:

    ^ - At the start of the line
    (
        \s{4}   - Match 4 spaces
        |\t     - Or a tab character
    )
    

    替换为空,然后单击“全部替换”(或者,如果您想在执行任何操作之前仔细检查,请使用常规的“替换”按钮)。这将替换一次出现的 4 个空格或单个制表符。如果您使用的缩进不是基于 4,请更改数字。

    仅当您发现自己的缩进不正确且所有相关行都相同时,这才有用和有用 - 它不会修复缩进错误和/或不一致,例如 3 空格缩进当您想要 4 个或同一块的随机索引时。请改用第一种或第二种方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-30
      • 2014-10-16
      • 2022-11-28
      • 1970-01-01
      • 1970-01-01
      • 2018-07-27
      相关资源
      最近更新 更多