VimGo言語には、gofmtというコードフォーマッターがあります。標準ライブラリーで備えており、このフォーマッターをかけることを半ば強制することにより、Goで書かれたコードはどれも統一的なスタイルをしているように見えます。gofmtには様々な機能がありますが、特にimportしているモジュールをソートしてくれるのが便利だなと思います。フォーマッターがimportのモジュールをソートしてくれるのはとても便利です。第一に、どのファイルにおいてもあるモジュールはだいたい同じ場所にあります。bufioモジュールは上のほうで、osモジュールは下のほうがといった感じです。第二に、モジュールを追加するときにどこに追加すればよいかということに気を回さなくてすみます。何か新しいモジュールを追加しようという時に、どこに追加するかについて私たちはかなり気を使っているように思います。import文をひっくり返しても言語の仕様上において意味は変わらないということが大前提にあります。Haskellを書いていても、モジュールをどの位置にimportするか悩みます。適当にimportを書いていくとファイルによってマチマチになりがちです。そこでHaskellでもimport文を常にソートするようにしようと思いたち、Vimプラグインを作ってみました。このプラグインは一つのコマンドを提供します。