折り返しと改行、改行コードについて

折り返しと改行がごっちゃになっておられる方が多くいらっしゃいます。
かく言う私も初めて習った時には、先生が何をおっしゃっているのかわかりませんでした。 できるだけ簡単に書いてみます。

折り返しとは

テキストエディタやブラウザなどが、1行文字数がその表示幅を超えた時に、表示幅に応じて1行を超えてしまった部分を擬似的に複数行に表示することを折り返しと言います。

1行に全角50文字ある文章があるとします。

この文章を表示しているテキストエディタには1行に全角30文字しか表示できないとします。 31文字目からは横にスクロールしてもらうか、テキストエディタで疑似的に2行に表示するかのどちらかです。 擬似的に2行に表示している状態を折り返していると言います。
テキストエディタで擬似的に複数行に見せているだけなので、エディタの設定を変えたり、エディタそのものを変えると、折り返される位置は変わります。

上と全く同じ文章を、今度はエディタの設定を変えて全角40文字で折り返してみました。

変えたのはエディタの設定だけです。文章は変更していません。

並べてみると一目瞭然です。


折り返されている位置が変わっていることがわかります。

ちなみにこの記事もブラウザの幅に合わせて折り返されています。ブラウザの幅を変更してみてください。ブラウザの幅に合わせて、折り返される位置が自動で変わるはずです。

改行とは

改行と言う特殊文字を入力するイメージです。キーボード操作で言うと、【Enter】キーを押すことです。
改行が入っていると、必ず(とは言い切れませんが)その部分で改行されます。
改行を記号で表してくれるテキストエディタで見るとわかりやすいです。
上でも出てきた1行に全角50文字ある文章の30文字目で改行しました。

このテキストエディタでは、改行があることを記号で表示してくれます。


改行コードは3種類

改行コードには【\n】、【\r\n】、【\r】の3種類があります。 正確には改行コードだけではないのですが、まとめて改行コードとして説明します。

システム(OS)によって改行コードが異なります。
  • \n (LF):Unix系OS、現在のMacOS
  • \r\n (CR+LF):Windows系OS
  • \r (CR):古いMacOS
どの改行コードも同じ記号で表示するテキストエディタもあれば、全く記号を表示しないテキストエディタもありますし、3種類全てを表示仕分けてくれるテキストエディタもあります。
3種類全てを表示仕分けてくれるテキストエディタだと、
【\n】


【\r\n】


【\r】

のように一目で区別できます。区別がしにくくうっかり見落としてしまうことが多い改行コードを、しっかりと区別してくれるテキストエディタは貴重な存在です。

改行コードを普段はあまり意識することはないと思いますが、場合によってはレンタルサーバーの設定ができないことも出てくるので注意が必要です。
http通信やメールの送受信では【\r\n】を使うことが決められていますし、Unixコマンドは【\n】でないと動かない、など決められた改行コードを使わないといけない場面があるのです。

おそらくWindowsユーザーだったのでしょう、以前cron設定の説明で改行は【\n】と明記されているのに【\r\n】を使い、『動かない』と人のせいにしてブチギレしている人を見たことがあります。 仕様ですから、指定以外のコードを使うと動かない、あるいは意図した動きにならないのは当然です。

このように普通にキーボードから【Enter】キーを入力したのでは駄目なことがあるのです。 すでに入力されている改行コードの表示仕分けだけでなく、自分が入力する際にどの改行コードを使うのか指定できるテキストエディタの存在はとても大切です。

ネットビジネスでも改行コードを意識しないといけない場面に出くわすことがあります。
改行コードの表示・入力がしっかりしているテキストエディタを見つけておくと良いと思います。