你可以用宏很好地做到这一点。使用像多命令这样的宏扩展把它放到你的settings.json
:
"multiCommand.commands": [
{
"command": "multiCommand.padTrailingSpaces",
"sequence": [
"editor.action.insertCursorAtEndOfEachLineSelected",
"cursorHomeSelect",
{
"command": "editor.action.insertSnippet,
// pad end of each line with lots of spaces's'
"args": {
"snippet": "$TM_SELECTED_TEXT ",
}
},
"cursorHomeSelect",
{
"command": "editor.action.insertSnippet",
"args": {
// keep first 30 characters, increase if you typically need more
"snippet": "${TM_SELECTED_TEXT/(.{30}).*/$1/g}",
}
}
]
}
]
上面在每行的末尾放置了一个光标,添加了比你应该需要的更多的空格,然后每行只保留前 30 个字符。
选择一些键绑定(在 keybindings.json 中):
{
"key": "alt+s",
"command": "extension.multiCommand.execute",
"args": { "command": "multiCommand.padTrailingSpaces" },
"when": "editorTextFocus"
},

首先选择您要填充的所有行,然后触发您的键绑定。然后至少你有所有的光标与填充对齐,并且很容易一次向左或向右移动所有光标。
您可能可以减少30
一些我仅用于演示目的的 - 取决于您最长的线路通常有多长。