7

たとえば、次の配置の代わりに:

std::cout << "Hello " << "Hello "
  << "world ";

<<次のように、演算子を左揃えにします。

std::cout << "Hello " << " Hello "
          << "world ";

デフォルトでは、Vim は最初のものを選択します。新しい行のインデントを 1 レベル増やすだけのようです。

それで、デフォルトで2番目の配置を取得する方法はありますか?

PS私はすでにAlignプラグインを試しましたが、次のようにテーブル内の領域を整列させます:

std::cout << "Hello World" << "Hello "
          << "World"       << "World Hello".

これはまばらすぎると思います。

4

2 に答える 2

4

私はTabularを使用していますが、これは私にとってはうまくいきます

:Tabularize /^[^<<]\S*


出力:

std::cout << "Hello World" << "Hello "
          << "world " << "World Hello";

説明

^<<開始から最初の までが続く<<場合、一致は正確に最初の から開始され<<ます。

于 2011-09-15T05:32:05.470 に答える
1

Alignプラグインを使用して、選択したテキスト行を希望どおりに整列させるコマンドは:<,>Align! l: <<. 最初の引数は、最初のフィールドを左揃えにし、残りの行を 1 つのフィールドとして扱うように指示する AlignCtrl コマンドです。2 番目の引数はセパレータです。Align マニュアルでは、使用可能なすべての引数と定義済みのマッピングについて説明しています。

于 2011-09-15T05:58:53.103 に答える