4

.gvimrcファイルに次の行があり、80文字で行を自動的に折り返します。

set textwidth=80 

また、C++コードのインデントを制御するために次の行があります。

set smartindent
set cindent

これはほとんどの場合うまく機能しますが、長い文字列を入力する場合には制限があります。自動インデントによって追加されたスペースまたはタブは、文字列の一部になります。たとえば、行の折り返しは現在次のことを行います。

puts("I have put `set textwidth=80` in my `.gvimrc` file to make gvim
        automatically wrap long strings like this one.");

一方、私はそれが次のことをしたいと思います:

puts("I have put `set textwidth=80` in my `.gvimrc` file to make gvim "
        "automatically wrap long strings like this one.");

これにより、一貫したコードインデントを維持しながら、出力に誤った外観のスペースがないことが保証されます。

これを行うようにgvimを構成する方法はありますか?私はインターネットとStackOverflowで検索しましたが、これがどのように/できるかを理解できませんでした。

4

2 に答える 2

1

そのための組み込みの'formatoptions'設定は(まだ)ありません、私は恐れています。ただし、これまでほとんど使用されていなかったものの、カスタムを使用しgqてテキストの書式設定と分割を'textwidth'カスタマイズできます。'formatexpr'

このような実装を試みたくない場合は、簡単な回避策を設定すること'colorcolumn'です。Enterその視覚的な補助は、テキストの幅に達する前に文字列を閉じて押すことを忘れないようにするのに役立ちます。

于 2012-11-20T15:57:47.907 に答える
-1

これを見てください。

formatoptionコマンドを使用して、問題をある程度解決できます。

于 2012-11-19T15:22:28.860 に答える