セマンティック行の折り返し

翻訳者から:







少し前に、 「コマンドラインアート」というタイトルの記事の翻訳がHabré 掲載されました。 とりわけ、この記事ではvimをマスターすることを推奨しています。 皮肉なことに、Githubに配置された記事のソースコードは、1つの段落に正確に1行含まれていたため、このエディターによる編集にはまったく不適切であることが判明しました。







その後、著者に当惑を表明し、80文字のテキストを揃えるように依頼しました。 しかし、コメントでの短い議論の後、セマンティック原理に関する文学テキストのソースコードのフォーマットの記述へのリンクを与えました。 この原則の根底にある考え方は一般に非常に単純ですが、その深さに感銘を受けました。遅かれ早かれ、他の人と共有したいと思います。







記事内のすべてのリンクが機能しているわけではないことを警告したいのですが、そのままにしておくことにしました。







だから、記事。







セマンティック行の折り返し







PyConの一環として開催される毎年恒例のSphinx教育プログラムで私は定期的アドバイスを提供しています。 感謝のリスナーは、私自身がこの知識を得た場所を尋ねました。 私は考古学研究を実施しましたが、今ではこの質問に対する答えがあります。 「セマンティックな改行」についてお話ししましょう。それから、この知識のソースを公開します。これは、たった数か月で世界に明らかになりました。







講義では、質問をします-Sphinxファイルはエンドユーザーが読むことができると想定されていますか。 そうでない場合、リスナーはファイルを意味的にフォーマットできる「ソース」と見なすことをお勧めします。 同じ幅に収まるように各段落の行を混乱させる代わりに、2つの思考を区切る行のどこでも終了できます。







結果は素晴らしいかもしれません。







各文を新しい行で開始し、文自体を文に分割すると、テキストファイルの編集とバージョン管理システムへの保存がはるかに簡単になります。 テキストエディターは行の操作に非常に優れているため、すべての文が連続する行のブロックで表される場合、エディターは突然、ステートメントと思考をすばやく再配置するための非常に強力なツールであることがわかります。







さらに、バージョン管理システムはセマンティックな改行で喜ばれます。 段落の先頭にあるいくつかの単語を変更した後、バージョン管理システムがテキスト全体が変更されたと見なすようになったことがわかりましたか?







-   ,  ,   -  ,    -     -   ''.PP''  - . +   ,  ,   +  ,    +     +   ''.PP''  + .
      
      





各文と文を新しい行で開始すると、同じ段落でほとんど変更せずに同じ変更を行うことができます。







 -   , +   ,  ,     ,            ''.PP''   .
      
      





「セマンティック改行」と呼んでいますが、これは20年以上私の人生を楽にしてくれており、HTML、 TeXRST 、または由緒あるtroff



など、使用されるマークアップに関係なく、ボンネットの下のテキストファイルの配置を指示します。







このことをどうやって知りましたか?







長い間、私のソースはUNIXドキュメントを作成するためのツールキットガイドだと思っていました。 このツールキットは、強力なテキスト更新ツールをシステムに追加することで、Bell Labsのエンジニアの間でカルトになったオペレーティングシステムを販売するAT&Tの試みでした。 もちろんその試みは失敗しました-AT&Tマーケティングではすべてがひどいものであり、ゼロックスでは1970年代にPARCで沸騰したアイデアをどうするかわからなかったと言いますが、父はBell Labsで働き、自宅を持っていましたツールキットのドキュメントのコピー。 (インターネット上でコピーを見つけることができませんでした-多分、SCOを崩壊させた壊滅的な著作権戦争で利用可能なコピーはすべて破壊されましたか?)







しかし、徹底的な調査の結果、以前の情報源を一周し、私のインスピレーションの源泉がブライアンW.ケルニガンに他ならないことを知ってうれしく思いました!







彼は1974年10月29日にベル研究所74-1273-18の技術メモとして初心者向けUNIXを公​​開しました。 1978年に公開された有名な「初心者向けUNIX-第2版」よりもはるかにシンプルなオペレーティングシステムのバージョンについて説明しています。 長時間の検索の結果、上記のリンクが、 UNIX 6th Editionに特化したあまり知られていない日本のサイトに投稿された、1つのコピーを見つけました。 「ドキュメント作成のヒント」セクションで、カーニガンは次のような知恵を共有しています。







ドキュメント準備のヒント



ほとんどのドキュメントは、それらの作業が完了する前に、いくつかのバージョンを変更することができます(常に最初に見えるよりも多い)。 したがって、変更を容易にするために可能なすべてのことを行う必要があります。



まず、純粋に機械的なタイピングに従事している場合は、さらに編集しやすいように入力します。 各文を新しい行で開始します。 行を短くして、コンマやセミコロンなどの自然に適切な場所で行を終了し、場所ではありません。 ほとんどの人にとって、編集はフレーズの書き直し、文の追加、削除、および並べ替えで構成されているため、これらの手段により、その後の編集が簡単になります。



-ブライアンW.ケルニガン、1974


彼のアドバイスがどのように素晴らしく聞こえるかに注意してください-彼は「一度だけ」書かれたドキュメントに関する発明を現実的なアプローチに置き換えます-将来編集しやすいテキストを書きます。







私が最初にUNIXを研究し、これらすべての年を通してそれを実行したときに、私はこれを読んだに違いありません。 1974年にアドバイスが与えられたという事実は、もともと非常に限られたed



エディターでのテキスト編集を容易にすることを目的としていましたが、1970年にはまったく考えられなかったEmacsやVimや分散バージョン管理システムなどのマルチカラーフルスクリーンエディターの現代世界にも同様にうまく適用できます-x、Unixアプローチの威力について多くのことを述べています。







初期のUNIXドキュメント(Kerniganスターターガイドの第2版を含む)に興味がある場合は、 PDFファイルとしてtroff



マークアップ付きテキストファイルとしてオンラインで投稿され高貴なBell Labsの第7版マニュアルを参照してください。 注意してください-今日まで、最新のツールで表示できるtroff



ファイルから完成したドキュメントをコンパイルすることができます-1970年代の他のエディタからのフォーマットされたテキストでこのフォーカスを回しみてください!







翻訳者からのあとがき:







なぜ今、この翻訳を公開する準備ができているのですか? 一般的にすべてが簡単です。 Markdownフォーマットのサポートが最近Habréに登場しました。 Markダウンが2つのぶら下げスペースで終わっていない限り、Markdownがストリングをくっつけてはならないのに、なぜかHabrはストリングをくっつけないことが判明しました。







そして、お気に入りのエディターで記事を書いたり、お気に入りのバージョン管理システムに記事を保存したり、Habrにコピーアンドペーストしたりできないことがわかりました。 ハブラ! どう? なんで? 線をくっつけてください! わかりました、カーニガン自身がそれが正しいと言った!








All Articles