vim でこのコードをすばやくフォーマットするにはどうすればよいですか?
高洛峰
高洛峰 2017-05-16 16:33:49
0
9
660
リーリー
高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全員に返信(9)
仅有的幸福

実は、これには元々の書き方が大きく関係しています。
#include<stdio.h>
int main(int argc, char *argv[])
{
for(i in f){
if(i ==9 ){
printf("1");
} else{
printf("2");
}
}
}
上記のように書くと、gg=G を使用した結果は素晴らしいものになります:
#include<stdio.h>
int main(int argc, char *argv[])
{

リーリー

}

完璧です。

いいねを押す +0
phpcn_u1582

リーリー

いいねを押す +0
左手右手慢动作

実際、私がよく使うのは、ビジュアル モードで、行の先頭に移動して、「Shift + 」を同時に押すことです。

いいねを押す +0
黄舟

!astyle --style=[希望の形式] -p -H --suffix=none %

astyleをインストールした場合

いいねを押す +0
PHPzhong

ステップ 1:ggvG ///< 先回到首行, 然后选择模式, 全选代码
第二步:= ///< = 通常、均等なレイアウトに使用されます。ここでは、複数の分割がある vim では、各分割のサイズを均等に調整することもできます。

いいねを押す +0
过去多啦不再A梦

gg
vG
=

いいねを押す +0
小葫芦

はい、10086 と tdblq は質問の括弧の要件に注意を払いませんでした。

先に注文してください

リーリー

1〜3行目は中括弧の問題を扱っています。

4行目は解決策です

リーリー

5~6行目は自動インデントされた全文です
注意 ^Mは直接入力するのではなく、「ctrl+v」+「Enter」で取得します。

しかし、これらはフォーマットの問題を解決しているだけです

質問者はコードを for ループから while を使ったコードに「フォーマット」する必要があると言いました
それはタイプミスだと思いますか?

いいねを押す +0
左手右手慢动作

実際、厳密に言えば、vim はそれを処理できません。 gg=G でできることは、行単位でインデントを調整することだけです。実際には、lz (インデントなど) のような外部ツールが必要です。完璧なインデント構成があると仮定します。次に、%!indent を使用して vim でそれを行うことができます

いいねを押す +0
洪涛

インデントしたい行を選択し、大きな V を押して行モードに入り、>右インデント、<左インデントを直接押して、行ごとに配置するだけです_(:з ∠)_

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート