如何在YAML中阻止注释?

如何在YAML中注释一行?

1141846 次浏览

YAML支持内联注释,但不支持块注释。

维基百科

注释以数字符号(#)开始,可以从一行的任何地方开始,并持续到该行的末尾

与JSON的比较,也来自维基百科

语法差异很微妙,在实践中很少出现:JSON允许扩展字符集,如UTF-32,YAML需要在逗号、等于和冒号等分隔符后加上空格,而JSON没有,并且JSON的一些非标准实现扩展了语法以包括Javascript的/* ... */注释。处理这种边缘情况可能需要在解析为内联YAML之前对JSON进行简单的预处理。

# If you want to write# a block-commented Haiku# you'll need three pound signs

规格只描述了标记注释的一种方式:

显式注释由“#”指示符标记。

仅此而已。没有块注释。

不要试图聪明,但如果您使用Sublime Text作为编辑器,步骤是:

  1. 选择块
  2. Mac上的cmd+//或Linux和Windows上的ctrl+//
  3. 利润

我想其他编辑器也有类似的功能。你在使用哪一个?我很乐意做一些挖掘。

在Vim中,您可以执行以下操作之一:

  • 注释所有行::%s/^/#
  • 评论行10-15::10,15s/^/#
  • 评论行10到当前行::10,.s/^/#
  • 评论行10到结束::10,$s/^/#

或使用视觉块:

  1. 通过ctrl+v输入可视块后选择多行列。
  2. r,然后按#注释掉替换所选内容的多行块,或按Shift+i#Esc在所选内容之前插入注释字符。

对于Windows上的Ruby mine用户:

在编辑器中打开文件选择块并按Ctrl+正斜杠,您将选择以#开头的块。

现在,如果您想取消注释注释块,请再次按相同的组合键Ctrl+正斜杠

Emacs有注释-dwim(Do What I Mean)-只需选择块并执行以下操作:

M-;

这是一个切换-用它来注释和取消注释块。

如果您没有安装yaml模式,您需要告诉Emacs使用哈希字符(#)。

在YAML中阻止注释的一种方法是使用Notepad++等文本编辑器一次向多行添加#(注释)标记。

在Notepad++中,您可以使用选定文本的“块注释”右键单击选项来执行此操作。

哇图片!

如果您将Eclipse与yedit插件(. yaml文件的编辑器)一起使用,您可以通过以下方式注释掉多行:

  1. 选择要注释的行,然后
  2. Ctrl+Shift+C

要取消评论,请遵循相同的步骤。

另一种方法:

如果

  • 您的YAML结构有明确定义的字段供您的应用程序使用
  • 并且您可以自由添加不会弄乱您的应用程序的其他字段

然后

  • 在任何级别,您都可以添加一个名为“描述”或“评论”或“注释”或其他名称的新块文本字段

示例:

而不是

# This comment# is too long

使用

Description: >This commentis too long

Comment: >This comment is also too longand newlines survive from parsing!

更多优势:

  1. 如果注释变得大而复杂并且具有重复模式,您可以将它们从纯文本块提升到对象
  2. 您的应用程序将来可能会阅读或更新这些评论

对于Visual Studio Code(VSCode)用户,注释多行的快捷方式是突出显示要注释的行,然后按:

ctrl+//

再次按ctrl+//也可用于关闭一个或多个选定行的注释。

在Azure Devops浏览器(管道yaml编辑器)中,

Ctrl+K+C评论块

Ctrl+K+U取消注释块

还有一个“切换块注释”选项,但这对我不起作用。输入图片描述

还有其他“奇怪”的方式:右键单击查看“命令面板”或F1

在此处输入图片描述

然后选择光标选项。输入图片描述

现在只是#的问题

甚至更聪明[Ctrl+k]+[Ctrl+c]

在.gitlab-ci.yml文件下面工作::

注释掉一个块(多行):选择整个块部分>Ctrl K C

取消注释已注释的块(多行):选择整块部分>Ctrl K U