如何在VS Code中删除空行?

问题描述 投票:-1回答:3

是否有删除空行的更好方法?目前,我正在手动删除它们,但很麻烦。

VSC

visual-studio-code
3个回答
0
投票

这里是扩展名Remove empty lines

enter image description here


0
投票

找到一种方法是在查找/替换中使用它

^$\n

还请确保启用:正则表达式

但是我希望有一个脚本可以运行它。


0
投票

您可以根据需要在宏中执行此操作。您将需要一个宏扩展名:multiCommand

在您的设置中:

  "multiCommand.commands": [

    {
      "command": "multiCommand.removeEmptyLines",
      // "interval": 50,
      "sequence": [
        {
          "command": "type",
          "args": {
            "text": "^\\n"
          }
        },
        "cursorHomeSelect",
        "editor.action.clipboardCutAction",
        "editor.action.startFindReplaceAction",
        "editor.action.clipboardPasteAction",

        //  focus to the replace input
        "editor.action.startFindReplaceAction",

        // clear the replace input, if any
        "editor.action.clipboardCutAction",

        "editor.action.replaceAll"
      ]
    }
  ]

这很棘手,因为您无法直接写入查找小部件(即使具有更长的延迟间隔)。但是您可以打印出要查找的内容“ ^\\n”,将其选中,剪切并打开查找小部件,它将自动使用剪贴板内容填充查找字段。 [请注意,此处需要使用额外的转义符“ ^ \ n”。]

然后还有更多命令来清除替换输入字段中可能存在的所有先前替换文本。

此外,您也知道,必须启用“ Use Regular Expression”选项。不幸的是,这是一个toggle,没有简单打开它的命令。因此,上面的宏无法调用toggle命令-如果您已将其关闭,则该宏将被关闭,并且查找将无法进行。因此,该宏必须假定您已经启用了“ Use Regular Expression”选项。我总是将其保持打开状态,几乎找不到需要暂时关闭的状态。

在您的keybindings.json中,设置您想要的任何键绑定:

{
    "key": "ctrl+alt+u",
    "command": "multiCommand.removeEmptyLines",
},

然后在任何空行上调用该键绑定,它将触发宏-删除文件中的所有空行(文件末尾的空行除外,因为文件末尾没有\ n)。

© www.soinside.com 2019 - 2024. All rights reserved.