vimのシェルスクリプトのインデントがおかしい問題の解決方法

追記:
こんな記事を書いたのはいいのだけれど何気なしにtwitterを眺めていたら
case文のインデントが
できないという人がいましてその人は自己解決していたのでそちらに誘導します
https://twitter.com/adogear/status/215757105901207552
詳しく説明すると
http://www.vim.org/scripts/script.php?script_id=1632
このsh.vimを入手してvimrcに

let g:sh_indent_case_labels=1

を追加するだけです
前に紹介したsh.vimだと私もcase文だとうまくインデントされませんでした
申し訳ないです


以下は追記前の内容:
もしかしたら日本語で検索してなかなか見つけられない人がいるかもしれないのでメモ

Super Shell Indent - Improved indentation for shell scripts : vim online
これを使うだけで簡単にインデントが正しくなりました

例えば

func_install(){
    echo "${HOME_DOTFILES}"|\
        while read TMP
        do
            echo "install ~/${TMP}"
            ln -s ${PWD}/${TMP} ~/${TMP}
        done
    }

    func_clean(){
        echo "${HOME_DOTFILES}"|\
            while read TMP
            do
                echo "clean ~/${TMP}"
                rm ~/${TMP}
            done
        }

        func_pretend(){
            echo "${HOME_DOTFILES}"|\
                while read TMP
                do
                    echo "pretend ${PWD}/${TMP} -> ${HOME}/${TMP}"
                done
            }

このようにずれていたのが

func_install(){
    echo "${HOME_DOTFILES}"|\
        while read TMP
    do
        echo "install ~/${TMP}"
        ln -s ${PWD}/${TMP} ~/${TMP}
    done
}

func_clean(){
    echo "${HOME_DOTFILES}"|\
        while read TMP
    do
        echo "clean ~/${TMP}"
        rm ~/${TMP}
    done
}

func_pretend(){
    echo "${HOME_DOTFILES}"|\
        while read TMP
    do
        echo "pretend ${PWD}/${TMP} -> ${HOME}/${TMP}"
    done
}

こうなって理想通りになります