하이픈(-)은 복합어를 연결합니다: well-known. 짧은 대시(–)는 범위와 연결을 나타냅니다: 20–24쪽. 긴 대시(—)는 문장 안에서 구를 구분하며, 쉼표보다 강한 끊김을 만듭니다. 세 문자는 폭이 점점 넓어지는 별개의 Unicode 문자이며, 파서와 검색, 조판에서 모두 다르게 처리됩니다.
세 문자 한눈에 비교
이름은 활자 시대에서 유래했습니다. 짧은 대시는 대문자 N의 폭, 긴 대시는 대문자 M의 폭이었습니다.
| 기호 | 이름 | 코드 포인트 | 폭 | 주요 용도 |
|---|---|---|---|---|
| - | 하이픈-마이너스 | U+002D | 가장 짧음 | 복합어 |
| – | 짧은 대시(En dash) | U+2013 | 중간 | 범위와 연결 |
| — | 긴 대시(Em dash) | U+2014 | 가장 김 | 문장 내 끊김 |
첫 번째만 키보드에 있습니다. 나머지 둘은 없는데, 이것이 혼란의 실질적인 뿌리입니다. 단축키 없이 입력할 수 있는 문자가 하이픈뿐이라, 짧은 대시나 긴 대시가 들어갈 자리에 하이픈을 쓰게 되는 것입니다.
하이픈
하이픈은 여러 요소를 하나의 단위로 묶습니다.
- 명사 앞의 복합 수식어: a well-known author, a twelve-year-old dog, a state-of-the-art facility. 구가 명사 뒤로 이동하면 하이픈이 사라진다는 점에 주목하세요: the author is well known.
- 일부 접두사, 특히 충돌이나 모호함을 피하기 위해: re-elect, co-owner, re-cover a chair(병에서 recover하는 것과 구분).
- 양쪽 정렬 조판에서 행 끝의 단어 분할.
- 복합 숫자: twenty-three.
기술적으로 키보드 문자는 하이픈-마이너스입니다. 타자기와 초기 ASCII에서 물려받은 하나의 코드 포인트가 하이픈, 마이너스 기호, 명령줄 플래그 역할을 모두 하는 것입니다. Unicode에는 전용 하이픈(U+2010)과 마이너스 기호(U+2212)가 있지만, 이를 쓰는 곳은 거의 없으며 여러분도 시작해서는 안 됩니다. 파서, 셸, URL이 기대하는 것은 -입니다.
짧은 대시(En dash)
짧은 대시는 ~에서 ~까지, ~를 통틀어, ~와 ~ 사이를 의미합니다. 묶는 것이 아니라 연결합니다.
- 숫자 범위: 20–24쪽, 2020–2024, 9am–5pm. 스타일 가이드는 단어와 섞어 쓰지 말라고 권합니다. from 2020 to 2024로 쓰고 from 2020–2024로는 쓰지 않습니다.
- 별개의 주체 사이의 연결이나 대립: the Paris–Dakar rally, a doctor–patient relationship, the east–west axis. 여기서 하이픈과의 구분이 중요합니다. 하이픈을 쓴 Franco-German은 하나로 섞인 것을 암시하지만, 짧은 대시를 쓴 France–Germany는 관계 속의 두 주체를 의미합니다.
- 한쪽이 이미 여러 단어인 복합 수식어: a post–World War II settlement. 여기에 하이픈을 쓰면 "World"에만 붙습니다.
- 점수와 표결 결과: 3–1 승리.
짧은 대시는 셋 중 가장 적게 쓰이고 가장 자주 하이픈으로 대체됩니다. 일반 산문에서 그런 대체는 대부분의 독자가 알아차리지 못하는 사소한 조판상의 부정확함입니다. 하지만 데이터에서는 사소하지 않습니다. 짧은 대시로 쓴 날짜 범위는 하이픈을 찾는 정규식과 일치하지 않습니다.
긴 대시(Em dash)
긴 대시는 구를 떼어 놓아 쉼표보다 강하고 마침표보다 부드러운 끊김을 만듭니다.
- 한 쌍으로, 삽입구를 둘러싸기: The results — which nobody expected — were clear.
- 단독으로, 결론이나 반전 앞에: She checked everything twice — and still missed it.
- 대화에서 말이 끊겼음을 표시할 때.
띄어쓰기는 유일한 실질적 스타일 논쟁거리입니다. 미국 출판 관례(Chicago Manual of Style)는 긴 대시를 붙여 씁니다: word—word. 영국 관례(Oxford와 대부분의 영국 신문)는 대신 양쪽에 공백을 둔 짧은 대시를 씁니다: word – word. 둘 다 올바르며, 문서 내 일관성이 중요합니다. AI 출력물은 보통 양쪽에 공백을 둔 긴 대시(word — word)를 쓰는데, 이는 두 관례의 혼합이라 어느 전통에서 훈련된 편집자에게도 미묘하게 어색해 보입니다.
긴 대시는 또한 AI 생성 텍스트의 비공식 서명처럼 된 기호이기도 합니다. 모델이 사람보다 훨씬 일관되게 사용하기 때문입니다. 이에 대해서는 ChatGPT가 긴 대시를 많이 쓰는 이유에서 다룹니다.
각 문자 입력하는 법
| 플랫폼 | 짧은 대시(–) | 긴 대시(—) |
|---|---|---|
| macOS | Option + - | Option + Shift + - |
| Windows | Alt + 0150 | Alt + 0151 |
| Linux | Ctrl + Shift + u, 2013 | Ctrl + Shift + u, 2014 |
| Word / Docs | 단어 사이에 하이픈 두 개를 치면 자동 변환 | 하이픈 두 개가 자동 변환 |
| HTML | – |
— |
| iOS / Android | 하이픈 키 길게 누르기 | 하이픈 키 길게 누르기 |
Windows Alt 코드는 숫자 키패드가 필요합니다. 그래서 많은 노트북 사용자가 이 문자들을 아예 입력하지 않는 것입니다.
차이가 실제로 문제를 일으키는 경우
산문에서 짧은 대시 자리에 하이픈을 쓰는 것은 조판상의 미묘한 문제입니다. 하지만 산문 밖에서는 세 문자가 서로 다른 코드 포인트이며 그 차이는 기능적입니다.
- 검색과 찾기/바꾸기는 문자를 정확히 일치시킵니다.
2020-2024를 검색해도2020–2024는 찾아지지 않습니다. - 셸 명령에는 U+002D가 필요합니다. 자동 변환으로 긴 대시가 된
--force를 문서에서 붙여넣으면 플래그가 아니며, 오류 메시지는 대시를 언급하지 않습니다. - CSV와 JSON은 짧은 대시와 긴 대시를 일반 텍스트로 취급합니다. 보통은 괜찮지만, 키와 일치해야 하는 값이 일치하지 않게 되기 전까지는요.
- URL과 슬러그는 ASCII 하이픈만 허용합니다.
- 정렬과 중복 제거는 셋을 다른 문자로 취급하므로, 똑같아 보이는 항목이 같은 그룹으로 묶이지 않습니다.
문서 전체의 대시를 통일해야 한다면 긴 대시 제거 도구가 원하는 대체 문자로 바꾸고 개수를 알려 주므로, 조용히 바꾸는 방식을 믿는 대신 예상한 개수와 일치하는지 확인할 수 있습니다. 따옴표와 관련된 유사한 함정은 곡선 따옴표가 코드를 망가뜨리는 이유에서 다룹니다.
자주 묻는 질문
긴 대시와 짧은 대시의 차이는 무엇인가요?
짧은 대시(–, U+2013)는 ~에서 ~까지를 의미하며 2020–2024 같은 범위를 나타냅니다. 긴 대시(—, U+2014)는 문장 안에서 구를 구분하며, 쉼표보다 강한 끊김을 만듭니다. 긴 대시가 대략 두 배 넓고, 둘은 별개의 Unicode 문자입니다.
대시 대신 하이픈은 언제 써야 하나요?
여러 단어를 하나의 단위로 묶을 때 하이픈을 씁니다: well-known, twenty-three, re-elect. 범위, 두 주체 사이의 연결, 문장 내 끊김을 의미한다면 짧은 대시나 긴 대시를 써야 합니다.
긴 대시 양쪽에 공백을 넣어야 하나요?
스타일 가이드에 따라 다릅니다. 미국 관례는 붙여 쓰고(word—word), 영국 관례는 보통 양쪽에 공백을 둔 짧은 대시를 씁니다(word – word). 둘 다 올바르며, 한 문서 안에서의 일관성이 중요합니다.
긴 대시는 어떻게 입력하나요?
macOS에서는 Option + Shift + 하이픈을 누릅니다. Windows에서는 Alt를 누른 채 숫자 키패드로 0151을 입력합니다. Word와 Google Docs에서는 단어 사이에 하이픈 두 개를 치면 자동으로 변환됩니다. 휴대폰에서는 하이픈 키를 길게 누르세요.
짧은 대시 대신 하이픈을 쓰면 문제가 되나요?
산문에서는 대부분의 독자가 알아차리지 못하는 사소한 부정확함입니다. 하지만 데이터, 코드, URL, 검색이나 파싱이 일어나는 모든 곳에서는 세 문자가 서로 다르기 때문에 정확한 일치가 실패해 큰 문제가 됩니다.