34

現在、軽量 IDE として Vim を使用しています。NERDTree、bufexplorer、supertab、および ctags プラグインがあり、必要なほとんどすべてを実行できます。私にとって欠けている唯一の大きなものは、コードの自動フォーマットです。

インデントとコードの書式設定に一貫性がない厄介な PHP コードを使用しています。理想的には、書式設定するコードを強調表示し (ファイル全体でも問題ありません)、コマンドを実行して整理することができます。

Vimでこれを行うための良い解決策はありますか?

4

5 に答える 5

73

shiftvim で PHP のインデントを修正する簡単な方法は、 -を使用して操作する行を視覚的に選択し、v等号 ( ) を押し=て自動フォーマットをトリガーすることです。

他のフォーマットの問題については、行末を修正するために、 :%s/^M/\r/g(that's ctrl- V ctrl- m, not caret- )などの正規表現検索と置換を使用することを検討している可能性があります。M

于 2009-05-13T13:20:45.080 に答える
16

vimで通常モードに入り、次のように入力します

1GVG=
于 2011-11-14T12:01:58.063 に答える
8

vim 内からコードのフォーマットを有効にする vim プラグインがあります。それは vim-autoformat と呼ばれ、それについて読んだり、ここからダウンロードしたりできます。

https://github.com/vim-autoformat/vim-autoformat

これは、外部のコード フォーマット プログラムを vim に統合します。このプラグインがインストールされている場合は、外部コード フォーマッタをインストールするだけで、すべてをすぐに使用できます。これは、これまでに見た中で最高の php フォーマッターである php フォーマッターphpCBをサポートしています。

更新:コード ブレーク動作のため、phpCB はサポートされなくなりました。ただし、vim の indentfile は常にフォールバックとして使用されるため、利用可能なフォーマッターがない場合でも、少なくともコードをインデントできます。

于 2012-12-06T23:02:32.573 に答える
2

vimのWebサイトはナビゲートするのが最も簡単ではありませんが、そこには歯ごたえのあるヌガーセンターがたくさんあります。

たとえば、このphpインデントスクリプトを見つけました。試してみる。

于 2009-05-13T14:11:19.930 に答える