기타

[YAML] 텍스트 표현 - 개행 처리

비번변경 2025. 1. 3. 20:46

개요

API 개발 업무 진행 중 사용할 설정 파일이 필요해졌는데, 필요한 값에 개행이 추가되어 있다. yaml 형식의 데이터에서 개행이 포함된 텍스트 값을 어떻게 설정하는지 적어둔다.

 

 

Literal

Yaml에서 개행이 포함된 block은 크게 두 가지 스타일이 존재한다. 그 중 하나는 | (pipe)로 표시하는 Literal 방식으로, yaml 사양에서는 "is the simplest, most restricted, and most readable scalar style"이라고 일컫는다.

my_pattern: |
  With his own sword,
  Which he did wave against my throat, I have ta’en
  His head from him.

Literal 방식은 값에 포함된 개행문자가 보존된다. 

값 중간에 포함된 여러 개의 개행문자도 유지된다.

하지만 값 마지막 줄에서의 개행문자는 하나로 인식한다.

 

 

Folded

Folded는 > (초과)로 표시하는 방식으로, yaml 사양에서는 "Folding allows long lines to be broken anywhere a single space character separates two non-space characters"라는 의미이다.

my_pattern: >
  With his own sword,
  Which he did wave against my throat, I have ta’en
  His head from him.

Folded 방식은 값에 포함된 개행문자를 공백으로 치환하되, 마지막 개행 문자는 유지한다.

하지만 값 중간에 위치한 두 개 이상의 개행 문자는 유지한다.

 값 마지막 줄에서의 개행문자는 하나로 인식하는 것은 Literal 방식과 동일하다.

 

 

참고 문서

https://iamjjanga.tistory.com/60

https://yaml-multiline.info/

📑 YAML 개념 & 문법 마스터 하기

https://yaml.org/spec/