Note: this project isn't actively developed since I no longer use hound regularly, but I will happily respond to issues or pull requests. Further, if someone who still uses hound and vim wants to take over maintainance lmk and I'll give it a think.
A plugin to talk to Etsy's Hound trigram search.
This plugin requires:
webapi-vim and curl
Introduces the
:Hound
command, which takes a string and asks a hound server: "like hey what's up with this string?" and presents the results in a scratch buffer.
You can also get the results in a quickfix window by running
HoundQF <searchterm>
hound.vim assumes you have a server running on localhost at port 6080. If you want to hit somewhere else you can redefine either in your .vimrc:
let g:hound_base_url = "arbitrary.url.com"
let g:hound_port = "6081"
You can also limit which repos you search through with (case insensitive) comma separated strings:
let g:hound_repos = "arepo,anotherrepo,anynumberofrepos"
You can tell hound.vim where your repositories live, by specifying a lower case dictionary like so:
let g:hound_repo_paths = {
\'arepo': '/path/to/arepo',
\'anotherrepo': '~/path/to/anotherrepo',}
If your repos have uppercase letters, please specify them with capitals in g:hound_repos
and g:hound_repo_paths
, and set:
let g:hound_preserve_repo_case = 1
This dictionary is required in order to use the HoundQF
command.
To ignore case in searches by default:
let g:hound_ignore_case = 1
I also recommend a mapping such as
nnoremap <leader>a :Hound<space>
for quick access.
If you want a vertical split instead of a new window:
let g:hound_vertical_split = 1