如何在 Visual Studio 代码中递归取消缩进代码?

How can I recursively unindent code in Visual Studio Code?

我有一段代码,在 Visual Studio 代码中的每个嵌套块上都有一个过多的缩进,每个嵌套块有两个制表符(四个空格)。我希望每个嵌套块有一个制表符(两个空格)。我可以使用 shift + tab 取消缩进一个块,但如果我进一步取消缩进,嵌套结构将不会保留。

VS Code 中是否有一个命令可以递归取消缩进整个文件或选择,而不必手动删除每个不需要的缩进(即第一个块中的一个制表符,第二个块中的两个制表符等)?我只想更改缩进,所以我不能使用自动格式化,这会进行其他更改,例如 Prettier。

    <div class="grid-container">
        <div class="grid-item">
            <a href="https://www.goodreads.com/book/show/17255186-the-phoenix-project" target="_blank">
            <img src="https://i.gr-assets.com/images/S/compressed.photo.goodreads.com/books/1361113128l/17255186.jpg">
            </a>
        </div>
    </div>
  • Select 行首有 2 个制表符(4 个空格)
  • Shift+Ctrl+L
  • 键入 1 个制表符(或 2 个空格)
  • Esc(离开多光标模式)

如果只有部分文件需要取消缩进

  • Select 行首有 2 个制表符(4 个空格)
  • 使用 Ctrl+D 的次数与 want/need 一样多,直到所有需要的行上的所有缩进都是 select编辑
  • 键入 1 个制表符(或 2 个空格)
  • Esc(离开多光标模式)

多光标方法适用于最多 10000 个缩进。如果需要,请重复文件中的下一部分。

或 Find/Replace

  • Select 行首有 2 个制表符(4 个空格)
  • Ctrl+H(开始替换)
  • 在替换框类型中:1 个制表符(或 2 个空格)
  • 如果只有部分文件需要取消缩进
    • select 部分文件
    • 在“查找”对话框的 selection 中勾选
  • 在“查找”对话框中单击 Replace All