escaping - simple - ¿Cómo escapar de dos puntos y otros caracteres especiales en una cadena YAML?
qué es un carácter de escape en consultas sql (2)
Tengo el siguiente fragmento de YAML:
description: |
"API for bean consuming applications.
Examples: painted pony, lima bean"
El editor de Swagger interpreta los dos puntos (:) como un carácter especial, a pesar de las comillas.
De acuerdo con la respuesta aceptada a esta pregunta , los dos puntos no deben ser tratados como caracteres especiales.
¿Se trata de un error de Swagger o se necesita una secuencia de escape para usar los dos puntos en los literales de texto entre comillas?
Intenté descubrir esto usando la especificación YAML pero me rendí.
¿Cómo tengo que leer esa especificación para responder la pregunta?
¿Hay una diferencia entre comillas simples ( ''
) y comillas dobles ( "
) en YAML?
¿La tubería ( |
) o la construcción mayor que ( >
) solo influyen en el manejo de saltos de línea o en el manejo de caracteres especiales, también?
Considero que esto es un error en swagger, pero he visto problemas en otros editores, por ejemplo, al resaltar YAML.
Cuando una cadena escalar está rodeada por comillas simples ''....''
el único escape dentro de esa cadena que se puede hacer es insertar una comilla simple doble para indicar una comilla simple:
''It''''s a good question''
Cuando las comillas dobles , "...."
, recorran una cadena escalar, se utiliza la barra invertida ( /
) para escapar, y debe escapar al menos la barra invertida y las comillas dobles. Además, puede escapar de otros caracteres especiales como salto de línea ( /n
) y escapar de un final de línea precediéndolo con una barra invertida.
La especificación de YAML dice que no hay forma de escapar de los caracteres dentro de los escalares literales (comenzando con |
), por lo que no puede insertar nuevas líneas adicionales u otras secuencias de escape dentro de estos.
Para el estilo plegado ( >
), el comportamiento de escape es como con los escalares literales.
Todos los escalares de cadena, excepto los escalares simples (aquellos sin comillas o >
/ |
) pueden contener :
seguidos de espacio sin problema, y si un editor interpreta eso de manera diferente, es comprensible (ya que el análisis completo de YAML es costoso), pero incorrecto.
Tuve exactamente el mismo problema y descubrí que usar el código de escape HTML funciona :
, que es a lo que he recurrido.