14
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

giboなるものが流行っているらしいのでVimでやる

Last updated at Posted at 2016-04-07

この記事ではUbuntu15.10を使っていますが、基本的にはVimがあればOSなどを問わず再現できます。

giboについて

.gitignoreを自動的に生成することができるコマンドラインツールgiboが流行っているらしいので試してみました。例えば、Javaのプロジェクトを開発しているときは、以下のようにして.gitignoreを生成します。

gibo Java > .gitignore

生成される.gitignoreは以下のようになります。

### https://raw.github.com/github/gitignore/cc542de017c606138a87ee4880e5f06b3a306def/Java.gitignore

*.class

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
*.jar
*.war
*.ear

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*

また、gibo-completion.bash, gibo-completion.zsh, gibo-completion.fishのうち、適当なスクリプトを読み込むことによって、簡単にタブ補完を行うことができるようになります。

この記事より詳しいものが他にあるので、興味のある人はご覧になってください。

この記事の本題はgiboではありません。

gitignore.vim

とても便利なgiboですが、Vimで同じことができたら(Vimmerにとっては)もっと便利なのではないかと思い、gitignore.vimというプラグインを作成しました。

インストールする場合は、自分の好きなプラグインマネージャを使ってください。
私はvim-plug派なので、以下のものを.vimrcに追加するとインストールすることができます。

Plug 'iwataka/gitignore.vim'

そして、インストールすると、以下のようなコマンドが使えるようになります。

:Gitignore " 引数のリストを表示する
:Gitignore Java " もともとある.gitignoreに対して、Javaプロジェクト用のパターンを追加する
:Gitignore! Java " もともとある.gitignoreを削除して、新しくJava用の.gitignoreを生成する
:GitignoreUpdate " テンプレートコレクションを更新する

.gitignoreファイルの場所を指定しなくとも、カレントバッファから辿ってプロジェクトルートを探し、そこに.gitignoreを生成します。

giboとの比較

メリット

  • プロジェクトルートの.gitignoreを自動的に探すこと

    giboの場合、.gitignoreの場所を指定するのが少し面倒ですが、gitignore.vimを使う場合はそれがありません。

  • Vimのプラグインであること

    Vimから出たくない人には適していると思います。

デメリット

  • Vimのプラグインであること

    Vim使ってない人はgiboのほうが適しています。

14
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?