私は、コードのインデントが混乱しているCMSで作業しています。いくつかのコマンドを実行してvimで自動的に修正することは可能ですか?vimのインデントが壊れているコードを自動的にインデントします
答えて
一般に、=
操作を使用してインデントすることができます。
は、ファイル全体を字下げします
gg=G
(また、あなたは編集しますファイルの種類ごとに異なるインデントルールを有効にするために、あなたのvimrcでfiletype indent on
を持っている必要があります)
:help =
を参照してください。 (ggはファイルの先頭に移動し、=は動いているすべての行を再びインデントし、Gはファイルの最後に移動します)
デフォルトでは、Vimは言語のようにCとCをよくサポートします。オプションについては、:help C-indenting
を参照してください。おそらく、ファイルを再フォーマットする前にこれらのオプションを調整する必要があります。 cinoptions
によって制御される「スマート」字下げを使用する場合は、.vimrcにset cindent
を定義する必要があります。
他の言語については:help indent-expression
を参照してください。
また、空白やタブを使用してインデントする場合は、shiftwidth
、expandtab
、tabstop
オプションを使用する必要があります。あなたは4つのスペースですべてのタブを交換する場合
たとえば、あなたは「を使用することがあるでしょう:
set shiftwidth=4 " used by >>, << and tab.
set tabstop=4 " number of space characters used when displaying TAB
set expandtab " replace TAB by spaces
私は通常、ggVG=
でこれを行います。 gg
=ファイルの先頭に移動、V
=行をマーク、G
=ファイルの最後に移動、=
=インデント。
これを行うにはキーストロークが少なすぎるかもしれませんが、覚えやすいと思います。
をそして=は正確に何をするのでしょうか?結果は、私が期待したものとは完全には一致しません。私は、ビューファイルをインデントしようとしています、そして、その中のすべてのhtmlは今、左にクリップされますが、インデントされません。これはちょっと助けることができますが、それでも手作業でインデントを必要とします。 – lyuba
htmlを再フォーマットする場合は、その質問に対する答えをご覧ください:http://stackoverflow.com/questions/815548/how-do-i-tidy-up-an-html-files-indentation-in-vi/815560 #815560 –
- 1. Vimの自動インデントのインデントが正しくありません
- 2. LaTeXファイルのVIM自動インデントが悪い
- 3. Vim改行で自動インデント
- 4. emacs 24 C++自動インデントが壊れています
- 5. Vim自動インデント中括弧が間違っています
- 6. PHPファイルタイプのVim自動インデントが動作しない
- 7. インデントされていないコードで自分の文法が壊れる
- 8. vimとC++ 11ラムダ:自動インデント
- 9. 保存前にvimに自動インデントを指示する方法
- 10. Emacs JavaScript自動インデント
- 11. vim autoindentがインデントを削除しないようにします
- 12. NSTextViewでの自動インデント
- 13. Visual Studioの.cshtmlファイルでインデントが壊れている
- 14. vimで(自動インデントだけでなく)自動フォーマットする方法は?
- 15. Visual Studio、Pythonが自動インデントされていない
- 16. vimの厳密な自動インデントのようなEmacs
- 17. Vimの自動フォーマットオプション(=)は、HTML + JSを正しくインデントしませんか?
- 18. Ace-Editor JSON自動フォーマット/インデント
- 19. オンライン2,3,4スペースのインデント、Rubyコードのインデント
- 20. vscodeの自動インデント(インデントは2で、4ではなく)
- 21. 選択したコードをインデントするVimスクリプト
- 22. 行を自動的にインデントする方法は?
- 23. 1行のコードを自動インデントして入力する方法は?
- 24. HaskellとVim:適切なインデント
- 25. Vimのブラケット列インデックスによるコードのインデント?
- 26. EmacsでCコードを自動インデントする方法を教えてください。
- 27. 自動インデントを設定してvimにコピーされたコンテンツのインデントを外部から保持する方法は?
- 28. vimインデント形式を変更する
- 29. htmlコードをインデントする
- 30. Pythonでwimdを使用したVimインデント
ありがとうございました!これらのオプションを有効にして、単純なhtmlファイルで試してみました。うまくいきます。しかし、もしファイルが、私が今インデント表現理論に深く掘り下げる必要があるように見えるように見えるスマートなビューファイルのような混乱であれば) – lyuba