文書を自動改行する最良の方法は何ですかvim
?
視覚的にだけでなく、入力改行文字まで各行を80文字に改行したいと思います。
私はこれを使って動作させました。
:set wrap
:set linebreak
しかし、戻って前の行にテキストを挿入すると、残りの段落は調整されません。オーバーフローテキストを取得して改行文字に入れますが、次の行は空白を埋めるために上に移動しません。
したがって、前の行を編集すると、私の段落は次のように見えます。
A line that is 80 characters long
short line
A line that is 80 characters lone
私はこれが次のようになりたい:
A line that is 80 characters long
short line A line that is 80
characters long
答え1
wrap
linebreak
テキスト表示を制御すると、実際にファイルに改行文字が挿入されないことがわかります。 vimが入力したときにファイルに新しい行を挿入するには、textwidth
希望の幅(80など)を設定します。
より多くのテキストを挿入しても、後続の行は自動的にリフローされません。私は通常この作業を手動で実行しますgq}
が、set formatoptions+=a
vimに自動的に実行するように指示することを発見しました。バラより助けてくださいauto-format
。
答え2
段落gq}
をtextwidth
。まずする必要がありますset tw=80
。多くのディストリビューションはそれをQにマップします。だからあなたもそれを使用することができますQ}
。
答え3
私はそれをpar
書式設定に使用し、たとえば、電子メールの文脈で単語の改行に既存のプレフィックスを使用することもできます。