[10] [[Unicode]] および近年の公的[[文字コード]]規格は、[[文字]]に[[ラテン文字]]その他による[DFN[[RUBYB[[[名前]]]@en[name]]]]を割り当てています。
[[文字]]の[[名前]]は、[[文字]]を一意に特定するもので、複数の[[符号化文字集合]]に属する[[文字]]同士の等価性は、
[[文字]]の[[名前]]が一致するか否かに拠るとされています。

[EG[
[59] 例えば「[CODE[A]]」の[[名前]]は [CODE(charname)[[[LATIN CAPITAL LETTER A]]]] です。
]EG]

* 仕様書

[REFS[
- [9] <http://www.unicode.org/versions/Unicode6.2.0/ch04.pdf#page=16>
- [43] [CITE@en-US[UAX #34: Unicode Named Character Sequences]] ([TIME[2013-09-27 22:15:14 +09:00]] 版) <http://www.unicode.org/reports/tr34/>
- [50] [CITE@en-us[UAX #44: Unicode Character Database]] ([TIME[2013-09-27 22:15:15 +09:00]] 版) <http://www.unicode.org/reports/tr44/#Code_Point_Labels>
- [77] [CITE@en-us[UAX #44: Unicode Character Database]], [TIME[2020-03-06T22:23:11.000Z]], [TIME[2020-10-21T08:11:30.595Z]] <https://www.unicode.org/reports/tr44/#About_Property_Table>
- [78] [CITE@en-us[UAX #44: Unicode Character Database]], [TIME[2020-03-06T22:23:11.000Z]], [TIME[2020-10-21T08:24:32.981Z]] <https://www.unicode.org/reports/tr44/#Derived_Extracted>
- [79] [CITE@en-us[UAX #44: Unicode Character Database]], [TIME[2020-03-06T22:23:11.000Z]], [TIME[2020-10-21T08:45:50.528Z]] <https://www.unicode.org/reports/tr44/#Matching_Names>
- [80] [CITE@en-us[UAX #44: Unicode Character Database]], [TIME[2020-03-06T22:23:11.000Z]], [TIME[2020-10-21T08:49:23.551Z]] <https://www.unicode.org/reports/tr44/#Property_Invariants>
- [118] 
[CITE@en-us[UTS #18: Unicode Regular Expressions]], [TIME[2022-02-08T14:02:12.000Z]], [TIME[2022-11-13T09:09:22.382Z]] <https://unicode.org/reports/tr18/#Name_Properties>

]REFS]

[11] [[文字]]の[[名前]]について横断的に定義した仕様は存在しませんが、事実上唯一現存する[[符号化文字集合]]である
[[Unicode]] における[[名前]]の定義 (>>9) が最も規範的なものと考えられますし、
最も詳細に説明もされています。次節に示すように、
各種[[符号化文字集合]]規格にもそれぞれの定義が含まれています。

* 意味

[30] [[Unicode]] において[DFN[[RUBYB[文字の名前]@en[character name]]]]とは、[[文字]]の
[DFN[[CODE@en[[[Name]]]]]] [[特性]] (略称 [DFN[[CODE@en[[[na]]]]]]) の値のこと
[SRC[>>9]] をいい、次のように定義されています。
[FIG(switch)[
:[31] [[ハングル音節]]:
[[符号位置]]から機械的に決定される、[[ハングル字母]]の組み合わせを表す[[名前]]です。
必要な情報は
[CODE[Jamo.txt]]
に書かれています [SRC[>>77]]。
版による違いがあります。
[SEE[ [[ハングル音節]] ]]
:[32] [[漢字]] ([[CJK ideographs]]):
[CODE(charname)@en[CJK UNIFIED IDEOGRAPH-]] または
[CODE(charname)@en[CJK COMPATIBILITY IDEOGRAPH-]] の後に16進数4桁または6桁の[[符号位置]]を続けた[[名前]]です。
:[[Tangut ideographs]], [[Khitan Small Script ideographs]], [[Nushu ideographs]]:
規則的に決められた名前です [SRC[>>77]]。
:[34] [[制御文字]]、[[私用域]]、[[サロゲート]]、[[非文字]]、予約の[[符号位置]]:
[[空文字列]]です。
:[33] その他:
[CODE[UnicodeData.txt]] に書かれている[[名前]]です
[SRC[>>77]]。
]FIG]

[35] [[名前]]が[[空文字列]]であることを「[[名前]]がない」ともいいます [SRC[>>9]]。

[51] [[名前]]は、その[[文字]]の一般的な用法や形状を表しています。
しかし、[[名前]]はその[[文字]]の用法や[[グリフ]]を制限することを意図したものではないと解されています。

;; [53] 例えば複数の用法を持つ[[文字]]では、その一部が[[名前]]に使われていたりします。
また、 [[bidi]] により[[鏡像]]化する文字なのに [CODE[LEFT]] や [CODE[RIGHT]]
が[[名前]]に含まれていて、[[名前]]と表示が真逆になる[[文字]]すらあります。

[52] また、[[名前]]はあくまで[[符号化文字集合]]における[[文字]]の識別を目的としたもので、
その文脈を離れて一般的な[[文字]]の正式な名称を定めるものではないというのが通常の理解です。

* 構文

[20] [[Unicode]] の[[文字]]の[[名前]]は次の[[正規表現]]による[[擬似コード]]の条件すべてに[[一致]]する文字列とされています
[SRC[>>9]]。

[FIG(list)[
- [16] /^[A-Z0-9\u0020-]+$/
- [17] not /^[0-9]/ and not /\u0020[0-9]/
- [18] not /^-/ and not /-$/ and not /--/
- [19] not /^\u0020/ and not /\u0020$/ and not /\u0020\u0020/
]FIG]

[21] [CODE(char)[[[U+0020]]]] や [CODE(char)[[[-]]]] が連続しているケースや、
[CODE(char)[[[-]]]] の有無によって別の[[文字]]を表すケースもあります。

[EG[
[22] [CODE(charname)@en[[[HANGUL JUNGSEONG OE]]]] と [CODE(charname)@en[[[HANGUL JUNGSEONG O-E]]]]
は別の[[文字]]です。
]EG]

[EG[
[23] [CODE(charname)@en[[[TIBETAN LETTER A]]]] と [CODE(charname)@en[[[TIBETAN LETTER -A]]]]
は別の[[文字]]です。
]EG]

[46] 長さの上下限はないようです。現時点で最短の名前は2文字です。略号を除けば4文字が最短かもしれません。

* 名前の比較

[117] 
[[文字の名前]]の[[比較]]の方法は [[UAX #44]] で規定されています。 [SRC[>>79]]

[119] 
[[正規表現]]の [CODE[\p]] や [CODE[\N]] で使われます。

* 安定性

[15] [[Unicode]] の[[文字]]の[[名前]]、[[文字名別名]] (>>25)、
[[名前付き文字列]]の[[名前]] (>>26) は変更されることはなく、
また互いに異なる値である [SRC[>>9]] とされています。

[24] ただし過去には何度か変更されています。

[25] [[文字の名前]]が割り当てられた後に誤りが発覚した場合、
[DFN[[RUBYB[文字名別名]@en[character name alias]]]]が割り当てられます。
[[文字名別名]]は[[文字の名前]]と同じ名前空間を共有していています。 [SRC[>>9]]

[63] 名前付き文字列 (>>26) については削除された例 (>>61) があります。

* 図形文字の名前

[138] 
すべての[[Unicode文字]] 
([[サロゲート符号点]], [[非文字]], [[未割当符号点]], [[私用文字]], [[制御文字]]を除く。)
には[[名前]]が割当てられています。


[137] 
[CN[SP]] や [CN[NBSP]] のように、[[図形文字]]であっても特殊な[[文字]]に対しては、
[[制御文字]]の場合 (>>45) のように略号が定められています。


[139] 
[[Unicode]] の[[文字の名前]]は [[ISO/IEC 10646]] の[[文字の名前]]と一致しています。
ただし [[ISO/IEC 10646]] の[[文字の名前]]は後に [CODE[ ([SNIP[]])]]
と注釈が付いていることがあります。

[140] 
[[Unicode]] の現在の[[文字の名前]]は [[Unicode 1.1]] 以来のものです。
[[Unicode 1.0]] の[[文字の名前]]は多くが違っていました。 
対応表は [[UCD]] に現在も収録されています。

[141] 
概ね20世紀末 ([[平成時代]]初期頃) の [[ISO文字コード]]規格は
[[ISO/IEC 10646]] と共通の[[文字の名前]]を使っていました。
それ以前も似たような名前や説明を与えていましたが、
完全に体系化されたものにはなっていませんでした。

[142] 
各国の国内規格もおおむね同様の状況ですが、
[[名前]]が各国語に翻訳されていたり、[[漢字]]のように[[名前]]がなかったりしました。
[[ISO/IEC 10646]] にも[[仏語]]の[[文字の名前]]があります。
(>>12 参照)

[143] 
[[国際規格]]でも[[国内規格]]でもない [[Unicode]] 以前の[[文字コード]]
(企業の独自符号など) には、たとえ仕様書のようなものがあったとしても、
[[文字の名前]]のようなものはないことが多いです。
ただ [[Unicode]] の時代になってからは[[変換表]]という形で [[Unicode]]
の[[文字の名前]]との対応関係が確立された場合が多いです。

[144] 
[[国内規格]]は [[Unicode]] にない[[文字]]に独自の[[名前]]を定めていることがあります。

[145] 
公的な[[標準化団体]]の仕様以外で独自の[[文字の名前]]を定めている例もいくつかあります。

[146] 主要な[[文字の名前]]の定義:

- [147] [[Unicode]]
- [148] [[ISO/IEC 10646]]
- [149] [[JIS X 0208:1997]]
- [150] [[JIS X 0213:2000]]
- [151] [[UTC]] や [[WG2]] の文書には未成に終わった [[Unicode]] への追加提案や、
最終決定と違う提案段階の[[文字の名前]]が大量に見られます。
- [[SIL PUA]]
- [[MUFI]]
- [152] [[CSUR]]
- [153] [CITE[[[にしき的フォント]]]]
- [154] [CITE[[[Xim Sans]]]]
- [156] かつて [[CHISE]] の文字データベースは[[ラテン文字]]等の[[全角]]版
([[Unicode]] に無いもの) に独自の[[名前]]を与えていましたが、
区別のためにすべて[[小文字]]の[[名前]]としていました。 
[SRC[>>155]]
- [165] [[Unicode]] との変換表で [[Unicode]] にない文字の名前が[[小文字]]で示されているもの
-- [166] 
[TIME[2002-04-08T21:00:09.000Z]], [TIME[2025-11-02T06:15:03.527Z]] <https://unicode.org/Public/MAPPINGS/VENDORS/MISC/SGML.TXT>
- [[RFC 1345]]
- [158] [CITE[TeX dcr input (Input required for European Computer Roman Font for TeX)]], [TIME[2025-06-20T14:26:26.000Z]], [TIME[2000-08-16T01:44:04.710Z]] <https://web.archive.org/web/20000816013913/http://www.kostis.net/charsets/tex-dcr.htm>
-- [160] 
[CITE[TeX dcr input (Input required for European Computer Roman Font for TeX)]], [TIME[2025-06-20T14:26:47.000Z]], [TIME[2000-08-16T01:50:26.867Z]] <https://web.archive.org/web/20000816013919/http://www.kostis.net/charsets/tex-dcr.in.htm>
-- [161] 
[CITE[TeX dcr output (Output produced for European Computer Roman Font by TeX)]], [TIME[2025-06-20T14:26:54.000Z]], [TIME[2000-08-16T07:12:35.606Z]] <https://web.archive.org/web/20000816013924/http://www.kostis.net/charsets/tex-dcr.out.htm>




[REFS[

- [155] 
[CITE@ja[In each *fullwidth* variant: (c1756fc8) · コミット · CHISE / xemacs-chise · [[GitLab]]]], [TIME[2024-07-10T02:19:36.000Z]] <https://gitlab.chise.org/CHISE/xemacs-chise/-/commit/c1756fc81d67b5bacac56416b194a5f1da740628>

]REFS]


** 怪しい名前

[64] [[Unicode]] に統一されつつあった時代の[[文字コード]]関連仕様は、
[[Unicode]] の[[符号位置]]や[[名前][文字の名前]]との関係を記述していますが、
たまに怪しいケースがありました。 ([[Unicode]] にない (または当時はなかった)
[[文字]]に独自の[[名前][文字の名前]]を割り当てている場合もありましたが、
それは除きます。)

[FIG(list middle)[
- [CODE(charname)@en[OVER LINE]]
- [CODE(charname)@en[FULLWIDTH OVERLINE]]
- [CODE(charname)@en[SQUARE BPACKET]]
- [[濁点と半濁点の文字]]
- [[アルファベット]]
- [CODE(charname)@en[KATAKANA LETTER AINU P]]
- [CODE(charname)@en[DENTISTRY SYMBOL LIGHT VERTICAL AND WAVE]] [SEE[ [[JIS X 0213]] ]]

]FIG]

@@
[67] 
[DFN[代替名称]]
[SEE[ [[重複符号化]] ]]

[69] 
[[JIS X 0213:2000]]
は
[[Unicode]]
にない[[文字]]に独自の[[名前]]を与えていました。
[[JIS X 0213:2004]]
で
[[Unicode]] の名前に改正されました。
[SEE[ [[括弧付きUCS]] ]]

[70] [[JIS X 4051:2004]] は [[JIS X 0213:2000]]
の名前を使っていました。

[112] 
[[ARIB STD-B62]] は [[JIS X 0213:2004]] の[[代替名称]]を使っています。

-*-*-

[114] 
[[文字の名前]]は変更しないことになっているので、
後に誤りとわかってもそのままになっていることがあります。

[115] 
[[蘇州号碼]]はおかしな名前になっています。

[113] 
合成用[[ハングル字母]]のうち4つは[[文字の名前]]が誤りとわかり、
[[ISO/IEC 10646]]:2003 Amd.5 
で[[文字の名前]]の後に括弧書きの注釈を加える形で訂正されました。
[SEE[ [[KS X 1026-1]] (8.2) ]]


-*-*-

[132] 関連(しない): [[怪しい日本語]]



* 名前付き文字列

[26] [[文字]]の連続に対しても[[名前]]が割り当てられることがあり、
[DFN[[RUBYB[[[名前付き文字列]]]@en[named character sequence]]]]と呼ばれています。
[[名前付き文字列]]も[[文字の名前]]と名前空間を共有しています。 [SRC[>>9]]

[136] 
[[Unicode]] / [[ISO/IEC 10646]] の他には [[JIS X 0213]] がいくつか規定しています。
[[JIS X 0213]] のほとんどの[[名前付き文字列]]は [[Unicode]] のものと等しいですが、
2つは違う名前です。
[SEE[ [[JIS X 0213]] ]]


* 制御文字の名前

[29] [[Unicode]] は [[C0]]、[[C1]]、 [CODE(charname)@en[[[DELETE]]]] の[[制御文字]]に[[名前]]を与えていませんが、
別名としてそれらの[[符号位置]]に[[制御文字]]の[[名前]]を与えています [SRC[>>9]]。

[45] [[制御文字]]やそれに近い特殊な[[文字]]には[[ラテン文字]]や[[数字]]2~4文字の略号が定義されていることがありますが、
これも別名となっているようです。ただし [CODE(charname)@en[[[LS0]]]], [CODE(charname)@en[[[LS1]]]]
のように含まれていないものもあるようです。

[48] [[ISO/IEC 6429]] / [[JIS X 0211]] は[[制御文字]]でないものも含め[[制御機能]]に対して同様の[[名前]]を定義しています。

[49] [[ISO/IEC 2022]] / [[JIS X 0202]] は[[エスケープシーケンス]]の一部に対して同様の[[名前]]を定義しています。

[128] [CITE[001.pdf]], [TIME[2022-11-02T03:16:03.000Z]], [TIME[2022-12-10T13:59:32.412Z]] <https://itscj.ipsj.or.jp/ir/001.pdf#page=2>

[129] >>128 この時代は TC[SUB(normal)[10]] のように[[下付き文字]]が使われていました。

;; [130] [[G[SUB(normal)[0]]]] のように[[符号要素]]の[[数字]]も[[下付き]]でした。

[131] [CITE[null]], [TIME[2011-07-20T21:47:35.000Z]], [TIME[2022-12-11T07:10:04.804Z]] <https://www.unicode.org/L2/L2011/11281-control-aliases.txt>

* 符号位置ラベル

[36] [[名前]]のない[[符号位置]]に関しても便宜上[DFN[[RUBYB[符号位置ラベル]@en[code point label]]]]が用意されています。
[[符号位置ラベル]]は[[小文字]]、[[ハイフン]]、[[16進数]]で表されます。[[名前]]でないことを明確にするために
[CODE(char)[[[<]]]] と [CODE(char)[[[>]]]] で括っても良い [SRC[>>9]] とされており、
[[Unicode Character Database]] ではそのように表記されています。

[58] [[名前]]と[[符号位置ラベル]]で、 [CODE[[[U+0000]]]]-[CODE[[[U+10FFFF]]]]
のすべての[[符号位置]]を表せます。

[37] [[符号位置ラベル]]は4-6桁の[[符号位置]]を使って次のように表されます [SRC[>>9]]。
[FIG(list)[
- [38] [[制御文字]] [CODE[control-[VAR@en[HHHH]]]]
- [39] [[予約]] [CODE[reserved-[VAR@en[HHHH]]]]
- [40] [[非文字]] [CODE[noncharacter-[VAR@en[HHHH]]]]
- [41] [[私用]] [CODE[private-use-[VAR@en[HHHH]]]]
- [42] [[サロゲート]] [CODE[surrogate-[VAR@en[HHHH]]]]
]FIG]

[57] [[予約]]は、当然ながら[[文字]]が割り当てられれば使われない名前となります。
それ以外はおそらく今後変更されることはないと思われますが、それが保証されているのかはわかりません。

* モード

[91] 
[[ISO/IEC 2022]]
や
[[ISO/IEC 6429]]
は、
[[制御機能]]によって生じる状態のそれぞれにも、
[[文字の名前]]と同じような形式の[[名前]]が与えられています。

* 名前と言語

[12] [[ISO/IEC]] は[[英語]]と[[仏語]]の仕様書が存在するため、[[文字名称]]についても[[英語]]と[[仏語]]の2種類が存在しています。

;; [96] 
ただし、
[[ISO/IEC 10646]]
の[[仏語]]版は本段落執筆時点で20年近く出版されておらず、
今後も再開の可能性はほとんどなさそうです。
[SEE[ [[ISO/IEC 10646]] ]]

[13] [[Unicode]] は[[英語]]の[[名前]]を採用しており、[[ISO/IEC 10646]] の[[英語]]の[[名前]]と一致するとされています
[SRC[>>9]]。

[100] 
近年 [[Unicode]] は[[仏語]]版の[[符号表]]も公開しています。
そちらでは[[仏語]]の[[文字の名前]]が使われています。
[SRC[>>98]]
[[仏語]]の[[文字の名前]]は[[規定]]の一部ではないとされています。
[SRC[>>97]]
[[仏語]]の[[文字の名前]]は公式な
[[UCD]]
に含まれていませんが、
[[符号表]]の元になったと思しきデータファイルが非公式に公開されています
[SRC[>>101, >>99]]。
[SEE[ 仏語版については [[The Unicode Standard]] ]]


[14] [[JIS]] は[[英語]]の[[文字の名前]]の他に[[日本語通用名称]]を定義していますが、
前者が[[規定]]であるのに対し、後者は[[参考]]とされています。
[[日本語通用名称]]に特に命名規則は無いようで、[[文字の名前]]と直接の関係はありません。

[8]
[[JIS C 0456]]:2005 ([[IEC 61286]]:2001 の[[翻訳規格]]で
[[ISO-IR]] 181 に相当) は[SPAN(stantard-section)[附属書 C]]
に [[JIS X 0221]] との対応が載っていますが、そこで
[[UCS]] 側の[[文字]]の[[名前]]まで日本語訳されています。

[102] 
中華民国91年版の [[CNS 14649-1]] 
[WEAK[([[中華民国]]の [[ISO/IEC 10646]])]]
は[[文字の名前]]を[[台湾漢語]]に翻訳していました。

[111] 
[[KS X 1026-1]]
は
[[ISO/IEC 10646]]
の[[ハングル]]に[[英語]]の[[文字の名前]]と[[韓国語]]の名前を併記しています。
[SEE[ [[KS X 1026-1]] ]]

;; [104] 
[[CNS 14649:2017]]
は翻訳を諦めたようで、
オリジナルの[[英語]]の名前のままになっています。
(本文中では[[英語]]名に括弧付きで[[漢語]]名が付されていることもあります。)

;; [103] [[GB 13000]] ([[中華人民共和国]]の [[ISO/IEC 10646]])
では[[英語]]のままです。

[159] 
[[I.S. 434]] の[[符号化文字集合]]は[[左側]]が [[ASCII]]、[[右側]]が独自ですが、
[[規格票]]は[[英語]]と[[アイルランド語]]の[[対訳]]形式で、
すべての[[図形文字]]と [CN[SPACE]] と [CN[DELETE]]
の[[文字の名前]]がそれぞれの[[言語]]で示されています。
[CN[SPACE]] と [CN[DELETE]] には[[略号]]もあり、 [CN[DELETE]] は[[アイルランド語]]では略しても
[CN[DEL]] にはなりませんが、どちらも [CN[SP]], [CN[DEL]] となっています。

[54] その他各国の[[規格]]では、[[規定]]または[[参考]]として自国の[[公用語]]の名前を挙げていることがあります。

[EG[
[110] 
[[KS X 1001]] は[[韓国語]]の名前を与えています。
]EG]

[EG[
[116] 
[[TCVN 6909]] は[[越南語]]の名前を与えています。
[[TCVN 8271]] は[[越南語]]の名前と[[英語]]の[[文字の名前]]の両方を示しています。
]EG]

[56] 実用上は [[Unicode]] が用いる[[英語]]の名前だけ考慮すれば十分です。
例えば[[正規表現]]で[[文字の名前]]を与える場合、 [[Unicode]]
の[[名前]]が使われています。


[REFS[
- [97] 
[CITE[The [[Unicode]] Blog: August 2020]], 
Thursday, August 20, 2020,
[TIME[2022-03-07T22:15:05.000Z]], [TIME[2022-03-12T12:06:43.406Z]] <http://blog.unicode.org/2020/08/?m=0>
- [98] 
[CITE@en[Tableaux des caractères]], [TIME[2021-10-07T20:55:21.000Z]], [TIME[2022-03-12T12:05:08.281Z]] <https://unicode.org/charts/fr/>
-
[101] 
[CITE[Standard Unicode 13.0.0[BR[]]Liste des noms des caractères (version francophone)]], [TIME[2021-03-03T21:19:17.000Z]], [TIME[2022-03-12T13:30:06.071Z]] <http://hapax.qc.ca/ListeNoms-13.0.0.txt>
- [99] 
[CITE[Standard Unicode 14.0.0[BR[]]Liste des noms des caractères (version en langue française)]], [TIME[2021-10-11T03:45:55.000Z]], [TIME[2022-03-12T12:15:13.651Z]] <http://hapax.qc.ca/ListeNoms-14.0.0.txt>


]REFS]

* 一覧

[44] [[文字の名前]]の一覧は [[Unicode Character Database]] の [CODE[NamesList.txt]]
に含まれています。

;; [47] [[CJK COMPATIBILITY IDEOGRAPHS]] は含まれていますが、 [[CJK UNIFIED IDEOGRAPHS]]
と [[HANGUL SYLLABLES]] は含まれていません。

[28] [[文字名別名]] (>>29 の[[制御文字]]の[[名前]]や >>45 の略号を含む。) の一覧は [[Unicode Character Database]] の
[DFN[[[NameAliases.txt]]]] <http://www.unicode.org/Public/UCD/latest/ucd/NameAliases.txt> に含まれています。

[REFS[
- [60] ([TIME[2013-02-05 21:43:48 +09:00]] 版)
<http://www.unicode.org/Public/UNIDATA/NameAliases.txt>
]REFS]

[27] [[名前付き文字列]]の一覧は [[Unicode Character Database]] の
[DFN[[[NamedSequences.txt]]]] <http://www.unicode.org/Public/UCD/latest/ucd/NamedSequences.txt> に含まれています。

[135] [[名前付き文字列]]の追加履歴も注釈として書かれていますが、
「このうちいくつかはその前からあった」のような書き方も混じっていて、
完全な履歴を負うには古い[[Unicodeの版]]のファイルを調べる必要があります。


[61] [DFN[[[NamedSequencesProv.txt]]]] には、「まだ完全に承認されていない」
名前付き文字列の定義が含まれています [SRC[>>62]]。更に、
以前定義 (承認) されていてその後削除された名前付き文字列が[[注釈]]として含まれています。

[134] 
予備登録から本登録に至るまでの間に定義が改められることがあります。
例えば >>133 には現在本登録された[[名前付き文字列]]の古い定義を見ることが出来ます。

[REFS[
- [62] ([TIME[2015-05-12 07:58:04 +09:00]] 版) <http://www.unicode.org/Public/UCD/latest/ucd/NamedSequencesProv.txt>
- [133] 
[TIME[2015-05-11T22:58:04.000Z]], [TIME[2023-09-21T12:26:08.842Z]] <https://www.unicode.org/Public/8.0.0/ucd/NamedSequencesProv.txt>


]REFS]

** [CODE[NamesList.txt]]

[73] 
[DFN[[CODE[NamesList.txt]]]] [SRC[>>72]]
には[[文字の名前]]の情報が含まれています。

[74] 
その他[[符号表]]に含まれている、関係する他の[[文字]]の情報なども含まれています。
[DFN[[CODE[NamesList.html]]]]
に構文の説明があります。
[SRC[>>75]]

[106] 
このファイルは[[符号表]] [SRC[>>105]] [[PDF]] の生成に使う元データとされます。

[107] 
このファイル [SRC[>>76]] の冒頭には次のように書かれています。

>
	This file is semi-automatically derived from UnicodeData.txt and
	a set of manually created annotations using a script to select
	or suppress information from the data file. The rules used
	for this process are aimed at readability for the human reader,
	at the expense of some details; therefore, this file should not
	be parsed for machine-readable information.

すなわち、 [CODE[UnicodeData.txt]] とその他から自動生成されたもので、
[[機械可読]]情報の抽出のため[[構文解析]]するべきものではないというのです。

[108] 
ところが実際にはこのファイルは構文が定義されている [SRC[>>75]]
(のでそれに従い利用できるよう整備されている)
のですし、このファイルを使う[[応用]]も少なくないようです。

[109] 
そしてこのファイルには [CODE[UnicodeData.txt]] にない情報も入っていて、
それが [[UCD]] の他のファイルには入っていないらしいのです。
(おそらくこのファイル生成用の元データファイルは非公開なのでしょう。)

[REFS[
- [72] <https://www.unicode.org/Public/UCD/latest/ucd/NamesList.txt> 
-- [76] ([TIME[2013-08-07 18:00:23 +09:00]] 版)
<http://www.unicode.org/Public/UNIDATA/NamesList.txt>
- [75] [CITE@en-us[[[UCD]]: Unicode NamesList File Format]], [TIME[2020-02-12T18:45:49.000Z]], [TIME[2020-10-20T12:04:54.308Z]] <http://www.unicode.org/Public/UCD/latest/ucd/NamesList.html>
- [105] 
[CITE[[[The Unicode Standard]], Version 15.0 - ch24.pdf]], [TIME[2022-09-08T18:13:51.000Z]], [TIME[2022-09-24T03:53:13.949Z]] <https://www.unicode.org/versions/latest/ch24.pdf>
]REFS]



* 鏡像文字

[4] 
[[括弧]]のように[[左横書き]]と[[右横書き]]で[[字形が変わる文字][書字方向依存グリフ]]は、
[[左横書き]]用の[[名前][文字の名前]]がついています。
[SEE[ [[書字方向依存グリフ]] ]]

* 回転

[81] 元の[[字形]]を[[回転]]、反転させた字形のとき、それを表す[[文字の名前]]がつけられることがあります。

[83] 
次のような命名となっています [SRC[>>82]]。

- [84] turned: 中心に対して180度[[回転]]
- [85] inverted: 上下中央の水平線に対して反転
- [86] reversed: 左右中央の垂直線に対して反転
- [87] rotated: 中心に対して90度回転、左右どちらかは文字によって違う
- [88] inverse: 前景の文字と背景の空白を逆転

[89] reversed に似て少し違う概念に[[鏡像化]]があります。


[REFS[
- [82] [CITE@en-us[FAQ - Character Properties, Case Mappings and Names]], [TIME[2018-10-10T22:22:14.000Z]], [TIME[2020-11-03T06:23:31.172Z]] <https://unicode.org/faq/casemap_charprop.html#16>
]REFS]

* 文脈

[93] 
[[Unicode符号点]]や[[符号化済文字]]の記述 (参照) に使われます。
[SEE[ [[符号点]] ]]

[71] [[仕様書]]の参照以外にも[[プロトコル要素]]として使われることがあります。

[FIG(short list)[ [65] [[文字の名前]]を使う場面
- [CODE[\p]]
- [CODE[\N]]
- [[XML Character Entities]]
]FIG]

[162] [CITE@ja[The TECkit Language - TECkit_Language.pdf]], [TIME[2021-11-12T17:48:17.000Z]], [TIME[2025-06-29T02:08:19.417Z]] <https://software.sil.org/downloads/r/teckit/TECkit_Language.pdf#page=6>

[163] >>162 [[文字の名前]]を[[英数字]]以外 [CH[_]] に置換して、大文字・小文字不区別で利用。

* 正規表現

[120] 
[[Unicode正規表現]] [DFN[[CODE[\N]]]],
[DFN[[CODE[\p{name}]]]] [SRC[>>118]],
[DFN[[CODE[\p{Named_Sequence}]]]]

[122] [CITE@en-us[UTS #18: Unicode Regular Expressions]]
( ([TIME[2012-07-19 21:56:19 +09:00]] 版))
<http://www.unicode.org/reports/tr18/#Individually_Named_Characters>

[123] [CITE[charnames - search.cpan.org]]
( ([TIME[2013-10-28 10:18:01 +09:00]] 版))
<http://search.cpan.org/dist/perl/lib/charnames.pm>

[124] [CITE@en[perlunicode - Unicode support in Perl - Perldoc Browser]], [TIME[2022-11-13T12:17:01.000Z]] <https://perldoc.perl.org/perlunicode#Comparison-of-%5CN%7B...%7D-and-%5Cp%7Bname%3D...%7D>

[121] [CITE@en[perlunicode - Unicode support in Perl - Perldoc Browser]], [TIME[2022-11-13T12:23:06.000Z]] <https://perldoc.perl.org/perlunicode#Wildcards-in-Property-Values>

[125] [CITE@en-us[UTS #18: Unicode Regular Expressions]], [TIME[2022-02-08T14:02:12.000Z]], [TIME[2022-11-14T08:58:11.924Z]] <https://unicode.org/reports/tr18/#optional_properties>

* 歴史

[FIG(quote)[
[FIGCAPTION[
[90] 
[[Standard ECMA-6]]
[CITE[7-Bit coded Character Set]], 
6[SUP[th]] Edition - December 1991,
Reprinted in electronic form in August 1997,
[TIME[2017-06-15T13:13:29.000Z]], [TIME[2020-12-04T08:36:24.470Z]] <http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-006.pdf#page=12>
]FIGCAPTION]

>
[B[5.3 Names]]
>
This ECMA Standard assigns a unique name to each character. In addition, it specifies an acronym for each
control character and for the characters SPACE and DELETE, and a graphic symbol for each graphic
character. By convention, only capital letters, space and hyphen are used for writing the names of the
characters. For acronyms only capital letters and digits are used. It is intended that the acronyms and this
convention be retained in all translations of the text.
>
The names chosen to denote graphic characters are intended to reflect their customary meaning. However,
this ECMA Standard does not define and does not restrict the meanings of graphic characters. Neither does it
specify a particular style or font design for the graphic characters when imaged.

]FIG]



[5]

>
:5.3 文字の名前:この[[規格]]は、各[[文字]]に一つの[[名前]]を割り当てる。
さらに、[[制御文字]][[並びに]] [CODE(charname)[[[SPACE]]]]
([CODE(jcharname)[[[スペース]]]]) 及び [CODE(charname)[[[DELETE]]]]
([CODE(jcharname)[[[削除]]]]) について、その[[文字]]の[[略号]]
([[頭字語]]) を定義する。ここでは、[[文字]]の[[名前]]は、
[[英大文字]]、 [CODE(charname)[[[SPACE]]]] 
[[及び]][[ハイフン]]だけで[[表現]]する。[[略号]]は、
[[英大文字]][[及び]][[数字]]を用いる。[[規格本体]]の各[[国語]]への[[翻訳]]でも、
[[略号]][[及び]]この[[記法]]は、保たれなければならない。
[SRC[[[JIS X 0202]]:1998]]

[6]

>
:4.3 名前:この[[規格]]では、規定するすべての[[文字]]に対して[[名前]]を割り当てる。
さらに、[[文字]] [CODE(charname)@en[[[SPACE]]]] 
([CODE(jcharname)[[[スペース]]]]) 及び[[文字]]
[CODE(charname)@en[[[DELETE]]]]
([CODE(jcharname)[[[抹消]]]]) に対する[[略号]]を規定する。
[[文字]]の[[名前]]の[[表記]]には、[[ラテン大文字]]
([CODE(char)[A]]〜[CODE(char)[Z]])、[[スペース]]及び[[ハイフン]]だけを使用する。
[[略号]]には、[[ラテン大文字]]だけを使用する。
> [[図形文字]]を示すために付けられた[[名前]]は、
[[文字]]の慣習的な意味を反映するようにしている。しかし、
この[[規格]]は、[[図形文字]]の意味を定義しないし、制限もしない。
> 参考 [[JIS X 0211]] (符号化文字集合制御機能) 
で規定する[[制御機能]]の[[略号]]には、
[[ラテン大文字]]及び[[数字]]だけを使用している。
[SRC@en[[[JIS X 0201]]:1997]]

[FIG(quote)[ [66] [[JIS X 0208:1997]]


>
[B[5.3 名前]] この[[規格]]では, 規定するすべての[[文字]]に対して[[名前]]を割り当てる。さらに, [[文字]] [CODE(charname)@en[[[SPACE]]]]([[ス][スペース]]
[[ペース][スペース]]) 及び[[文字]] [CODE(charname)@en[[[DELETE]]]] ([[抹消]]) に対する[[略号]]を規定する。[[文字]]の[[名前]]の[[表記]]には、[[ラテン大文字]] ([CODE(char)[A]]
〜[CODE(char)[Z]]), [[スペース]]及び[[ハイフン]]だけを使用する。[[略号]]には, [[ラテン大文字]]だけを使用する。[[図形文字]]を示す
ために付けられた[[名前]]は, [[文字]]の慣習的な意味を反映するようにしている。ただし, [[漢字]]の名前は, [CODE(charname)[CJK][CJK UNIFIED IDEOGRAPH-XXXX]]
[CODE(charname)@en[UNIFIED IDEOGRAPH-XXXX][CJK UNIFIED IDEOGRAPH-XXXX]] と表す。ここで, [CODE(charname)@en[XXXX]] は, [B[[[JIS X 0221]]]] の[[16進表記]]の[[2オクテット符号化][2オクテット符号化表現]]
[[表現][2オクテット符号化表現]]とする。
>
[B[備考]] この規格の漢字の区点位置の解釈 ([B[6.6]] 参照) は, [B[[[JIS X 0221]]]] のそれと必ずしも同一ではない。
> 
[B[参考]] [B[[[JIS X 0211]]]] で規定される[[制御機能]]の[[略号]]には, [[ラテン大文字]]及び[[数字]]だけを使用している。
>
この規格は, [[図形文字]]の意味及び用途を定義しないし, 制限もしない。

附属書6

>
[B[e)]] [B[CJK]] [[文字の名前]] (本体[B[5.3]]参照)。ただし, 先頭の [CODE(charname)@en[CJK UNIFIED IDEOGRAPH-]] は省略して示した。

]FIG]


[FIG(quote)[ [68] [[JIS X 0213:2000]]


>
[B[5.3 名前]] この[[規格]]では, 規定するすべての[[文字]]に対して[[名前]]を割り当てる。さらに, [[文字]] [CODE(charname)@en[[[SPACE]]]]([[ス][スペース]]
[[ペース][スペース]]) 及び[[文字]] [CODE(charname)@en[[[DELETE]]]] ([[抹消]]) に対する[[略号]]を規定する。[[文字の名前]]の[[表記]]には、[[ラテン大文字]] ([CODE(char)[A]]
〜[CODE(char)[Z]]), [[スペース]]及び[[ハイフン]]だけを使用する。[[略号]]には, [[ラテン大文字]]だけを使用する。[[図形文字]]を示す
ために付けられた[[名前]]は, [[文字]]の慣習的な意味を反映するようにしている。ただし, [[漢字]]の名前は, [CODE(charname)[CJK][CJK UNIFIED IDEOGRAPH-XXXX]]
[CODE(charname)@en[UNIFIED IDEOGRAPH-XXXX][CJK UNIFIED IDEOGRAPH-XXXX]] 又は [CODE(charname)@en[CJK COMPATIBILITY IDEOGRAPH-XXXX]] と表す。
>
[BOX(indent)[
[B[備考1.]] XXXX は, [B[[[JIS X 0221]]]] の[[16進表記]]の[[2オクテット符号化表現]]とする。ただし, この規格には,
[B[JIS X 0221]] に含まれていない文字も含まれている。これらの文字の名前及び2オクテット符号
化表現は, [NAME] 及び (XXXX) と括弧でくくって表し, 参考とする。

[B[2.]] この規格における文字の解釈は, [B[[[JIS X 0221]]]] のそれと必ずしも同一ではない。この規格は,
[[図形文字]]の意味及び用途を定義しないし, 制限もしない。
]BOX]

]FIG]


[1] 

>
:文字の名前:
この規格群は、すべての[[文字]]に意的な[[名前]]を付ける。
命名の基準は、次のいずれかとする。
- a) 文字の慣例的な意味を示す。
- b) 対応する[[図形記号]]の形を表す。
- c) 中国、日本及び韓国 ([[CJK]]) [[統合漢字]]については、
27. に示す規則に従う。
> a) 及び b) の場合に、文字の名前を構成するために用いる指針を附属書 K (参考) に示す。
([[JIS X 0221]]‐1:2001 6.4)

[3]

> この規格群で規定する[[図形文字]]は、その名前で一意に識別する。名前が異なっていても、[[図形文字]]を可視化した[[図形記号]]が常に異なるわけではない。類似の図形記号をもつ図形文字の霊としては、 [CODE(char)[[[LATIN CAPITAL LETTER A]]]]、
[CODE(char)[[[GREEK CAPITAL LETTER ALPHA]]]] 及び
[CODE(char)[[[CYRILLIC CAPITAL LETTER A]]]] がある。
(JIS X 0221‐1:2001 17. より)

[55] [[ISO/IEC 2022]] ([[図形文字集合の一意な符号化]]参照):
>このような[[文字]]は、二つの[[集合]]を定義する仕様又は [[ISO符号化文字集合の国際登録簿]]で同じ[[名前]]をもつ場合、 同じ[[文字]]とみなされる。

[92] 
[[ISO/IEC 6937:2001]]
は[[非spacing文字]]についてのみ、
[[ISO/IEC 10646]]
とは別系統の名前を与えていました。
[SEE[ [[非spacing文字]] ]]

[164] 
[CITE[ConScript Unicode Character Names]], [TIME[2025-06-30T04:22:08.000Z]], [TIME[1997-06-05T19:17:42.304Z]] <https://web.archive.org/web/19970605185120/http://www.ccil.org/~cowan/csur/naming.html>


[157] 
[CITE@ja[ページ) - n2466-Resolutions.pdf]], [TIME[2024-07-21T18:18:34.000Z]], [TIME[2024-07-28T14:49:08.166Z]] <https://www.unicode.org/irg/sc2/n2466-Resolutions.pdf#page=2>


* メモ

[2] >>1
で、 CJK 統合漢字や CJK 互換漢字の名前のどの辺が[Q[意的な名前]]なのでしょう。



[7]
>>6 [[JIS X 0201]] 自体で定義されている[[文字]]が使われているのだと仮定すると、
[CODE(jcharname)[[[スペース]]]]は [CODE(charname)@en[[[SPACE]]]]、
[CODE(jcharname)[[[ハイフン]]]]は [CODE(charname)@en[[[HYPHEN-MINUS]]]]
に対応します。

[94] [CITE@ja[mashabowさんはTwitterを使っています 「Unicodeでは制御文字はcharacter nameなしなので、ASCIIの制御文字Bell (0x07) に対応するU+0007は文字名無しだった。で、ベルの絵文字U+1F514にそのままBELLって名前をつけちゃった。→ASCIIの文字名も使っていたPerlさん困惑」 / Twitter]]
([TIME[2021-12-09T04:47:22.000Z]], [TIME[2021-12-09T05:29:23.190Z]])
<https://twitter.com/mashabow/status/206062205161050112>

[95] [CITE@en[perl5180delta - what is new for perl v5.18.0 - Perldoc Browser]]
([TIME[2021-12-09T05:31:06.000Z]])
<https://perldoc.perl.org/perl5180delta#%5CN%7BBELL%7D-now-refers-to-U+1F514-instead-of-U+0007>

[126] [CITE[00000001.PDF - 070.pdf]], [TIME[2022-11-02T03:16:09.000Z]], [TIME[2022-12-10T04:35:53.487Z]] <https://itscj.ipsj.or.jp/ir/070.pdf>

[127] >>126 これは [[ISO 6937]] ベースの[[文字集合]]であるにも関わらず、
名前は [[ISO 6937]] 方式ではなく [[RA]] ([[ISOREG]]) 方式に従った、
と書かれています。
[[ISO-IR]] は[[94集合]]については一応緩やかな基準を持って [[RA]] 
側で一貫した名前を与えていたようですが、
それは他の [[ISO]] [[国際標準]]とすら統一されていなかったのです。
というのが [[ISO/IEC 10646]] 以前の状況でした。






