Atom で文字コードを UTF-8 に変更する方法
Atom で文字コードを UTF-8 に変更する方法
How to change character code to UTF-8 from another code such as Shift_JIS with the Atom.
21世紀のハック可能なエディタ Atom で文字コード変換について検索すると convert-to-utf8
を利用する、と教えられます。
間違っていないのですが、 同時に auto-encoding
パッケージを利用しているとうまく変換できないのでその辺りの事を書いておきます。
はじめに
MS-Windowsユーザからテキストファイルを頂くと、未だに
Content-Type: text/plin; charset="Shift_JIS"
となっています。このままでも良いのですが、Shift_JIS
には致命的な弱点、文字コードの2バイト目に各種のプログラミング言語の制御コードに良く使われる ¥
(0x5C)を利用した漢字が割当てられています。このため、例えば正規表現の検索などの処理を行う際に問題となります。
Shift_JIS
コードには、他にも問題となるコードを多く含んでいます。詳しく知りたい方は、
Shift_JISのダメ文字 などを参考にしてください。
Atom エディタを利用して
- 最新の MS-Windows から頂いた
Shft_JIS
コードで記述されたファイル - ちょっと前の UNiX系から頂いた
EUC-JP
コードで記述されたファイル
などを UTF-8
コードに変換する方法です。
準備するもの
- Atom エディタ
- UTF-8 に変換する Shift_JIS コードなどのテキストファイル
事前準備
変換には convert-to-utf8
パッケージを利用するのでインストールします。
インストール方法は、2種類
- Settings を利用する方法
- apm を利用する方法
apm
を利用する場合は、コマンドラインで以下を実行します。
$ apm install convert-to-utf8
auto-encoding
の無効化
auto-encoding
は、ファイルを開いた際に自動的に Shift_JIS や EUC-JP などの文字コードを判別し、文字化けから解放してくれます。文字コードを変換する必要がなければ、とても便利な拡張モジュールです。
ところが、文字コードを自動判別する auto-encoding
パッケージを利用していると、変換がうまく機能しないので、無効化もしくは削除します。
無効化は
$ apm disable auto-encoding
削除は
$ apm remove auto-encoding
有効化されているパッケージは、次のコマンドで確認できます。
$ apm list --installed --enabled
UTF-8 変換の手順
手順は、以下の通りです。
- ファイルを開く
- 文字コードを
UTF-8
に変換する - ファイルを保存する
少し詳しく説明します。
ファイルを開く
変換するファイルを開きます。
auto-encoding
を利用していないので Shift_JIS
コード等のファイルを開くと、 文字化け 状態となります。
文字コードを UTF-8
に変換する
’Packages’ メニューから 'ConvertToUTF8' を選び、ファイルの文字コードを選択します。
選択した文字コードが正しければ、文字化け が解消され、内容が読める状態になります。
指定した文字コードが間違っていたら、文字化け は解消されません。
このような時は、慌てずに Undo
(Edit -> Undo ⌘Z)しましょう。
ファイルを保存する
正しく文字コードが UTF-8
に変換されたら、まずは保存し、作業を続けましょう。
変換が必要ない場合
文字コードを変換せずに、そのまま作業を続ける場合は、正しいエンコーディングを指定する必要があります。
'Edit' メニューから 'Select Encoding'(⌃⇧U)を選び、リストの中から文字コードを選択してください。
おまけ
実は、nkf
を使えば、双方向変換、行末の改行コードの変換まで一発で行えます。
convert-to-utf8
の利点は、ファイル名を変えずに編集中のファイルの文字コードを変更できる事です。
UTF-8 を Shift_JIS に変換する
わがままな MS-Windows の利用者にファイルを差し上げると、
「読めない」とか「文字が化ける」
と言われる場合は、
$ file convert-character-code.md
convert-character-code.md: UTF-8 Unicode text
なファイルを文字コードを Shift_JIS
に変換し、
行末の改行コードを LF
から CRLF
に変更して渡し直す必要があります。
残念ながら convert-to-utf8
は、逆方向の変換が出来ません。
このような場合は nkf
(Network Kanji Filter) を使います。
$ nkf -WsOLw convert-character-code.md convert-character-code_sjis.md
オプションの意味は、
- UTF-8 を Shift_JIS に変換
Ws
- 出力ファイル名を指定
O
- 行末の改行コードを CRLF に変換
Lw
nkf
を使えば、Shift_JIS から UTF-8 への変換も出来ます。詳しくは、
$ nkf --help
または
$ man nkf
で確認してください。
nkf
は標準コマンドでは無いので macOS
ユーザならば、Homebrew を利用してインストールできます。
$ brew install nkf
Author And Source
この問題について(Atom で文字コードを UTF-8 に変更する方法), 我々は、より多くの情報をここで見つけました https://qiita.com/mitsuhisaT/items/81c4bed57492b9cd341d著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .