取消注释缩进代码块时的奇怪行为

Weird behaviour when uncommenting an indented block of code

我使用 BBEdit(和之前的 Textwrangler)已经有一段时间了,但有一件事让我很烦恼——每次使用取消注释的块选项似乎都会吃掉一个 space。这使得它无用,因为它打破了缩进。 我也不知道 "Un/Comment Block" 和 "Un/Comment Lines" 之间的区别,他们似乎在做同样的事情,也有这种奇怪的行为。

您可以通过在缩进代码块上多次点击 Cmd+/ 来轻松检查这一点,例如:

nodes:
  keypair:
    type: cloudify.openstack.nodes.KeyPair
    properties:
      use_external_resource: true
      resource_id: { get_input: key_pair_name }
      private_key_path: { get_input: private_key_path }

最终整个街区都会被理顺。为什么会这样? 我检查了与缩进相关的所有可能选项,但无法消除它。

我正在使用 BBEdit v12.6。

编辑:刚注意到 YAML 代码文件 (.yaml) 会发生这种情况,但 Python 不会发生这种情况。

对于不支持块注释语法的语言(例如 C 中的 /*...*///),"Un/Comment Block" 和 "Un/Comment Lines" 在功能上是相同的。

关于行注释定界符后如何管理空格,有一些...好奇之处。如果声明的语言分隔符有尾随空格,BBEdit 会尝试弄清楚你想要做什么。有些语言关心,有些则不关心;有时结果与语言的语法相关。这是未来研究的领域。 :-)