6

簡単なテキストドキュメントを印刷して、単語が単語の境界で折り返されるようにしたかったのです。私は両方を試しました

set linebreak

set wrap

しかし、印刷するときは、単語の真ん中の右側の列で途切れます。これは印刷できますか?

4

1 に答える 1

7

組み込みの改行なしでテキスト ファイルを作成しているため、各段落は単一の「行」ですが、改行と折り返しが設定されている場合でも、複数の行のように見えます)。これが、特定の場所で印刷が途切れる理由です。( http://www.vim.org/htmldoc/various.html#printingによると、印刷中にvimが改行/折り返しを尊重するようには見えません。)

これを避けるために、編集中にテキストを折り返す場合は、次のようにします。

set textwidth=70

70 桁目で折り返します。ファイルに長い行を含める場合 (たとえば、MS Word などにロードしたときに適切にフォーマットされるようにするため)、印刷する前にテキスト バージョンを前処理する必要があります。したがって、たとえば、次のことを試すことができます。

fmt file.txt | lpr

または、enscript がインストールされている場合は、以下を試すことができます。

enscript --word-wrap file.txt

印刷する。vim で実行することにより、既存のファイルをラップできます。

gggqG

つまり、'gg' はファイルの先頭に移動し、'gqG' は 'gq' を現在の位置 (つまり最初の行) から最後の行 ('G' に移動) に再フォーマットします。「gq」は、現在のテキスト幅の設定を尊重します。

于 2009-02-10T18:21:01.940 に答える