Japanese」タグアーカイブ

字種・字体・字形・書体

字種

同じ読み(音訓)、同じ意味をもつ漢字の集まり。

字体

現代日本では、正字体/通用字体、旧字体/新字体と複数の字体ももつ字種がある。中国語圏では繁体字、簡体字など起源が同じで分化した複数の字体が存在する。

1つの字種で2つの字体を持つ例

  • 旧字体 :
  • 新字体 :

2つの『字体』は異なる。しかし『字種』は同じ(ひとつ)である。

括弧や句読点、同の字点(々)など読みを持たない記号を含めた広い概念として『グリフ (Glyph) 』がある。Unicodeは、このグリフに対してユニークなコードを割り当てている。そこで Unicode では(基本的には)1つの字種であっても、正字体、通用体、旧字体、新字体、繁体字、簡体字と異なる字体であれば各々異なる文字コードを割り当てている。

一方で JIS X 0208 には「漢字の字体の包摂」という考え方がある。複数の字体(≒書き方の違い)を区別せずに同じ字種とする。たとえば、『高(口高)』と『髙(はしご高)』を25区66点に包摂している(1つの文字コードを割り当てている)。

字形

ハネやトメ、ハライなどの書き方の違い、活字(印刷文字)のデザイン上の違いをもつ文字の形の総称。

参考リンク

内部リンク

ANK

アンク。日本工業規格において "JIS X 0201" として制定されている 1バイト文字 の総称。ASCII文字コードに、いわゆる『半角カナ』,『1バイトカナ』を加えた文字コード規格。現在では Shift JIS または EUC-JP の一部として用いられることが多い。

アルファベット(Alphabet)、数字(Numeric)、記号、およびカナ(Kana)が含まれていることから頭文字をとって ANK と呼ばれている。

 

Unicode (UTF-8) の半角カナ並び順

 

リンク

[git] diffの文字コード対応

システムと異なる文字コード(たとえばShift-JIS)でエンコードされたファイルのdiffにおける文字化けを解消する

1. 拡張子で文字コード変換を適用するファイルを指定

.gitattributesに属性を記述する

1.1. 属性指定の例

続きを読む

macOSにおけるカタカナファイル名の文字化け

Unicodeは濁音(『が』や『ば』など)や半濁音(『パ』や『ピ』)を1文字として扱います。一方で濁点『 ゙  』(U+3099) と半濁点『 ゚  』 (U+309A) も定義しています。この結果、Unicodeでは『が』を『か』+ 『 ゙  』の 合成文字 として表現することもできます。

 

  • WindowsやLinuxのファイルシステムは濁音や半濁音を1文字として扱う NFC (Normalization Form Canonical Compression) を採用しています。
  • MacOSのファイルシステム(HFS+)は本体文字と濁点・半濁点を分離して扱う NFD (Normalization Form Canonical Decompression) を採用しています。俗にいう uft-8-mac です。
  •  

    subversionやscpなど NFC と NFD の差異を考慮していないツールを使うと、Windowsで保存した濁音/半濁音を含むファイル名が文字化けします。場合によってはコマンドが失敗します。

    Mac OS XのSubversionの濁音と半濁音の扱いが不適切

文字コード一括変換

出力形式(Output Encoding)

  • -w : UTF-8
  • -w8 : UTF-8
  • -s : Shift_JIS
  • -e : EUC
  • -j : JIS(ISO-2022-JP)

出力改行コード

  • -Lu : UNIX形式(LF)に変換
  • -Lw : Win形式(CRLF)に変換
  • -Lm : 旧Mac形式(CR)に変換

検索対象のタイプ

  • -type f : ファイル
  • -type d : ディレクトリ(フォルダ)

複数ファイルの区切り文字

  • -print0 : [findコマンド] NUL文字(0x00)
  • -0 : [xargコマンド] NUL文字(0x00)

関連リンク

iconvコマンド

変換元文字コード指定

-f ENCODING, --from-code=ENCODING

 

変換先文字コード指定

-t ENCODING, --to-code=ENCODING

 

文字コード

SJIS Shift JIS
CP932 Microsoft拡張 Shift JIS
X0208 JIS
EUCJP EUC

 

サポート文字コードリスト一覧

-l, --list

 

CP932

Microsoft Code Page 932
Microsoft社が Shift-JIS (JIS X 0213:2004) を独自拡張した文字コード

 

UTF-8-MAC, UTF8-MAC

NFD (Normalization Form Canonical Decompression)

macOSにおけるカタカナファイル名の文字化け

Android Studio SJIS文字化け解消

Android StudioでShift-JISのソースコードが文字化けするのを解消する

確認バージョン
Android Studio 1.3.2 for MacOS X

Android Studio => Preferences…

Android Studio Encoding Settings

Android Studio を再起動する。


.idea/encodings.xml