ソースコードを検索する際には何を使っていますか。GitHubの検索を使う人もいるでしょうし、grepで検索する人もいます。しかし好みの条件がつけられなくて不便に感じることも多いでしょう。 そこで使ってみたいのがソースコード検索エンジンです。Houndはもの凄く手軽に使えて高機能な検索エンジンとなっています。

Houndの使い方

インストールは以下のような手順となっています。

git clone git@github.com:etsy/Hound.git
export GOPATH=`pwd`
go run src/hound/cmds/houndd/main.go

実際にはrunを実行する前にconfig-example.jsonを編集してconfig.jsonとします。内容は以下の通りです。

{
  "dbpath" : "data",
  "repos" : {
    "SomeRepo" : {
      "url" : "https://www.github.com/YourOrganization/RepoOne.git"
    },
    "AnotherRepo" : {
      "url" : "https://www.github.com/YourOrganization/RepoTwo.git"
    }
  }
}

見ての通り、リポジトリのURLを指定するだけです。後は実行すればリポジトリからソースを取得してインデックス化までやってくれます。

サーバが立ち上がりますので6080番ポートにアクセスします。

正規表現でディレクトリを絞ったり、リポジトリを選択できます。

Houndを使うと好きなプロジェクトを簡単に取り込んで検索が使えるようになります。ローカルだと検索も高速です。オープンソースなのでファイルのリンクを好きなエディタが起動するようにしたりしても良さそうです。

HoundはGo製、MIT Licenseのオープンソース・ソフトウェアです。

etsy/Hound