2018/04/16

MacやLinuxで作られたテキストファイルをwindows のメモ帳で開くと多くの場合改行されません。
これでは様々な面で支障をきたします。
今回は何故そんなことが起きるのか?そしてどうすれば良いのかをメモしておきます。
sponsored link
1.何故?
理由は非常に簡単で「改行コード」というものがOSによって異なっているからです。
みなさんがEnterを押して改行した時、テキストとしては表示されない「改行コード」が入力されています。これはバイナリ形式で開くことで確認することができます。
その改行コードには三種類あります。
Windows | CR+LF(0DH+0AH) |
Mac/Linux/Unix | LF(0AH) |
Mac (MacOS9以前) | CR(0DH) |
といった感じでwindowsだけは特殊な改行コードを使用しているためmacやlinuxで作成したテキストファイルはwindowsでは改行を表示できません。
ちなみに、改行コードはバイナリ形式で開かない限り表示されません。Windowsで作成されたテキストファイルは両方の改行コードを含んでおり、Macでも改行されます。
いらない方の改行コードは無視されます。
2.対処法
基本的にはテキストエディタを導入するしかありません。方法は2つ、windowsで表示する人がテキストエディタを導入するか、mac/linuxで作る人がテキストエディタを導入して、改行コードを変更するかです。
windowsでメモ帳を使わない
この世界には無数のテキストエディタが存在します。 それらはWindowsのメモ帳よりも高性能であることが多く、多くの場合改行コードもしっかりと読み取ってくれるでしょう。
私は基本的にWindowsを使わないので、MacにもWindowsにも対応しているテキストエディタを幾つか紹介しておきます。
Brackets
http://brackets.io/
VisualStudio
https://www.microsoft.com/ja-jp/dev/default.aspx
macで改行コードを変更する
もう一つの方法がMacで保存する際に改行コードをWindows向けに設定する方法です。
ただ、これをするためにもテキストエディタが必須になります。しかも、改行コードを変更して保存できるエディタが必要です。
普段私が使っているものを紹介しておきます。
mi
https://www.mimikaki.net/
ここで、変更できます。
最後に
MacとWindowsの共存はこれで保たれそうですね。受け取る側か送る側かが何かしらのアクションを取りましょう。