【问题标题】:Keyboard shortcut to comment lines in Sublime Text 3Sublime Text 3中注释行的键盘快捷键
【发布时间】:2013-07-18 13:03:11
【问题描述】:

在 Sublime Text 2 中,可以使用 Ctrl+/Ctrl+Shift+/。根据菜单Edit > Comment,这些快捷方式应该是有效的,但在 Sublime Text 3 (build 3047) 中它们似乎不再起作用。有人知道 Linux 和 MacOS 的正确默认键盘快捷键吗?还是bug?

【问题讨论】:

  • 打开控制台(查看->显示控制台)并在其中写入:sublime.log_commands(True) 并按Ctrl+/Ctrl+Shift+/。你在控制台输出中得到了什么?
  • Build 3049 刚刚在开发频道上发布。尝试安装它并查看问题是否已解决。而且,顺便说一句,在 OSX 上它是 Cmd-/,而不是 Ctrl-/
  • @dusan 控制台说 command: move_to_group {"group": 6} 表示 Ctrl+Shift+/ 和 command: focus_group {"group": 6} 表示 Ctrl+/
  • 我认为这已在较新的版本中得到修复。刚刚 dl'ed sublime 3 for Ubuntu 13.10 32 bit 和 control + / 仍在使用 cmets 的热键。

标签: keyboard-shortcuts sublimetext3


【解决方案1】:

这似乎是一个错误:http://www.sublimetext.com/forum/viewtopic.php?f=3&t=11157&start=0

作为一种解决方法,转到Preferences->Key Bindings - User 并添加这些键绑定(如果您使用的是 Linux):

{ "keys": ["ctrl+7"], "command": "toggle_comment", "args": { "block": false } },
{ "keys": ["ctrl+shift+7"], "command": "toggle_comment", "args": { "block": true } }

更新:这也适用于 Windows 8(请参阅 @Sosi 的评论)

【讨论】:

  • 是的,这似乎是一个错误,但解决方法并不令人满意,至少对于 Linux (Ubuntu)。
  • 如果您再次执行sublime.log_commands(True) 并按Ctrl+/Ctrl+Shift+/,您是否仍然收到move_to_groupfocus_group 命令?
  • 你是对的,你得到了toggle_comment {"block": false}toggle_comment {"block": true}。不知何故,block:true 命令激怒了我,它似乎效果不佳。 block:false 命令按预期工作。
  • 我想指出,这也适用于 Win8 上的 Sublime 3 ;) 谢谢!
  • toggle根据css,html,js有些问题
【解决方案2】:

您可以将以下行添加到 Preferences / Key Bindings - User:

{ "keys": ["control+keypad_divide"],"command": "toggle_comment", "args": {"block": false} }, 
{ "keys": ["shift+control+keypad_divide"],"command": "toggle_comment", "args": {"block": true}}

这就是我解决问题的方法 - 将“ctrl”替换为“control”,将“/”替换为“keypad_divide”。

【讨论】:

  • 我想知道您是如何想到备用controlkeypad_divide 的?
  • 在 Fedora 29 上工作,而 ctrl 和 7 没有。
  • 这应该是公认的答案,因为它不是解决方法
【解决方案3】:

这是一个键盘国际化问题。

在标准的美国 QWERTY 键盘上,在制作 Sublime Text 的澳大利亚使用,/ 很容易获得:

许多其他键盘并非如此。以德国 QWERTZ 键盘为例。需要按 SHIFT+7 来获得 /。这就是为什么评论不能在这些键盘上正常工作的原因。

将用户键绑定更改为下面列出的,将适用于德语 QWERTZ 键盘。

{ "keys": ["ctrl+7"], "command": "toggle_comment", "args": { "block": false } },
{ "keys": ["ctrl+shift+7"], "command": "toggle_comment", "args": { "block": true } }

如果问题仍然存在于不同的键盘布局中,请相应地更改键绑定。

【讨论】:

  • 谢谢 - 帮助我理解完整!
【解决方案4】:

您可以通过以下方式修复此错误:

[
   { "keys": ["ctrl+keypad_divide"], "command": "toggle_comment", "args": { "block": false } },
   { "keys": ["ctrl+shift+keypad_divide"], "command": "toggle_comment", "args": { "block": true } },
]

它允许使用 CTRL+/CTRL+SHIFT+/ 进行评论知识库> 你可以在键盘上使用 / =)

【讨论】:

    【解决方案5】:

    这对我有用。

    cmd + /

    我在 Mac OS X El Capitan 上。 Sublime Text 3(稳定版 3114)。

    【讨论】:

      【解决方案6】:

      我也在 Linux 下。对我来说,它只有在我按下 CTRL+SHIFT+/ 时才有效,它就像一个单独的注释,而不是一个块注释。原因是要加入 / 字符,我必须按 SHIFT,如果没有,sublime text 会检测到我按了 CTRL + :。

      这是我恢复正常偏好的解决方案。写在Key Bindings - User:

      { "keys": ["ctrl+:"], "command": "toggle_comment", "args": { "block": false } }, { "keys": ["ctrl+shift+:"], "command": "toggle_comment", "args": { "block": true } }

      【讨论】:

        【解决方案7】:

        在 OSX Yosemite 上,我通过 System PreferencesKeyboardShortcuts 解决了这个问题。在App Shortcuts 下,禁用绑定到CMD+SHIFT+7Show Help menu

        我的键盘布局是挪威语,操作系统语言为英语。

        【讨论】:

        • 这修复了 OSX 上国际键盘的问题
        【解决方案8】:

        在mac中按cmd + /比你想象的要简单。

        【讨论】:

          【解决方案9】:

          对于巴西 ABNT 键盘,您可以使用 Ctrl + ; 来评论并重复它以删除评论。

          【讨论】:

            【解决方案10】:

            在我的笔记本键盘 ABNT 2 中,我可以使用 CTRL+; 快捷方式作为块和行的默认注释操作。取消注释的相同快捷方式。

            【讨论】:

            • 似乎键盘没有正确重新调整。奇怪的是“/”键在写的时候能正常工作,而快捷键就不行了。
            【解决方案11】:

            Ctrl + / 用于单行注释,
            Ctrl + Alt + / 用于块或多行 cmets。

            【讨论】:

              【解决方案12】:

              我是 ubuntu 18,带有 sublime text 3.2

              点击率 + /

              【讨论】:

                【解决方案13】:

                在 MAC 上而不是 shift 使用 ALT 像这样 CMD + ALT + /

                【讨论】:

                  【解决方案14】:

                  我更喜欢按Ctrl + / 来(取消)评论当前行。另外,我希望光标向下移动一行,因此我可以轻松(取消)评论几行。如果你安装了“命令链”插件,你可以将这两个操作结合起来:

                  [
                      { 
                          "keys": ["ctrl+keypad_divide"], 
                          "command": "chain",
                          "args": {
                              "commands": [
                                  ["toggle_comment", { "block": false }],
                                  ["move", {"by": "lines", "forward": true}]
                              ]
                          }
                      }
                  ]
                  

                  【讨论】:

                    【解决方案15】:

                    确保文件是可识别的类型。我打开了一个 yaml 文件(没有 .yaml 文件扩展名),Sublime Text 将其识别为纯文本。纯文本没有注释方法。将文件类型切换为 YAML 使评论快捷方式起作用。

                    【讨论】:

                      【解决方案16】:

                      有同样的问题。 检查控制台上的 sublime.log_input(True) 命令以查看使用 CTRL+/SHIFT+CTRL+/ 快捷键。然后用那些替换快捷方式。 (更改 / 为 keypad_divide 对我有用)

                      【讨论】:

                        【解决方案17】:

                        对我来说,在 Mac OS Sierra 上:

                        { "keys": ["super+forward_slash"], "command": "toggle_comment", "args": { "block": true } }, { "keys": ["super+alt+:"], "command": "toggle_comment", "args": { "block": false } },
                        

                        【讨论】:

                          【解决方案18】:

                          Windows 版 Sublime 3:

                          添加注释标签 -> CTRL + SHIFT + ;
                          整行变成注释行 -> CTRL + ;

                          【讨论】:

                            【解决方案19】:

                            如果快捷键ctrl+?ctrl+shift+?ctrl+/ 不起作用,请尝试切换到另一个,例如 ctrl+1ctrl +shift+1,对我有用。

                            { "keys": ["ctrl+1"], "command": "toggle_comment", "args": { "block": false } }, { "keys": ["ctrl+shift+1"], "command": "toggle_comment", "args": { "block": true } }

                            【讨论】:

                              【解决方案20】:

                              在我的 Mac 上,快捷方式是 ⌘cmd + / 这使得多行注释 为单行:

                              // if ($username && $password) {
                              //  echo "You are good to go";
                              // } else {
                              //  echo "Fields cannot be blank";
                              // }
                              

                              ⌥ alt + ⌘cmd + / 结果是从选择开始到结束的整体评论。

                              /*
                              if ($username && $password) {
                                  echo "You are good to go";
                              } else {
                                  echo "Fields cannot be blank";
                              }
                              */
                              

                              【讨论】:

                                【解决方案21】:

                                如果有人对 Windows 7 上的 Sublime 3 有进一步的问题,以上建议都对我不起作用。但是,当我 1 - 以管理员身份重新运行应用程序并 2 - 突出显示并选择编辑 -> 评论 -> 切换评论时,之后我能够使用用户首选项设置键绑定来切换 cmets。 我真的没有解释为什么它会起作用,只是它确实起作用了。

                                【讨论】:

                                  【解决方案22】:

                                  打开 sublime Text 3 并转到 Preferences 菜单并单击 Key Bindings 然后粘贴此代码以使用 CTRL+D 创建注释快捷方式。

                                  [{ "keys": ["ctrl+d"],"command": "toggle_comment", "args": {"block": false}},]
                                  

                                  然后保存。 现在你可以使用快捷方式了。

                                  【讨论】:

                                    【解决方案23】:

                                    在 Windows 上,使用 Ctrl + Shift + ?。 您将能够评论 HTML。

                                    【讨论】:

                                      【解决方案24】:

                                      这在 Win 10 上对我来说效果很好:

                                          [{ "keys": ["ctrl+7"], "command": "toggle_comment", "args": { "block": false } },
                                      { "keys": ["ctrl+shift+7"], "command": "toggle_comment", "args": { "block": true } }
                                      ]
                                      

                                      请注意,“[]”是必要的,如果你错过它们,它会给你一个错误。

                                      【讨论】:

                                        【解决方案25】:

                                        我可能迟到了,但从我的 build 3176 开始,该错误似乎已修复。刚刚使用了 Ctrl+T,它适用于 CSS 文件(Kubuntu 18.10)

                                        【讨论】:

                                          【解决方案26】:

                                          在 Windows 中使用 ctrl + shift + : 为 Python 进行注释。

                                          【讨论】:

                                            猜你喜欢
                                            • 2012-07-20
                                            • 1970-01-01
                                            • 1970-01-01
                                            • 1970-01-01
                                            • 2014-11-23
                                            • 2012-08-31
                                            • 1970-01-01
                                            • 1970-01-01
                                            • 1970-01-01
                                            相关资源
                                            最近更新 更多