정렬/순서
1. 개요
이 문서에서는 문자·언어별 정렬 순서를 다룬다. 사전을 찾아볼 때나 정렬에 관련된 프로그래밍을 할 때 유용할 것이다.
여러 언어가 같은 문자 체계를 공유하는 경우도 있으므로 문자별로 단락을 만들어서 정리하도록 하고, 같은 문자에 다른 정렬 순서가 적용되는 경우 하위 단락으로 만들 것.
2. 정렬 관련 용어
정렬에도 여러 가지 단계가 있다.
단계는 보통 primary difference, secondary difference, tertiary difference, quaternary difference 네 단계로 나눠지며, 라틴 문자와 가나의 경우 이 네 단계는 다음과 같이 분류된다.
- primary difference: 글자 자체가 다른 경우 (ab < ac < ad, はい < はう < はえ)
- secondary difference: 주로 diacritic 차이 (ab < áb < ac, はい < ばい < はう)
diacritic이 없는 것이 있는 것보다 앞에 온다.
- tertiary difference: 대소문자 차이 (ab < Ab < áb, しゃ < しや < じゃ)
보통 소문자가 대문자보다 앞에 온다.
- quaternary difference: 문장 부호 차이 (ab < a c < a-c < ac < ad)
정렬 시에는 언제나 상위 단계가 우선적으로 적용된다. 즉 primary difference가 있을 경우 secondary difference 이하는 무시되며, primary difference가 없고 secondary difference가 있을 경우 tertiary difference 이하는 무시된다.
다만 secondary difference의 경우, '주로' diacritic 차이인 것을 염두에 두어야 한다. 만약 어떤 언어에서 á를 a와는 아예 다른 별개의 문자로 볼 경우, a와 á 사이에는 secondary difference가 아니라 primary difference가 있는 것이 되며, 이 경우 ab < ac < áb 순으로 정렬된다. diacritic이 붙은 문자와 붙지 않은 문자를 별개의 문자로 볼지(primary difference), 아니면 일단은 똑같은 문자로 볼지(secondary difference)는 언어에 따라 다르기 때문에 주의가 필요하다. 아래 '스페인어' 섹션을 보면 알겠지만 스페인어의 경우 a와 á 사이에는 secondary difference가 있지만 n과 ñ 사이에는 primary difference가 있다.
이 문서에서는 primary difference와 secondary difference만을 주로 다룬다.
3. 한글
모든 낱자 사이에는 primary difference가 존재하며, 초성이 같을 경우 중성 순으로, 초성과 중성이 모두 같을 경우 종성 순으로 정렬된다.
3.1. 대한민국 표준어
대한민국 표준어에서 사용되는 정렬 순서는 다음과 같다. 대개 가나다순이라고 한다.[1]
- 초성: ㄱ ㄲ ㄴ ㄷ ㄸ ㄹ ㅁ ㅂ ㅃ ㅅ ㅆ ㅇ ㅈ ㅉ ㅊ ㅋ ㅌ ㅍ ㅎ
- 중성: ㅏ ㅐ ㅑ ㅒ ㅓ ㅔ ㅕ ㅖ ㅗ ㅘ ㅙ ㅚ ㅛ ㅜ ㅝ ㅞ ㅟ ㅠ ㅡ ㅢ ㅣ
- 종성: (없음) ㄱ ㄲ ㄳ ㄴ ㄵ ㄶ ㄷ ㄹ ㄺ ㄻ ㄼ ㄽ ㄾ ㄿ ㅀ ㅁ ㅂ ㅄ ㅅ ㅆ ㅇ ㅈ ㅊ ㅋ ㅌ ㅍ ㅎ
쌍자음의 경우 1989년의 현행 맞춤법 제정 전에는 명확한 규정이 없었다. ㄱ과 ㄲ을 예로 들자면, ㄲ을 ㄱ에 diacritic(?)이 붙은 것으로 취급하여 ㄱ과 ㄲ 사이에 secondary difference가 있는 것으로 처리한 사전도 있었고(가, 까, 각, 깍, … 순. 예: 가오리 < 까마귀 < 각다귀), ㄱ과 ㄲ 사이에 primary difference가 있는 것으로 보고 ㄱ과 ㄲ을 완전히 따로 분리해서 배열한 사전도 있었다(가, 각, …, 깋, 까, 깍, … 순. 예: 가오리 < 각다귀 < 까마귀). 1989년 현행 맞춤법이 시행되면서 후자로 명확히 규정하였다.
유니코드의 한글 자모 순서는 대한민국 표준어 순서를 따르고 있다.
3.1.1. 옛한글
표준어의 어문 규정에는 옛한글에 대한 정렬 순서는 없으나, 대한민국의 KS X 1026-1 규격(정보교환용 한글 처리지침)에 따르면 옛한글은 다음과 같이 정렬한다. 표준어의 정렬 순서를 확장한 것으로 볼 수 있다.
- ㅿ은 ㅅ의 뒤에, ㆁ은 ㅇ의 뒤에, ㆆ은 ㅎ의 뒤에 따로 정렬하고, ㆍ(아래아)는 ㅣ의 뒤에 따로 정렬한다.
- ㅲ, ㅼ, ㅵ과 같이 두세 낱자로 이루어진 병서는 A+B(+C)와 같이 보고 정렬한다. 예를 들어 ㅲ, ㅳ 등은 각각 ㅂ+ㄱ, ㅂ+ㄷ 등으로 보고 ㅂ과 ㅃ(= ㅂ+ㅂ) 사이에 정렬하고, ㅴ, ㅵ, ᄤ 등은 ㅄ과 ㅶ 사이에 정렬하고, ㅺ, ㅻ, ㅼ, ㅽ 등은 ㅅ과 ㅆ(= ㅅ+ㅅ) 사이에 정렬한다. 모음도 마찬가지로, ᅺ(= ㅓ+ㅗ), ᅻ(= ㅓ+ㅜ), ᅼ(= ㅓ+ㅡ) 등은 ㅓ와 ㅔ(= ㅓ+ㅣ) 사이에 정렬한다.
- 연서(ᄛ, ㅱ, ㅸ, ㅹ, ㆄ)는 병서의 뒤에 따로 정렬한다. ㅷ ᄪ ꥴ ㅸ ㅹ ㅅ 순서이다.
- 치두음(왼쪽으로 늘어진 낱자)과 정치음(오른쪽으로 늘어진 낱자)은 원 낱자(ㅅ, ㅈ, ㅊ)들의 뒤에 따로 정렬한다. 동일한 원 낱자 범위 안에서 치두음은 정치음보다 무조건 앞으로 정렬된다. 즉, 치두음쌍시옷(ᄽ)이 정치음시옷(ᄾ)보다 앞이다. ᄺ ᄻ ᄼ ᄽ ᄾ ᄿ ㅿ 순서이다.
- 초성 채움 문자(U+115F)는 초성의 맨 뒤에 정렬되고, 중성 채움 문자(U+1160)는 중성의 맨 앞에 정렬된다. 초성과 중성은 모두 똑같고 종성의 유무만 다른 경우, 종성이 없는 글자는 종성이 있는 글자보다 앞에 온다.
[image]
아래 표는 실제로 옛한글 정렬을 구현할 때 유용하게 쓰일 수 있을 것이다.
3.2. 북한 문화어
북한 문화어에서 사용되는 정렬 순서는 다음과 같다.
- 초성: ㄱ ㄴ ㄷ ㄹ ㅁ ㅂ ㅅ ㅈ ㅊ ㅋ ㅌ ㅍ ㅎ ㄲ ㄸ ㅃ ㅆ ㅉ ㅇ
- 중성: ㅏ ㅑ ㅓ ㅕ ㅗ ㅛ ㅜ ㅠ ㅡ ㅣ ㅐ ㅒ ㅔ ㅖ ㅚ ㅟ ㅢ ㅘ ㅝ ㅙ ㅞ
- 종성: (없음) ㄱ ㄳ ㄴ ㄵ ㄶ ㄷ ㄹ ㄺ ㄻ ㄼ ㄽ ㄾ ㄿ ㅀ ㅁ ㅂ ㅄ ㅅ ㅇ ㅈ ㅊ ㅋ ㅌ ㅍ ㅎ ㄲ ㅆ
예를 들어, {개, 토끼, 하마, 오리, 기러기, 까마귀, 가오리}로 이루어진 단어 집합의 원소들을 남한식과 북한식으로 정렬하면 이렇게 된다.
- 남: 가오리 < 개 < 기러기 < 까마귀 < 오리 < 토끼 < 하마
- 북: 가오리 < 기러기 < 개 < 토끼 < 하마 < 까마귀 < 오리
- 초성: ㅇ을 제외한 홑자음(ㄱ ㄴ ㄷ ㄹ ㅁ ㅂ ㅅ ㅈ ㅊ ㅋ ㅌ ㅍ ㅎ), 쌍자음(ㄲ ㄸ ㅃ ㅆ ㅉ), ㅇ
- 중성: 기본 모음(ㅏ ㅑ ㅓ ㅕ ㅗ ㅛ ㅜ ㅠ ㅡ ㅣ), ㅣ로 끝나는 digraph(ㅐ ㅒ ㅔ ㅖ ㅚ ㅟ ㅢ), 나머지 digraph(ㅘ ㅝ), trigraph(ㅙ ㅞ)
- 종성: 쌍자음 둘(ㄲ ㅆ)만 맨 뒤로 뺌
표준어식 정렬은 확장이 용이하기 때문에 옛한글도 쉽게 수용할 수 있지만, 문화어식 정렬은 확장이 까다로워서 옛한글을 수용하기 어렵다. 옛한글은 그 정확한 발음을 아무도 모르기 때문에 음가 기준이 아니라 표준어식 정렬 순서와 같이 자형 기준으로 하는 것이 바람직하다.
3.3. 겨레말큰사전
남한과 북한이 공동으로 제작하는 한국어 사전 겨레말큰사전에서는 남한 표준어와 북한 문화어의 자모 순서를 절충해 다음과 같은 정렬 순서를 채택했다. 출처는 이 문서의 14쪽이다.
- 초성: ㄱ ㄴ ㄷ ㄹ ㅁ ㅂ ㅅ ㅇ ㅈ ㅊ ㅋ ㅌ ㅍ ㅎ ㄲ ㄸ ㅃ ㅆ ㅉ
- 중성: ㅏ ㅑ ㅓ ㅕ ㅗ ㅛ ㅜ ㅠ ㅡ ㅣ ㅐ ㅒ ㅔ ㅖ ㅘ ㅚ ㅙ ㅝ ㅟ ㅞ ㅢ
- 종성: (없음) ㄱ ㄴ ㄷ ㄹ ㅁ ㅂ ㅅ ㅇ ㅈ ㅊ ㅋ ㅌ ㅍ ㅎ ㄲ ㄳ ㄵ ㄶ ㄺ ㄻ ㄼ ㄽ ㄾ ㄿ ㅀ ㅄ ㅆ
4. 라틴 문자
기본적으로는 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 순을 따르고 모든 글자 사이에 primary difference가 있으나, 언어에 따라서 조금씩 차이가 있다. 아래에서 별도의 언급이 없는 한 기본적으로 이 정렬 순서를 따른다.
또한 같은 글자라도 언어에 따라 순서가 다를 수 있다. 예를 들어 독일어에서는 Ö < Z이지만 스웨덴어에서는 Z < Ö이고, 프랑스어에서는 É < È이지만 베트남어에서는 È < É이다.
언어별 확장 라틴 문자 목록 문서도 참고할 것.
4.1. 영어 (en)
영어도 일부 어휘에 diacritics가 쓰이는 경우가 있는데,[2] diacritic이 붙은 문자와 diacritic이 붙지 않은 문자 사이에는 secondary difference가 있다.
- 예: echo < éclair < eclipse, resume < résumé
4.2. 독일어 (de)
두 가지 정렬 순서가 존재한다. 이 두 가지 정렬 순서는 움라우트가 붙은 글자(Ä, Ö, Ü)를 처리하는 방법이 다르다. ß는 두 가지 순서에서 모두 SS와 동일하게 취급한다.
- 사전 순서
Ä, Ö, Ü와 A, O, U 사이에는 secondary difference가 있다.
- 예: Arg < Ärgerlich < Arm < Assistent < Aßlar < Assoziation
- 전화번호부 순서
Ä, Ö, Ü를 각각 AE, OE, UE와 동일하게 취급한다.
- 예: Udet < Übelacker < Uell < Ülle < Ueve < Üxküll < Uffenbach
두 가지 정렬 순서가 있는 이유는 다음과 같다.
- 사전 순서: 단어의 파생형을 비슷한 위치에 놓기 위해서이다. 예를 들어 Fuß의 복수형은 Füße인데, ü를 일단 u와 동일하게 보면 Fuß와 Füße가 가까운 위치에 놓이게 되므로 편리하다.
- 전화번호부 순서: 인명에서는 ä, ö, ü가 쓰이는 경우도 있고 ae, oe, ue가 쓰이는 경우도 있다. 예를 들어 독일어권에는 Müller 씨도 Mueller 씨도 모두 존재하는데, ü를 일단 ue와 동일하게 보면 Müller와 Mueller가 기본적으로 같은 위치에 놓이게 되므로 편리하다.
4.3. 에스페란토 (eo)
Ĉ, Ĝ, Ĥ, Ĵ, Ŝ, Ŭ와 C, G, H, J, S, U 사이에는 primary difference가 있다(…, C, Ĉ, D, E, F, G, Ĝ, H, Ĥ, I, J, Ĵ, …, S, Ŝ, T, U, Ŭ, V, Z).
4.4. 스페인어 (es)
Á, É, Í, Ó, Ú, Ü와 A, E, I, O, U 사이에는 secondary difference가 있다.
- 예: facial < fácil < facilidad, como < cómo
- 예: anticipar < año < aorta
- 과거: centro < cielo < champú, limpiar < locación < llamar
- 현재: centro < champú < cielo, limpiar < llamar < locación
4.5. 프랑스어 (fr)
diacritic이 붙은 문자와 diacritic이 붙지 않은 문자 사이에는 secondary difference가 있다. A, E, I, U와 같이 글자 위에 붙을 수 있는 diacritic의 종류가 둘 이상인 경우, acute (´) < grave (`) < circumflex (ˆ) < diaeresis (¨) 순으로 정렬된다. 정리하자면 다음과 같다(대괄호로 묶인 글자들은 secondary difference 관계임).
- [A À Â] B [C Ç] D [E É È Ê Ë] F G H [I Î Ï] J K L M N [O Ô] P Q R S T [U Ù Û Ü] V W X [Y Ÿ] Z
primary difference가 없고 secondary difference만 있다면(= diacritic을 제거했을 때 똑같아진다면), '''마지막''' diacritic에 따라 정렬된다.
- 예: cote < côte < coté < côté
4.6. 포르투갈어 (pt)
영어와 동일하다. diacritic이 쓰이는 경우가 있는데, diacritic이 붙은 문자와 diacritic이 붙지 않은 문자 사이에는 secondary difference가 있다.
4.7. 스웨덴어 (sv)
Å, Ä, Ö는 Z 뒤에 별도의 문자로 정렬된다(…, X, Y, Z, Å, Ä, Ö).
4.8. 터키어 (tr)
Ç, Ğ, İ(i), Ö, Ş, Ü와 C, G, I(ı), O, S, U 사이에는 primary difference가 있다. I(ı)와 İ(i)의 경우, I(ı) < İ(i)와 같이 점이 없는 것이 앞으로, 있는 것이 뒤로 간다.
4.9. 베트남어 (vi)
Ă, Â, Đ, Ê, Ô, Ơ, Ư와 A, D, E, O, U 사이에는 primary difference가 있다(A, Ă, Â, B, C, D, Đ, E, Ê, G, …, N, O, Ô, Ơ, P, …, T, U, Ư, V, X, Y).
성조 부호가 없는 문자와 성조 부호가 붙은 문자 사이에는 secondary difference가 있다. 성조 부호는 부호 없음 (a) < grave (à) < hook above (ả) < tilde (ã) < acute (á) < dot below (ạ) 순으로 정렬된다.
4.10. 한어병음
보통 다음 두 가지 방식[3] 으로 정렬된다. 代表(dàibiǎo), 单位(dānwèi), 单纯(dānchún), 大众(dàzhòng), 大家(dàjiā), 当时(dāngshí)라는 단어들을 예로 든다.
- 첫 한자의 병음 표기 → 첫 한자 → 그 한자 안에서 두 번째 한자의 병음 표기 → 두 번째 한자 (세 글자 이상의 한자로 이루어진 단어라면 글자마다 같은 과정 반복)
- da 大
- …jia …家 → 大家
- …zhong …众 → 大众
- dai 代
- …biao …表 → 代表
- dan 单
- …chun …纯 → 单纯
- …wei …位 → 单位
- dang 当
- …shi …时 → 当时
- da 大
- 한자와 상관없이 모든 단어들을 병음 순서대로 나열함[4]
- d → +a → +i → +b → +i → +a → +o → 代表
- d → +a → +j → +i → +a → 大家
- d → +a → +n → +c → +h → +u → +n → 单纯
- d → +a → +n → +g → +s → +h → +i → 当时
- d → +a → +n → +w → +e → +i → 单位
- d → +a → +z → +h → +o → +n → +g → 大众
첫 번째 방식은 특정 한자로 시작되는 단어들을 찾고자 할 때 편리하고(예를 들어 意를 보면 意로 시작하는 단어들이 그곳에 몰려 있으므로), 두 번째 방식은 발음은 알고 있으나 어떤 한자로 쓰는지 모르는 단어를 찾고자 할 때 아주 편리하다(예를 들어 yìshí(意识)라는 단어를 찾고자 할 때 단순히 y → +i → +s → +h → +i 식으로 찾아 나가면 되므로. 첫 번째 방식대로라면 yì에 해당되는 글자(꽤 많다)가 뭔지부터 궁리해야 한다).
성조 부호가 없는 문자와 성조 부호가 붙은 문자 사이에는 secondary difference가 있다. 성조 부호는 첫 번째 방식에서는 < macron (ā) < acute (á) < caron (ǎ) < grave (à) < 부호 없음 (a) 순으로, 두 번째 방식에서는 부호 없음 (a) < macron (ā) < acute (á) < caron (ǎ) < grave (à) 순으로 정렬된다.
5. 가나
기본적으로 오십음도를 따라 あ い う え お か き く け こ さ し す せ そ た ち つ て と な に ぬ ね の は ひ ふ へ ほ ま み む め も や ゆ よ ら り る れ ろ わ ゐ ゑ を ん 순으로 정렬되며, 각 문자 사이에는 primary difference가 존재한다. 히라가나만을 예로 드나, 가타카나에도 똑같이 적용된다.
- 탁점(゛)과 반탁점(゜)이 붙은 가나와 붙지 않은 가나 사이에는 secondary difference가 있다. primary difference가 없을 경우, 없음 < 탁점 < 반탁점 순서로 정렬한다.
- 작은 가나와 보통 크기의 가나 사이에는 tertiary difference가 있다. primary difference와 secondary difference가 없을 경우, 작은 가나 < 보통 크기의 가나 순서로 정렬한다.
- 장음 부호(ー)는 앞 글자가 あ단일 경우 あ로, い단일 경우 い로, う단일 경우 う로, え단일 경우 え로, お단일 경우 お로, ん일 경우 ん으로 바꿔 처리한다.
- ゝ, 々는 바로 앞 글자로 바꿔 처리한다. 앞 글자도 ゝ나 々일 경우는 그 앞 글자로 바꿔 처리한다.
- 한자의 경우 해당 한자의 일본어 독음을 따른다.
6. 키릴 문자
기본적으로 А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я 순으로 정렬된다. 각 글자 사이에 primary difference가 있으나, 언어에 따라서 조금씩 차이가 있다. diacritic이 붙은 문자와 diacritic이 붙지 않은 문자 사이에는 secondary difference가 있다.
7. 그리스 문자
기본적으로 Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ Ν Ξ Ο Π Ρ Σ Τ Υ Φ Χ Ψ Ω 순으로 정렬된다. 각 글자 사이에 primary difference가 있으며, diacritic이 붙은 문자와 diacritic이 붙지 않은 문자 사이에는 secondary difference가 있다.
8. 주음부호
ㄅ ㄆ ㄇ ㄈ ㄉ ㄊ ㄋ ㄌ ㄍ ㄎ ㄏ ㄐ ㄑ ㄒ ㄓ ㄔ ㄕ ㄖ ㄗ ㄘ ㄙ ㄧ ㄨ ㄩ ㄚ ㄛ ㄜ ㄝ ㄞ ㄟ ㄠ ㄡ ㄢ ㄣ ㄤ ㄥ ㄦ 순으로 정렬된다. 각 문자 사이에는 primary difference가 존재한다.
9. 한자
9.1. 독음 순 정렬
한국어, 일본어, 중국어, 베트남어 등은 자신만의 한자 독음을 가지고 있으며, 이러한 언어들은 그 독음에 따라 한자를 정렬하는 경우가 많다.
9.2. 부수-나머지 획수 순 정렬
한자를 1차적으로 부수에 따라 정렬하며, 부수가 같은 한자는 부수를 제외한 나머지 부분의 획수 순으로 정렬한다. 부수는 강희자전의 214부수 체계를 따르는 것이 일반적이다. 각 부수 사이에는 primary difference가 존재한다.
이 정렬 방식은 한자의 독음을 알 수 없을 때(또는 한 한자에 여러 독음이 존재할 때) 유용하게 쓰일 수 있으며, 특정 언어의 독음에 의존하지 않아도 되기 때문에 중립적이기도 하다. 다만 부수와 획수가 같은 한자의 순서는 정해지지 않았다.
유니코드에서는 한자 블록을 제정할 때 한자들을 부수-나머지 획수 순으로 배당한다(一, 丁, 丂, …, 龣, 龤, 龥). 유니코드가 이 배열 순서를 채택한 것은 바람직하다고 할 수 있다. 왜냐하면 유니코드는 특정 언어만을 위한 문자 집합이 아니라 모든 언어를 위한 문자 집합이고, 옛 문헌에 나오는 독음을 알 수 없는 한자들도 비교적 쉽게 배열해 추가할 수 있다는 장점이 있기 때문이다.
10. 아랍 문자
ا ﺏ ﺕ ﺙ ﺝ ح خ د ذ ر ز ﺱ ش ص ض ط ظ ع غ ف ق ك ل م ن ه و ي ڭ گ ﭪ ژ ﭺ پ 순으로 정렬된다. 각 문자 사이에는 primary difference가 존재한다.
단, 기본적으로 좌서 문자이기 때문에 맨 오른쪽의 글자를 기준으로 정렬된다.
11. 히브리 문자
א בּ ב ג ד ה ו ז ח ט י כּ כ ך ל מ ם נ ן ס ע פּ פ ף צ ץ ק ר ש תּ ת 순으로 정렬된다. 각 문자 사이에는 primary difference가 존재한다.
단, 기본적으로 좌서 문자이기 때문에 맨 오른쪽의 글자를 기준으로 정렬된다.
12. 단순 유니코드 순 정렬
단순히 유니코드 코드 값 순으로 정렬하는 것은 그 어떤 언어에도 적합하다고 할 수 없다.
라틴 문자의 경우 소문자 a(U+0061)가 대문자 Z(U+005A)보다 뒤에 오게 되며, Ñ(U+00D1)는 소문자 z(U+007A)보다도 뒤에 오게 된다.
한글의 경우 ㄴ(U+3134) 같은 낱자나 'ᄒᆞᆫ'(U+1112 U+119E U+11AB)과 같이 조합형 낱자로 이루어진 옛한글이 언제나 완성형 한글 글자 마디 '가'(U+AC00)보다 앞에 오게 된다.
한자의 경우, 위에서도 언급했듯 유니코드에는 강희자전 부수 순으로 정렬되어 있으며, 특정 언어의 독음 순으로 배당돼 있지 않다. 일본어에서 주로 쓰이는 々, ゝ, 장음 부호(ー) 등은 여러 영역에 흩어져 있다.
그래서 일본어 정렬 시 별도의 처리를 하지 않고 단순 유니코드 순으로 정렬하면 々 < 히라가나 < ゝ < 가타카나 < 장음 부호(ー) < 한자(강희자전 순)와 같은 순서로 정렬된다. 회원 가입 시 히라가나를 따로 받는 것도 이것 때문이며, 이런 꼼수를 쓰지 않는 경우 인명 정렬 시 あ가 아닌 一(한 일)로 시작하는 이름이 맨 앞에 온다. 즉 가나 순으로는 비교적 뒷자리인 히토츠이 하지메(一一 一)가 강희자전 순으로 가장 앞에 온다는 말(…).
즉 어떤 언어든 올바른 정렬을 위해서는 별도의 처리가 필요하며, 코드 값에만 의존해서는 올바른 정렬이 불가능하다.
[1] 굳이 한글에 한정시키지 않는다면 일단 한국에서는 숫자->특수문자->한글->영어 순으로 정렬하는 게 기본이다.[2] 주로 근래에 들어온 프랑스어나 독일어 등의 외래어에 쓰는 경우가 많다. 그렇지만 영어 고유어나 오래 전에 유입돼 영어로 완전히 흡수된 외래어 중에서도 diacritics를 덧붙이는 경우가 드물긴 해도 없지는 않다. 예를 들면 음절의 명확한 구분을 위해 ¨를 덧붙이는 경우가 간혹 있다. cooperation을 coöperation으로 쓰는 경우가 한 예인데, 이건 이 단어의 oo 부분이 하나의 모음을 나타내는 게 아니라 co-operation 식으로 나뉜다는 것을 강조하기 위해 o 위에 ¨를 덧붙인 것이다(참고로 이와 유사한 용법이 스페인어 등에서 쓰이고 있다). 또 다른 예로는 시어(詩語) 등에서 -ed를 -èd로 쓰는 경우가 있다. loved를 lovèd로 쓴다든가 blessed('블레스트'가 아니라 '블레시드'로 읽을 때로 한정)를 blessèd로 쓴다든가 등등. 물론 이런 용법은 근래에 거의 안 쓰는 추세이다.[3] 당연하겠지만 이 방식은 주음부호에서도 적용할 수 있다.[4] 이 방식은 미국의 중국학자 Victor H. Mair가 1986년에 제안한 방식이며, 이 방식을 채택한 사전 ABC Chinese–English Dictionary는 또 다른 미국의 중국학자 John DeFrancis의 주도로 1996년에 처음 나왔다. Mair도 DeFrancis도 현대 중국어가 다음절 언어라는 점을 강조한 바 있으며, 그에 따라 한자와 상관없이 모든 단어들이 병음 순서대로 나열된 사전이 필요하다고 보았다.[5] 다장조는 하장조(ハ長調), 라단조는 니단조(ニ短調)가 된다. 즉 도레미파솔라시도=다라마바사가나다=하니호헤토이로하.