是否可以像在emacs中那样在vscode中插入或重新对齐注释(即M-;)。在emacs中是meta-;如果尚无评论,则会在预定义的评论列中插入新评论,或者如果有评论,则将评论与评论列重新对齐。这将是一个不错的功能。例如'cmd +;'会在javascript代码中插入“ //”。如果有扩展名或键盘快捷键定义可以做到这一点,我将不胜感激。
答案 0 :(得分:0)
我想我已经在宏中工作了。您将需要macrosRE扩展名。
在您的settings.json中:
"macros": {
"commentTabStop": [
"editor.action.commentLine",
// go to beginning of any text on line
"cursorHome",
// now select all whitespace at beginning of line
{
"command": "cursorMove",
"args": {
"to": "wrappedLineStart",
"select": true
}
},
// set your number of tab stops to place comment
"tab","tab","tab","tab","tab","tab"
]
}
这比我希望的要长,但是要处理对开头可能没有空格的现有 文本的注释。我假设您希望所有注释都垂直对齐,而不管最初可能有多少个前导制表符/空格。并且可以在空行上创建注释时使用。
function fooBar() {
const someVar;
}
成为
// function fooBar() {
// const someVar;
// }
不幸的是,该函数内的内部缩进丢失了。但是,如果稍后取消注释代码,则可以重新格式化该部分。选择它,然后 Ctrl - K Ctrl - F 将修复内部缩进。
要进行键绑定,请将其放入您的keybindings.json中:
{
"key": "ctrl+;",
"command": "macros.commentTabStop"
},