같은 텍스트 파일인데 Windows에서 만든 파일을 Mac에서 열면 이상하게 보일 때가 있습니다. 줄바꿈 문자의 차이 때문입니다.
줄바꿈 문자 종류
LF ( , 0x0A): Unix, Linux, macOS. CR ( , 0x0D): 구형 Mac. CRLF ( ): Windows.
문제 상황
Windows 파일을 Linux에서 열면 줄 끝에 ^M이 보이거나, 반대로 줄바꿈이 무시될 수 있습니다. 텍스트 변환기로 줄바꿈 형식을 통일할 수 있습니다.
Git 설정
core.autocrlf 설정으로 커밋 시 자동 변환할 수 있습니다. Windows에서는 true, Linux/Mac에서는 input을 권장합니다.
에디터 설정
VS Code는 우측 하단에서 LF/CRLF를 선택할 수 있습니다. .editorconfig로 프로젝트 단위 설정도 가능합니다.
프로그래밍과 텍스트 변환
프로그래밍에서 문자열 처리는 가장 기본적이면서도 중요한 영역입니다. 사용자 입력을 받아 처리하거나, 외부 API와 통신하거나, 데이터베이스에 저장할 때 항상 텍스트 변환이 필요합니다. 잘못된 처리는 보안 취약점이나 버그로 이어질 수 있습니다.
텍스트 변환기로 변환 결과를 미리 확인하면 코드 작성 시 참고할 수 있습니다. 특히 이스케이프 처리나 인코딩 변환은 규칙이 복잡해서, 도구를 사용해 검증하는 것이 좋습니다.
다양한 텍스트 형식의 이해
JSON, XML, CSV, HTML 등 텍스트 기반 데이터 형식은 각각 고유한 규칙을 가지고 있습니다. 한 형식에서 다른 형식으로 변환할 때는 이런 규칙을 정확히 이해하고 적용해야 합니다. 온라인 변환 도구는 이런 변환 작업을 정확하게 수행하는 데 도움이 됩니다.
특히 특수문자 처리는 형식마다 다릅니다. HTML에서는 앰퍼샌드를 엔티티로 변환해야 하고, JSON에서는 따옴표를 이스케이프해야 합니다. 이런 세부 규칙을 모두 외우기는 어렵기 때문에 적절한 도구를 활용하는 것이 현명합니다.