特定のファイルを Visual Studio Code で開いたときに「このドキュメントには、数多くの非基本 ASCII Unicode 文字が含まれています」というサジェッションが表示される。
対象バージョン : Visual Studio Code 1.68 以降
特定のファイルを Visual Studio Code で開いたときに「このドキュメントには、数多くの非基本 ASCII Unicode 文字が含まれています」というサジェッションが表示される。
対象バージョン : Visual Studio Code 1.68 以降
同じ読み(音訓)、同じ意味をもつ漢字の集まり。
現代日本では、正字体/通用字体、旧字体/新字体と複数の字体ももつ字種がある。中国語圏では繁体字、簡体字など起源が同じで分化した複数の字体が存在する。
2つの『字体』は異なる。しかし『字種』は同じ(ひとつ)である。
括弧や句読点、同の字点(々)など読みを持たない記号を含めた広い概念として『グリフ (Glyph) 』がある。Unicodeは、このグリフに対してユニークなコードを割り当てている。そこで Unicode では(基本的には)1つの字種であっても、正字体、通用体、旧字体、新字体、繁体字、簡体字と異なる字体であれば各々異なる文字コードを割り当てている。
一方で JIS X 0208 には「漢字の字体の包摂」という考え方がある。複数の字体(≒書き方の違い)を区別せずに同じ字種とする。たとえば、『高(口高)』と『髙(はしご高)』を25区66点に包摂している(1つの文字コードを割り当てている)。
ハネやトメ、ハライなどの書き方の違い、活字(印刷文字)のデザイン上の違いをもつ文字の形の総称。
アンク。日本工業規格において "JIS X 0201" として制定されている 1バイト文字 の総称。ASCII文字コードに、いわゆる『半角カナ』,『1バイトカナ』を加えた文字コード規格。現在では Shift JIS または EUC-JP の一部として用いられることが多い。
アルファベット(Alphabet)、数字(Numeric)、記号、およびカナ(Kana)が含まれていることから頭文字をとって ANK と呼ばれている。
1 |
ヲァィゥェォャュョッーアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘノマミムメモヤユヨラリルレヒロワン゙゚ |
システムと異なる文字コード(たとえばShift-JIS)でエンコードされたファイルのdiffにおける文字化けを解消する
.gitattributes
に属性を記述する
1 2 |
*.c diff=sjis *.h diff=sjis |
Unicodeは濁音(『が』や『ば』など)や半濁音(『パ』や『ピ』)を1文字として扱います。一方で濁点『 ゙ 』(U+3099) と半濁点『 ゚ 』 (U+309A) も定義しています。この結果、Unicodeでは『が』を『か』+ 『 ゙ 』の 合成文字 として表現することもできます。
subversionやscpなど NFC と NFD の差異を考慮していないツールを使うと、Windowsで保存した濁音/半濁音を含むファイル名が文字化けします。場合によってはコマンドが失敗します。
CLI(コマンドライン・インターフェース)で、『URLエンコード(パーセントエンコーディング, percent-encoding)/ デコード』する方法
続きを読む
1 2 |
$ find . -type f -name '*.c' -print0 | xargs -0 nkf --overwrite -w -Lu |
-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)-f ENCODING, --from-code=ENCODING
-t ENCODING, --to-code=ENCODING
SJIS | Shift JIS |
CP932 | Microsoft拡張 Shift JIS |
X0208 | JIS |
EUCJP | EUC |
-l, --list
1 2 3 4 5 6 7 8 9 10 11 |
ANSI_X3.4-1968 ANSI_X3.4-1986 ASCII CP367 IBM367 ISO-IR-6 ISO646-US ISO_646.IRV:1991 US US-ASCII CSASCII UTF-8 UTF8 UTF-8-MAC UTF8-MAC *** 中略 *** UTF-16 UTF-16BE UTF-16LE UTF-32 UTF-32BE UTF-32LE *** 後略 *** |
Microsoft Code Page 932
Microsoft社が Shift-JIS (JIS X 0213:2004) を独自拡張した文字コード
NFD (Normalization Form Canonical Decompression)
Android StudioでShift-JISのソースコードが文字化けするのを解消する
Android Studio => Preferences…
Android Studio を再起動する。
1 2 3 4 5 6 |
<?xml version="1.0" encoding="UTF-8"?> <project version="4"> <component name="Encoding"> <file url="PROJECT" charset="x-SJIS_0213" /> </component> </project> |