이 도구가 해결하는 문제
엑셀에서 복사한 셀 범위, CSV 일부, 로그에서 뽑은 값 목록은 그대로 메신저나 게시판에 붙여넣으면 열이 맞지 않아 읽기 어렵습니다. 이 도구는 구분자로 나뉜 텍스트를 두 가지 형태로 바꿉니다. 하나는 노션·깃허브·위키처럼 마크다운을 해석하는 곳에 붙여넣는 마크다운 표이고, 다른 하나는 마크다운이 없는 곳(카카오톡, 디스코드 코드블록, 이메일 본문, 터미널 출력, 개발 문서의 주석)에서 고정폭 글꼴로 열을 맞추는 고정폭 텍스트 표입니다. 입력 데이터는 서버로 전송되지 않고 브라우저 안에서만 처리됩니다.
열을 맞추는 원리: 글자 수가 아니라 표시 폭
고정폭 글꼴에서도 한글·한자·가나는 영문 한 글자의 두 배 폭으로 그려집니다. 그래서 글자 수(length)를 기준으로 공백을 채우면 "홍길동"(3글자)과 "Kim"(3글자)이 서로 다른 폭이 되어 열이 어긋납니다. 이 도구는 글자마다 표시 폭을 계산해 가장 넓은 칸에 맞춰 공백을 채웁니다. 판정 규칙은 단순합니다. 한글 자모(1100~115F), CJK·가나·부수 영역 (2E80~A4CF), 한글 음절(AC00~D7A3), 호환 한자(F900~FAFF), 전각 문자(FF00~FF60, FFE0~FFE6)는 2칸, 나머지는 1칸입니다. 아래 표는 이 규칙을 실제 함수에 넣어 계산한 값입니다.
| 문자 | 계산된 폭 | 설명 |
|---|---|---|
| A (영문) | 1칸 | 영문·숫자·ASCII 기호는 1칸 |
| 가 (완성형 한글) | 2칸 | 한글 음절 영역(AC00~D7A3)은 2칸 |
| 漢 (한자) | 2칸 | CJK 통합 한자 영역은 2칸 |
| カ (가타카나) | 2칸 | 일본어 가나도 2칸 |
| A (전각 A) | 2칸 | 전각 영문은 2칸 |
| é (악센트 문자) | 1칸 | 라틴 확장 문자는 1칸 |
| 😀 (이모지) | 1칸 | 이 도구는 1칸으로 계산하지만 실제 화면은 대개 2칸 폭 |
| 한 (조합형 자모 3개) | 4칸 | 결합 자모는 글자별로 합산되어 실제(2칸)보다 크게 계산 |
이 규칙은 "한 칸 = 영문 한 글자 폭"인 고정폭 글꼴(Courier New, 코딩용 고정폭 글꼴 등)을 전제로 합니다. 비례폭 글꼴(맑은 고딕 일반체 등)에서는 영문 i와 m의 폭이 달라서 어떤 방법으로도 열이 완벽히 맞지 않습니다.
검산한 변환 예시
예시 1. 한글과 영문이 섞인 고정폭 표. 입력은 쉼표 구분 3행이며, 가장 넓은 칸은 "홍길동"(폭 6)이므로 첫 열이 6칸으로 맞춰집니다.
이름,부서,직급
홍길동,개발팀,과장
Kim,QA,대리
↓ 고정폭 텍스트 표
| 이름 | 부서 | 직급 |
|--------|--------|------|
| 홍길동 | 개발팀 | 과장 |
| Kim | QA | 대리 |예시 2. 칸 수가 다른 행. "사과,3"은 2칸, "배,2,선물용"은 3칸입니다. 가장 많은 칸(3)을 기준으로 부족한 행은 빈 칸으로 채웁니다.
품목,수량,비고
사과,3
배,2,선물용
↓ 마크다운 표
| 품목 | 수량 | 비고 |
| --- | --- | --- |
| 사과 | 3 | |
| 배 | 2 | 선물용 |예시 3. 셀 안의 파이프 문자. 마크다운에서 | 는 열 경계이므로 셀 내용에 들어 있으면 표가 깨집니다. 마크다운 변환에서는 \| 로 이스케이프합니다.
명령,설명
a|b,OR 연산
↓ 마크다운 표
| 명령 | 설명 |
| --- | --- |
| a\|b | OR 연산 |예시 1의 열 폭이 정해지는 과정
예시 1에서 각 열의 폭은 그 열에서 표시 폭이 가장 큰 셀이 정합니다. 아래 표는 같은 함수로 열마다 가장 넓은 셀과 그 폭, 그리고 글자 수(length)를 비교한 것입니다. 글자 수만 세면 한글 열이 실제보다 좁게 계산된다는 점을 확인할 수 있습니다.
| 열(헤더) | 가장 넓은 셀 | 표시 폭(칸) | 글자 수 |
|---|---|---|---|
| 이름 | 홍길동 | 6 | 3 |
| 부서 | 개발팀 | 6 | 3 |
| 직급 | 직급 | 4 | 2 |
"홍길동"처럼 한글 세 글자는 6칸을 차지하므로 짧은 영문 "Kim"(3칸) 뒤에는 공백 3칸이 채워집니다. 글자 수 3으로 계산했다면 영문 행은 공백이 부족해 뒤 열이 왼쪽으로 3칸 당겨졌을 것입니다.
구분자 자동 감지가 판단하는 방식
자동 감지는 첫 줄만 보고 탭, 쉼표, 세미콜론, 파이프 중 가장 많이 나온 기호를 고릅니다. 같은 입력을 도구와 같은 규칙으로 실행해 어떤 구분자가 선택되고 몇 열이 되는지 계산한 결과입니다.
| 첫 줄의 모습 | 선택된 구분자 | 결과 열 수 |
|---|---|---|
| 엑셀에서 복사한 두 셀 | 탭 | 2열 |
| 쉼표 CSV 한 줄 | 쉼표 | 3열 |
| 쉼표 3개와 세미콜론 1개 | 쉼표 | 4열 |
| 쉼표 1개, 세미콜론 1개 (동률) | 쉼표 | 2열 |
| 구분자 없음 | 탭 | 1열 |
| 주소 안에 쉼표가 많은 첫 줄 | 쉼표 | 3열 |
마지막 두 행이 보여 주듯 구분자가 없으면 열이 1개인 표가 되고, 주소처럼 쉼표가 내용에 섞인 첫 줄은 쉼표가 구분자로 선택됩니다. 이런 경우 의도한 구분자를 드롭다운에서 직접 고르면 해결됩니다.
붙여넣는 곳별 추천 형식
- 깃허브 README, 이슈, 위키, 노션: 마크다운 표. 렌더링 결과가 자동으로 정렬되므로 공백 맞춤이 필요 없습니다.
- 이메일 본문(텍스트 모드), 터미널 로그, 소스코드 주석: 고정폭 텍스트 표. 받는 쪽 글꼴이 고정폭인지 확인하세요.
- 메신저와 디스코드: 코드블록(백틱 세 개로 감싸기) 안에 고정폭 표를 넣으면 열이 맞습니다. 일부 메신저는 코드블록을 지원하지 않으므로 사진 캡처가 더 확실할 때도 있습니다.
- 워드·한글 문서: 텍스트 표를 붙이는 것보다 문서 편집기의 표 기능으로 변환하는 편이 낫습니다. 이 결과를 쓴다면 글꼴을 고정폭으로 지정하세요.
상황별 사용 시나리오
- 개발자의 PR 설명: 성능 측정값을 "버전,응답(ms),메모리(MB)" 쉼표 목록으로 모아 마크다운 표로 바꿔 PR 본문에 붙입니다. 숫자 열을 오른쪽 정렬하고 싶으면 구분선 --- 를 ---: 로 고치면 됩니다.
- 총무의 회비 공지: 엑셀에서 이름·금액·납부 여부 셀 범위를 복사하면 탭 구분 텍스트가 되므로 자동 감지가 탭을 고릅니다. 고정폭 표로 바꿔 코드블록 안에 넣어 메신저 단체방에 올립니다.
- 운영자의 장애 보고: 로그에서 뽑은 시각|서버|오류 코드를 파이프로 구분해 두었다면 구분자를 파이프로 지정하고 고정폭 표로 변환해 이메일 본문에 넣습니다. 셀 안에 파이프가 포함된 오류 메시지가 있다면 먼저 다른 기호로 바꾸세요.
입력 경계에서 도구가 하는 일
- 빈 입력: 변환하지 않고 "입력된 데이터가 없습니다" 안내만 표시합니다. 빈 줄은 건너뜁니다.
- 줄 끝 문자: 윈도우식 줄바꿈(CRLF)은 자동으로 정리되므로 윈도우에서 복사한 데이터도 문제없이 처리됩니다.
- 한 행뿐인 입력: 헤더만 있는 표가 만들어집니다. 첫 줄을 헤더로 쓰지 않도록 해제하면 임시 헤더(열1, 열2, ...)가 붙습니다.
- 셀 안의 줄바꿈: 줄 단위로 행을 나누므로 따옴표로 감싼 여러 줄 셀은 지원하지 않습니다. 줄바꿈이 있는 셀은 미리 한 줄로 합치세요.
- 빈 셀: 쉼표가 연속된 곳은 빈 셀이 되며 고정폭 표에서는 폭만큼 공백으로 채워집니다.
- 탭 입력: 구분자를 탭으로 지정하면 칸 사이의 탭이 구분자이고, 셀 앞뒤 공백은 제거됩니다.
마크다운 표와 고정폭 표, 어느 쪽을 쓸까
- 마크다운 표: 렌더링되는 곳에서는 열 폭을 맞출 필요가 없습니다. 이 도구도 마크다운 결과에는 일부러 공백 정렬을 넣지 않습니다. 소스 상태에서 보기 좋게 맞추고 싶다면 고정폭 표가 구분선만 다를 뿐 같은 문법이므로 대부분의 마크다운 해석기에서도 표로 인식됩니다.
- 고정폭 텍스트 표: 렌더링이 없는 곳에서 씁니다. 반드시 코드블록(백틱 세 개) 안이나 고정폭 글꼴로 보이는 영역에 붙여넣어야 합니다. 일반 채팅 말풍선에 붙이면 비례폭 글꼴로 표시되어 어긋납니다.
흔한 실수와 한계
- CSV의 따옴표를 해석하지 않습니다. 이 도구는 줄을 구분자로 단순 분할합니다. 예를 들어 "서울, 강남",5 는 3개의 셀(["서울] [ 강남"] [5])로 갈라집니다. 셀 안에 쉼표가 있는 데이터는 탭 구분(엑셀에서 복사)이나 세미콜론·파이프 구분으로 바꿔 넣으세요.
- 자동 감지는 첫 줄만 봅니다. 첫 줄에서 탭·쉼표·세미콜론·파이프 중 가장 많이 나온 기호를 고르며, 동률이면 앞선 순서(탭, 쉼표, 세미콜론, 파이프)가 이깁니다. 아무 구분자도 없는 한 줄 입력은 열이 1개인 표가 됩니다. 의도와 다르면 구분자를 직접 지정하세요.
- 이모지·모호 폭 문자. 이모지는 1칸으로 계산되지만 실제로는 대개 2칸 폭으로 그려져 해당 행이 한 칸씩 밀립니다. ★ ○ → 같은 기호도 글꼴과 환경에 따라 1칸 또는 2칸이라 정렬이 어긋날 수 있습니다. 표에 이런 문자를 넣었다면 결과를 눈으로 확인하세요.
- 분해형(NFD) 한글. macOS의 파일 이름 등에서 복사하면 자모가 분리된 상태로 들어오는 경우가 있고, 이런 글자는 위 표처럼 실제보다 넓게 계산됩니다. 필요하면 정규화한 뒤 사용하세요.
- 셀 병합·정렬 지정은 없습니다. 마크다운의 :---: 같은 좌·우·가운데 정렬 표시나 병합 셀은 만들지 않고, 모든 마크다운 구분선은 --- 로 출력합니다. 숫자 열 오른쪽 정렬이 필요하면 구분선을 ---: 로 직접 고치면 됩니다.
- 앞뒤 공백은 제거됩니다. 각 셀은 trim 되므로 셀 안쪽 들여쓰기는 유지되지 않습니다.
결과를 활용하는 방법
마크다운 결과는 마크다운 미리보기에 붙여넣어 렌더링 모양을 먼저 확인하면 깨진 열을 바로 찾을 수 있습니다. 엑셀에서 열을 나누는 쪽이 필요하다면 엑셀 텍스트 나누기 가이드를, 표 데이터를 JSON으로 옮기려면 CSV-JSON 변환기를, 붙여넣기 전에 줄 끝 공백과 빈 줄을 정리하려면공백 정리 도구를 이어서 쓰면 됩니다.
자주 묻는 질문
행마다 칸(열) 개수가 다르면 어떻게 되나요?
가장 칸이 많은 행을 기준으로 표를 만들고, 칸이 부족한 행은 빈 칸으로 채웁니다. 몇 개 행이 보정됐는지는 변환 후 표 위의 안내 문구에 표시됩니다.
자동 감지는 어떤 기준으로 구분자를 고르나요?
첫 줄에서 탭, 쉼표, 세미콜론, 파이프 중 가장 많이 등장하는 기호를 구분자로 판단합니다. 원하는 결과가 나오지 않으면 구분자를 직접 선택해주세요. 셀 안에 쉼표가 많은 텍스트라면 자동 감지가 틀릴 수 있습니다.
첫 줄을 헤더로 쓰지 않으면 마크다운 표는 어떻게 되나요?
마크다운 표는 헤더 행이 필수라서 "열1, 열2, ..."라는 임시 헤더를 만들어 넣고 모든 입력 행을 본문으로 처리합니다. 고정폭 표에서는 구분선 없이 데이터 행만 출력합니다.
셀 안에 파이프(|) 문자가 있으면요?
마크다운 변환에서는 자동으로 \| 로 바꿔 열이 깨지지 않게 합니다. 고정폭 표는 단순 텍스트라 그대로 두므로, 파이프가 많은 데이터는 읽을 때 열 경계와 헷갈릴 수 있습니다.
붙여넣었는데 한글 열이 여전히 어긋나요.
붙여넣는 곳의 글꼴이 고정폭이 아니거나 한글이 영문의 정확히 두 배 폭이 아닌 글꼴일 때 생깁니다. 코드블록 안에 붙이거나 고정폭 글꼴로 바꿔 보세요. 이모지나 특수 기호가 섞여 있어도 어긋납니다.
엑셀에서 복사한 내용을 바로 붙여넣어도 되나요?
네. 엑셀 셀 범위를 복사하면 칸 사이가 탭으로 구분된 텍스트가 되므로 자동 감지가 탭을 선택합니다. 셀 안에 줄바꿈이 있는 경우에는 행이 여러 줄로 쪼개지니 미리 정리하세요.
숫자 열을 오른쪽 정렬할 수 있나요?
고정폭 표는 모든 열을 왼쪽 정렬로 채웁니다. 마크다운 표는 변환 후 두 번째 줄의 해당 열 --- 를 ---: 로 고치면 대부분의 해석기에서 오른쪽 정렬로 렌더링됩니다.
한 번에 몇 행까지 변환할 수 있나요?
별도의 행 제한은 두지 않았습니다. 다만 브라우저 안에서 처리하므로 수만 행의 큰 데이터는 느려질 수 있고, 그런 용량은 표 형식으로 붙여 읽기도 어렵습니다. 필요한 부분만 잘라서 쓰세요.
마크다운 결과에 공백 정렬이 없는 이유는 무엇인가요?
마크다운 해석기는 열 폭에 상관없이 표를 렌더링하므로 공백 맞춤은 소스 상태에서만 보기 좋을 뿐입니다. 소스까지 가지런해야 한다면 고정폭 변환 결과를 쓰면 됩니다. 구분선 형태가 다르지만 대부분의 해석기가 표로 읽습니다.