YAML 의 가장 중요한 규칙
YAML 이 들여쓰기로 중첩 표시. 들여쓰기는 스페이스만 — 탭 금지. 대부분 파서가 들여쓰기 탭을 명확한 에러로 거부; 일부는 허용하고 정렬 조용히 깨뜨림.
얼마나 들여쓰기
spec 은 관대: 같은 블록 안에서 일관된 스페이스 수면 어떤 수든 작동. 관행은 2 칸. 일부 도구 (옛 Ansible role, 일부 Kubernetes manifest 예제) 는 4 칸 사용. 파일당 하나 골라 고수해.
부모의 이름 너머 들여쓰기
자식은 부모의 콜론이 아니라 이름 너머로 들여써야 해. foo:\n bar: 1 이 작동하는 건 bar 가 foo 시작 너머 앉기 때문. 한 칸이라도 misalign 하면 파서가 거부하거나 데이터 모양 다르게 읽음.
'tab vs space' 함정: 에디터가 filetype 감지에 따라 자동으로 탭 변환. YAML 파일이 'plain text' 로 감지되면 에디터가 탭 삽입, YAML 파서 죽음, 에러는 보통 'expected mapping value, got X' 라며 들여쓴 줄 가리킴 — 문제 탭 아니라. 에디터 설정: YAML 파일은 항상 스페이스 삽입.