我想在不使用箭头的情况下用单行注释注释掉代码片段,就像我在 IDEA 中所做的那样,但是 Sublime Text 3 在注释后保持在同一行。我怎样才能改变这种行为?
最佳答案
最简单的解决方案是为此使用宏,它将用于切换行注释然后移动光标的命令组合在一起,然后重新绑定(bind)键以运行宏。
这样的宏看起来如下所示。这里保存为Packages\User\comment_line.sublime-macro
.
[
{
"command": "toggle_comment",
"args": {"block": false }
},
{
"command": "move",
"args": {"by": "lines", "forward": true }
}
]
有了这个,您可以将如下绑定(bind)添加到自定义键绑定(bind)中:{
"keys": ["ctrl+/"],
"command": "run_macro_file",
"args": {"file": "res://Packages/User/comment_line.sublime-macro"},
"context": [
{ "key": "selection_empty", "operator": "equal", "operand": "true", "match_all": true },
]
},
如果您在保存时更改宏的名称,则需要在此处反射(reflect)。此绑定(bind)包含一个上下文,使其仅在没有选择时应用,在这种情况下,此绑定(bind)将被忽略,Sublime 将使用默认值。
如果您愿意,可以将其删除。然而,WebStorm(我目前唯一方便使用的 JetBrains 工具)以这种方式运行,因此假设 IntelliJ 也这样做,这更准确地模仿了那里发生的事情。
此外,如果您将不同的键映射到注释命令,请确保原始行是 以上新增内容:
{ "keys": ["ctrl+q"], "command": "toggle_comment", "args": { "block": false } },
{
"keys": ["ctrl+q"],
"command": "run_macro_file",
"args": {"file": "res://Packages/User/comment_line.sublime-macro"},
"context": [
{ "key": "selection_empty", "operator": "equal", "operand": "true", "match_all": true },
]
},
关于sublimetext3 - 如何使 Sublime Text 3 在 ctrl +/注释后将光标移动到下一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41825142/