sublimetext3 - 如何使 Sublime Text 3 在 ctrl +/注释后将光标移动到下一行?

标签 sublimetext3

我想在不使用箭头的情况下用单行注释注释掉代码片段,就像我在 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/

相关文章:

sublimetext3 - Sublime Text 3 片段,以日期和时间作为自定义变量

python - 在 Sublime Text 3 插件中获取当前行

sublimetext3 - Sublime-Text 强制不加载以前的文件

c - 在 notepad++ 和 Sublime Text 3 中打开一个简单的 .exe 文件会产生非常不同的结果

javascript - 如何在 Sublime 3 中为 tern-js 设置跳转到方法定义键绑定(bind)

perl - Sublime 3 (Ubuntu) 中的交互式 Perl 编程

sublimetext3 - 如何更改 Sublime Text 中新文件的默认语法突出显示

python - 我如何在 Anaconda 中正确使用 virtualenv?

git - 禁用 (GitGutter) 关于提交 Sublime Text 的消息

python - 打印到(并覆盖)状态指示器的同一行