Mozilla から文字列を Emacs のテキストファイルにコピー&ペーストすると文字化けすることがある

たぶん GNOME2 というか GTK+2 が Windows の「クリップボード」に相当する所にテキストを保存する際、文字コードを UTF-8 に変換していて、それを Emacs 上で EUC-JP や Shift_JIS に変換する時に変換できてないんじゃないか。

文字列に「—」(ダッシュ)が含まれていて、Web ページが EUC-JP または Shift_JIS で、Emacs で開いているテキストファイルが euc-jp-unix または sjis-dos の場合は起きるのを確認した。

テキストファイルを utf8-unix にすると解決したが、Mule-UCS が必要となる。Mule-UCS を入れると Emacs の起動が少し遅くなるので、こういうコピー&ペースト作業は gedit でやることにした。gedit ならデフォルトで UTF-8 のテキストファイルを自動認識する。

gedit で euc-jp-unix のテキストファイルに Mozilla から文字列をコピー&ペーストしようとすると、文字列に「—」(ダッシュ)が含まれている場合は次のようなエラーメッセージが出る。

ファイル"/home/hoge/file.txt"を保存できませんでした。
変換する入力に無効なバイトの並びがあります

gedit で sjis-dos のファイルを見ることはできるが、修正して上書き保存すると改行コードがおかしくなる。ということでテキストファイルの文字コードは utf8-unix、エディタは gedit なら問題は起きない。

OS: Vine Linux 3.1 (x86)
Mozilla: mozilla-1.7.3-0vl1

この Mozilla は libgdk-x11-2.0.so.0, libgdk_pixbuf-2.0.so.0, libgtk-x11-2.0.so.0 を必要とし、これらは gtk2-2.4.13-0vl1 に含まれている。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中