# Symbol sorting order

# Halfwidth
# Basically ordered by codepoint, but some characters are not
# because of usefulness.
.
,
@
 
!
?
'
"
#
$
%
&
(
)
+
*
-
/
:
;
<
=
>
[
\
]
^
_
`
{
}
|
~
# Parenthesis
（
）
「
」
【
】
『
』
［
］
“
”
〈
〉
《
》
〔
〕
｛
｝
# Major symbols
■
□
▲
△
▼
▽
◆
◇
○
◎
●
★
☆
※
〒
〠
§
¶
ゔ
‘
’
# Literal symbols
‥
…
、
。
〃
々
〆
〓
〜
゛
゜
ゝ
ゞ
・
ー
ヽ
ヾ
©
‖
℃
℡
☎
☏
# Currency
＄
￥
¢
£
€
₠
₡
₢
₣
₤
₥
₦
₧
₨
₩
₪
₫
₭
₮
₯
₰
₱
₲
₳
₴
₵
№
# Minor symbols
♪
♫
♬
♭
♮
♯
☖
☗
♤
♡
♢
♧
♠
♥
♦
♣
♨
☐
☑
☒
☓
✓
✔
✗
✘
☀
☁
☂
☃
♔
♕
♖
♗
♘
♙
♚
♛
♜
♝
♞
♟
# Math
+
＋
-
−
－
±
×
/
÷
^
!
<
>
¬
Σ
π
∀
∂
∃
∇
∈
∉
∋
∌
∑
√
∝
∞
∟
∠
∧
∨
∩
∪
∫
∬
∮
∴
∵
∼
∽
≒
≠
≡
≤
≥
≦
≧
≪
≫
⊂
⊃
⊆
⊇
⊕
∅
⊢
⊥
⊨
⊿
⌒
＜
＝
＞
# Super scripts' codepoints are not sequential so explicitly set them.
⁰
¹
²
³
⁴
⁵
⁶
⁷
⁸
⁹
⁺
⁻
⁼
⁽
⁾
ⁿ
₀
₁
₂
₃
₄
₅
₆
₇
₈
₉
₊
₋
₌
₍
₎
ₐ
ₑ
ₒ
ₓ
ₔ
# Number like characters
Ⅰ
Ⅱ
Ⅲ
Ⅳ
Ⅴ
Ⅵ
Ⅶ
Ⅷ
Ⅸ
Ⅹ
ⅰ
ⅱ
ⅲ
ⅳ
ⅴ
ⅵ
ⅶ
ⅷ
ⅸ
ⅹ
㈠
㈡
㈢
㈣
㈤
㈥
㈦
㈧
㈨
㈩
①
②
③
④
⑤
⑥
⑦
⑧
⑨
⑩
⑪
⑫
⑬
⑭
⑮
⑯
⑰
⑱
⑲
⑳
㉑
㉒
㉓
㉔
㉕
㉖
㉗
㉘
㉙
㉚
㉛
㉜
㉝
㉞
㉟
㊱
㊲
㊳
㊴
㊵
㊶
㊷
㊸
㊹
㊺
㊻
㊼
㊽
㊾
㊿
