What you do to indent codes in shell script

I have tons of ways to indent codes in C, C++ and Java programming language but could not find one that can indent the codes of my Shell Script. What are you doing to indent the code of bash script? Do you indent Manually? Also, what you use to indent? White space or Tab?

I use this command in vim, in Normal mode, to indent automatically a shell script :

gg
=G

The command “gg” jump to the begining of the file. The “=” command use the internal formatting function and the “G” command (End of the file) indicate where to use the function.