Sublime Text 3 “切换块注释”不再注释掉整个 CSS 选择器
Posted
技术标签:
【中文标题】Sublime Text 3 “切换块注释”不再注释掉整个 CSS 选择器【英文标题】:Sublime Text 3 "toggle block comment" no longer comments out entire CSS selector 【发布时间】:2021-03-01 00:34:45 【问题描述】:我已经有几个月没有使用 ST 了,我很确定它曾经在使用 ctrl+shift+/
(“切换块注释”)时注释/取消注释整个 CSS 选择器,光标位于所述选择器内,但实际上没有已选中。
是否有人知道是什么原因导致这种行为被简单地添加到光标周围的/* */
所取代?
我尝试过使用SCSS
模式(这是我通常使用的)和香草CSS
模式。
谢谢!
【问题讨论】:
【参考方案1】:我真正在寻找的是Emmet 的“切换评论”命令,在 CSS 的情况下,它切换评论整个选择器。我相信随着相应软件包的更新,行为发生了变化并停止挂钩ctrl+shift+/
,但我可能是错的。
我最终在Preferences > Key Bindings
中为所述命令添加了键盘快捷键,如下所示:
"keys": ["alt+/"],
"command": "emmet_toggle_comment"
,
【讨论】:
因为它是一个完全不同的命令,你可以使用任何你想要的键绑定。如果您想使用块注释键进行注释,也可以交换默认键绑定。 确实,但我更喜欢保留 sublime 的默认toggle block comment
快捷方式。它的行为与 emmet 的 toggle comment
不同,有时以更有用的方式。【参考方案2】:
有两种用于切换 cmets 的绑定,而您正在使用的绑定是用于块 cmets 的绑定,而您可能打算使用用于 line cmets 的绑定。在最近的记忆中,这并没有改变。
所涉及的密钥因平台而异,但出于我们的目的:
Ctrl+/ 绑定到toggle_comment
,block
设置为false
Ctrl+Shift+/ 绑定到toggle_comment
,block
设置为true
这里可能令人困惑的是,CSS 的 /* */
样式 cmets 实际上是块 cmets,这可能会让您认为您需要第二个绑定。
实际上,参数的值控制使用语言支持包定义的任何注释分隔符来注释的内容。一种语言(例如 C++)可以为不同的样式定义不同的注释分隔符,但这不是必需的。
当块设置为true
时,注释区域是选定的文本,而当它是false
时,它是插入符号所在的行。
所以,假设示例 css:
body
color: red;
如果光标位于 :
并且您使用 Ctrl+Shift+/,则结果如下,因为选择被换行但选择为空(在视觉上看起来像selection 是换行符)。
body
color/**/: red;
另一方面,光标在同一个地方并使用 Ctrl+/ 结果是:
body
/*color: red;*/
【讨论】:
感谢您的解释,但我知道这一切,这不是我要问的。以上是关于Sublime Text 3 “切换块注释”不再注释掉整个 CSS 选择器的主要内容,如果未能解决你的问题,请参考以下文章