공백 문자 시각화 도구이란?
Whitespace Visualizer는 텍스트에서 보이지 않는 문자를 시각화합니다. 공백, 탭, 줄바꿈, 캐리지 리턴, 줄바꿈 없는 공백, 너비 없는 문자에 각각 색상 표시가 붙어 서식 오류, 들여쓰기 불일치, 데이터 파일 속 이상 문자를 빠르게 찾을 수 있습니다.
공백 문자마다 색이 다릅니다. 스페이스는 주황 점, 탭은 화살표, 줄바꿈은 단락 기호, 너비 0 문자는 빗금 친 원으로 표시됩니다. 종류별로 개수를 따로 세주기 때문에 파일이 탭을 쓰는지 스페이스를 쓰는지, 둘이 섞였는지, 파서를 망가뜨리는 보이지 않는 문자가 들었는지 한눈에 확인할 수 있습니다. 또한 일반 에디터가 완전히 숨기는 확장 비가시 문자 — 소프트 하이픈, 단어 결합 문자, 좌→우·우→좌 방향 표시 문자, 전각/반각 공백 — 까지 잡아냅니다.
사용 방법
- 1단계 — 입력 영역에 텍스트를 붙여넣거나 입력합니다. 공백 문자가 즉시 색상별 표시로 강조됩니다.
- 2단계 — 강조할 공백 유형을 선택합니다: 공백, 탭, 줄바꿈, 캐리지 리턴, 줄바꿈 없는 공백, 너비 없는 문자, 그리고 소프트 하이픈, 단어 결합 문자, 방향 표시 문자, 전각/반각 공백 같은 확장 비가시 문자까지. 탭 너비를 2·4·8칸 중에서 정하고 줄 번호 표시를 에디터에 맞춰 켜거나 끌 수 있습니다.
- 3단계 — 각 공백 유형의 개수를 보여주는 문자 통계를 확인하고, 필요한 경우 주석이 달린 텍스트를 복사합니다.
사용 시기
- CSV 또는 TSV 파일이 pandas나 Excel에서 제대로 파싱되지 않는 원인을 찾을 때.
- 엄격한 lint 저장소에 커밋하기 전, 붙여 넣은 코드의 탭/스페이스 혼용을 점검할 때.
- 번역된 UI 문자열에 들어간 너비 0 결합자나 BOM 문자를 잡아낼 때.
결과
CSV 파일이 파싱에 실패합니다. 몇 줄을 시각화 도구에 붙여넣으면 구분자로 탭과 공백이 혼합되어 사용되었고, 헤더 행에 숨겨진 너비 없는 공백이 있어 첫 번째 열 이름이 일치하지 않는 것을 발견합니다.
자주 묻는 질문
- 너비 0 문자가 뭐고 왜 문제가 되나요?
- U+200B(너비 0 공백)나 U+FEFF(BOM) 같은 문자는 화면상 자리는 차지하지 않지만 바이트로는 존재합니다. Word, 복사한 PDF, 터미널 출력에서 자주 섞여 들어와 문자열 비교가 영문도 모르게 실패하게 만듭니다.
- 파일이 탭으로 들여썼는지 스페이스로 들여썼는지 어떻게 알 수 있나요?
- 파일을 붙여 넣고 통계 패널을 봅니다. Tabs가 0이고 Spaces가 많으면 스페이스 들여쓰기, 반대면 탭입니다. 둘 다 0이 아니면 보통 문제이고, 특히 Python이나 Makefile에서 혼용은 금지입니다.
- 아랍어나 중국어 같은 비라틴 문자도 지원하나요?
- 지원합니다. 시각화는 유니코드 코드 포인트 단위로 순회해서 아랍어, CJK, 이모지를 정확히 처리합니다. 비라틴 문자는 그대로 보이고, 어떤 문자 체계든 공백만 마커로 바뀝니다.
- 일반 공백과 줄바꿈 금지 공백은 어떻게 다른가요?
- 일반 공백(U+0020)은 브라우저가 그 자리에서 줄을 바꿀 수 있게 합니다. 줄바꿈 금지 공백(U+00A0)은 줄을 바꾸지 않아 두 단어를 붙여 둡니다. Word나 PDF에서 복사할 때 자주 들어오며, 똑같이 보이지만 검색, split, trim을 망가뜨립니다.
- 표시된 텍스트를 내보내거나 복사할 수 있나요?
- 가능합니다. 복사 버튼을 누르면 마커가 그대로 들어간 텍스트가 클립보드에 들어가서, 코드 리뷰나 버그 리포트에 어떤 공백이 문제인지 정확히 보여 줄 수 있습니다.