« # 秀丸エディタの使い始め - 短期講座第2回 - | トップページ | # エンコードの基本 - 短期講座第4回 - »

2014.06.12

# 改行と論理行について - 短期講座第3回 -

前回のカスタマイズで、行番号の付き方が大きく変わりました。


これは[ファイル別の設定]→[体裁]→[詳細]→[行番号の計算方法]を、

[ワープロ的]

から

[エディタ的]

に変更したためです。

この設定変更に、実は「改行」というものの大切な考え方のヒントがあります。テキストファイルを扱うときは、改行のことをしっかり意識する必要があります。

もう一度、改行番号のオプションダイアログを見てみます。

1406124_2

[ワープロ的]の注として「折り返しも1行とする」、[エディタ的]の注として「改行だけを数える」と書いてあります。


この注の前提として「折り返し」と「改行」は違うということを、まず理解する必要があります。

改行などの記号も表示されるように設定を変えたはずなので、「改行」記号も見えていますね。↓ です。

  私に親しい ~ 聞かせた。↓

  「科学者になるには ~ 少数である。↓

  この一件相反する ~ もちろんである。↓

こんな風に「改行」が入っていて、その「改行」の数に対応して行番号が付いています。このように(明示的に)「改行」した1行のことを「論理行」と呼ぶこともあります。


一方、初期設定の「ワープロ的」というのは、(改行がなくても)右端で「折り返し」たら新しい行としてカウントします。ということは、1行の長さが変われば行番号もどんどん変わっていくということになります。1ページに何行印刷できるかしら... みたいなことを見るにはいいかもしれませんが、ふつうにテキストファイルを扱う場合、このような行の数え方は、ほとんど何の意味もありません。


それで、まず最初のカスタマイズで[エディタ的]に設定を変えたわけです。これからも、秀丸エディタで「改行」と言えばすなわち論理改行のことだと考えてください。

side TRADOSに先日アップしたこの記事、

side TRADOS: Microsoft用語集(tbx)をMultiTerm化

のなかでも「論理行」という言葉を使っています。

さて、「改行」には実は2種類があり、PCの環境によって使われ方が違うということも、テキストを扱うときは知っておいてください。

CR = Carriage Return(キャリッジリターン、復帰)

LF = Line Feed(ラインフィード、行送り)


そして、PC世界では、どういうわけか伝統的に

UNIX、Linux 系 …… LF

Mac OS …… CR

Windows …… CR + LF

ということになっています。


そのため、ファイルの出所によっては、同じようにWindows上で開いても、そして見かけではまったく変わらなくても、改行の種類が違っていることがあります。


秀丸エディタでテキストファイルを開いたとき、改行の種類をすぐに判別できる方法があります。

[その他]→[動作環境]を開いたら、まず[上級者向け設定]のチェックボックスをオンにします。

1406128

次に、[設定の対象]→[ウィンドウ]→[高度なウィンドウ]を選択し、[エンコードの種類]を下の図のようなオプションに設定します。

1406129

こうすると、タイトルバーでファイル名の隣にファイルの文字コードと改行の種類が表示されるようになります。

14061210

以下は余談。

"Carriage Return"と"Line Feed"っていうのは、タイプライターを知ってる世代だとピンとくる用語ですよねー。

タイプライターの動きをまったく知らない人は、YouTubeでタイプライターの動きを見てみてください。


キャリッジというのは、タイプライターを打つと左のほうへ移動していくシリンダー状のパーツです。このキャリッジに紙を巻き付けてあるので、印字位置が左端から右端まで進んでいきます。行末まで進んだ時点で、このキャリッジはいちばん左まで移動しています。次の行に進むときは、したがって、このキャリッジを初期位置に戻す必要があります。

これが、「キャリッジ」の「リターン」(復帰)です。

ところが、キャリッジがリターンしただけでは、厳密にいうと水平移動するだけで、行は進みません。そこで登場するのが「ライン」を「フィード」すること、すなわち「行送り」という垂直方向の移動です。


つまり、タイプライター上の機構を考えると、まず

「キャリッジをリターン」= CR

してから

「ラインをフィード」= LF

するという2段階の動作が「改行」だったということになります。その伝統を、いわば律儀に守っているのがWindowsプラットフォームという感じでしょうか。


「ばかじゃん? キャリッジリターン(CR)したら、同じ行に重ねて打つわけないんだから行送り(LF)だって自動的にやるに決まってるだろ」という発想でCRだけにしたのがMac OS。

「行送り(LF)したら、そのままに位置じゃ右端なんだから左端にリターンする(CR)の当たり前だわい」という発想でLFだけにしたのがUNIX系。

……というわけではないのかもしれませんが、まあそんな感じです。

12:39 午後 翻訳者のPCスキル |

はてなブックマークに追加

« # 秀丸エディタの使い始め - 短期講座第2回 - | トップページ | # エンコードの基本 - 短期講座第4回 - »

コメント

すばらしい余談をありがとうございます。

タイプライターが機械だったころ^^;。マシンの知識がないと仕事にならなかった時代ということなのでしょうね。

キャリッジがリターンした瞬間の軽い衝撃、ラインフィードの幅を選択して、カチカチっと送る手触り、いろいろよみがえってきます。(あの段階で正確なタイピングをきちっと身につけておかなかったことが、今でもミスタッチだらけであるというのと関係していそうです。)

投稿: Sakino | 2014/06/14 12:12:28

> あの段階で正確なタイピングをきちっと身につけておかなかった

手動タイプライターの頃は、打ち間違えを修正するにもけっこうお金がかかった(修正リボンをはさんで打つ)ので、それなりに慎重だったかも... でも、その後、かな入力ほ覚えた段階で我流だった性でミスタッチからは逃れられていないという...

投稿: baldhatter | 2014/07/07 14:07:29

この記事へのコメントは終了しました。