36

ソース文書に特定の行の長さで改行を挿入することによって (自分で、またはエディターによって自動的に) 「ハード ラッピング」を使用しますか? それとも、段落を 1 つの連続した行に記述し、エディターに「ソフト ラップ」をさせますか? ?

また、これにはどのエディタを使用していますか?

注:TeXソースコード(.texファイル、一般的な散文)で行を折り返す方法に興味があります.TeXが最終ドキュメントの行を折り返す方法ではありません。

4

10 に答える 10

45

私は最近、次の 2 つの理由から、センテンスごとのハード ラッピングに切り替えました (つまり、センテンス エンドの後の改行のみ、行とセンテンス間の 1 対 1 のマッピング)。

  • 段落全体のソフトラップにより、バージョン管理の差分でタイプミスを見つけることができなくなります。
  • ハードラップされた段落は、編集を開始するまで見栄えがよく、ハードラップされた段落をリフローすると、おそらく 1 つの単語の変更のために差分で変更された行全体が表示されます。

文ごとに折り返すだけで、次の 2 つの問題が解決されます。

  • 小さな変更は、差分で比較的簡単に見つけることができます。
  • テキストのリフローはなく、単一行の変更、挿入、または削除のみ。

最初に見たときは少し奇妙に見えますが、ソフト ラッピングとハード ラッピングの 2 つの問題に対処する唯一の妥協案です。

もちろん、共同で作業している場合は、他の人が使用しているものを使用するのが答えです。

于 2009-07-16T06:30:16.257 に答える
7

Emacs (AUCTeX 付き) を使用しています。段落を編集または作成した後、Mq を押してハードラップします。また、アイテムのインデントも処理し、コメント付きの段落の書式設定も行います。ソフト ラップは実際の改行文字と視覚的に見分けがつかないので好きではありませんが、動作が異なります。

于 2009-05-22T18:41:27.547 に答える
5

私は通常、LaTeX エディターに行をソフトラップさせます。その理由の一部は、私が最初に LaTeX を学んでいたときにかなりの空白を使用して悪い経験をしたことが原因の 1 つだと思います。また、テキストを編集しているときにギザギザの右余白が好きではないことが原因の 1 つもあると思います。ファイル。

于 2009-05-22T18:07:43.933 に答える
5

使用する os に応じて、winedt (windows) とkile (linux) をお勧めします。どちらもソフトラップで、ハードラップは必要ありません。(つまり、段落をソースに長い行として残します)Latexは出力の改行を整理し、ソースを読むときはエディターを使用します。

強制的な改行を使用する唯一の理由は、コード内のエラーを見つけやすくすることです (コンパイラは行番号で示します) が、主にテキストである場合、通常、エラーを見つけるのは難しくありません。とにかくエラーはまれです。

于 2009-05-22T18:18:53.527 に答える
3

通常、エディターに改行を挿入させます。つまり、改行のために「Enter」キーを押さないようにしていますが、エディターがソフトラップするときに、実際には改行文字が挿入されます。

これを実現するために vim を使用していますが、他のエディターにこの機能があるかどうか、またはどのように機能するかはわかりません。具体的には、wrapmargin機能を使用します。

私は通常、明確さと一貫性のために、コード行 (TeX またはその他) を n 文字の長さに保つようにしています。私は 80 文字を使用する傾向がありますが、それはあなた次第です。

その他の vim 関連の改行ドキュメント:

http://www.vim.org/htmldoc/usr_25.html

http://www.vim.org/htmldoc/options.html#%27textwidth%27

于 2009-05-22T18:02:56.173 に答える
2

私はソフト ラッピングを使用することを好みますが、1 つの実際的な理由でハード ラッピングを使用することになります。つまり、すべての共同作業者が同じことをします。そのため、私が誰かと一緒に記事を書いているとき、他の人がハードラップしている間に私がソフトラップするのは非常に苦痛です。2 番目の理由は、最近まで Emacs がハード ラッピングを適切に処理できたからです。私が現在使用している Emacs 23 はこれを変更しますが、誰もが 23 にアップグレードするまでには長い時間がかかります。

私が実際にハード ラッピングを使用する方法は、auto-fill-mode をオンにすることです。さらに、Mq は LaTeX-fill-paragraph にバインドされています (AucTeX モードでは - しかし、これが標準のバインディングなのか、私のバインディングの 1 つなのか覚えていません - 後者だと確信しています)。これら 2 つを組み合わせることで、TeX ソースを多かれ少なかれ適切にフォーマットされた状態に保つことができます。

ところで、新しい文は常に行の先頭から始めるという提案を聞いたことがあります。つまり、文末のピリオドの後にはハード リターンが続く必要があります。利点は、文への変更をローカライズしたままにできるため、バージョン管理システムとうまく連携することです。これは原則としては良い考えだと思いますが、Mq.

于 2009-06-05T21:09:54.060 に答える
2

私は TeX でハードラッピングを行う傾向がありますが、それは実際の効率向上よりも、テキストの書式設定への執着に根ざしています。ソフト ラッピングについて私が気に入らない点の 1 つは、(私の意見では明らかに) 意味的にランダムな場所にラップすることで読みにくくなる傾向があることです。

于 2009-05-22T17:57:11.970 に答える
2

Linux で Kile をハード ラッピング (Kile では静的ワード ラップと呼ばれます) で使用しています。私にはソフトラッピングの方がはるかに理にかなっているので、もし選べるなら、ハードラッピングよりもソフトラッピングを使用したいと思います.

于 2010-11-19T21:11:21.470 に答える
1

私は主にジョーで働いています。私はときどき自動的に Enter を押します。見栄えがよくない場合は、自動フォーマット (ctrl-k j) を押します。

Joe には autowrap モードがありますが、私は気にしません。

于 2009-05-31T16:34:05.440 に答える
1

自動改行をオフにして Auctex を使用し、手動で改行を挿入します。ドキュメントの編集の間に改行が発生する場所の変更を最小限に抑えたいため、自動書式設定は避けています。これにより、差分が乱雑になりません。

texに関係のない空白を気にしない、よりスマートな差分を使用する方が良いでしょうが、それが私が使用するツールです。

文ごとにハードラッピングするという Will の提案が気に入っています。前から思っていたのですが、癖が固いです。

于 2009-12-03T06:49:58.423 に答える