* Add a sorter using the fzy algorithm
* Reformat fzy.lua
Also, update author attribution.
* Remove constansts from fzy module
Replace a few of the useful ones with getter functions that make it
clear they're not modifiable.
* Change names of fzy constant getters
* fixup: some small nit picks
Co-authored-by: TJ DeVries <devries.timothyj@gmail.com>
* fix: Ensure git_files uses the git root directory as cwd
This sets the cwd option of the git_files builtin to use the root of the
git directory when the cwd option doesn't already exist. When git lists
files, it is relative to the root of the git directory, rather than the
current working directory. This caused problems when using git_files in
a subdirectory of the git root (see #174).
This commit fixes the issue by always setting the cwd as the root of the
git directory.
* ref: Use neovim's system caller for command
This removes the need for an additional lua function to extract the shell
response, making use of inbuilt vim functionality.
* fix: make sure that `$VIMRUNTIME/doc/tags` is in `tags` path
* feat: highlight matched topic in helptags preview
* fixup: Use previewer setup and teardown
Co-authored-by: TJ DeVries <devries.timothyj@gmail.com>
First edition. Sometimes weird things can happen with the previewer, but I think I got it 99% working.
* feat: Manpages finder (output of apropos)
* fixup: Add previewer and fix comments
Co-authored-by: TJ DeVries <devries.timothyj@gmail.com>
Instead of storing everything in key / value pair hashes, we store as much as possible in an array and then reference the items in the array using metatables.
This provides us with a much lower memory footprint and just one level of table lookup indirection (so I think the speed will not be noticeably different)
It is not 100% clear that we've gotten ALL the memory leaks, but it
seems much much much better and doesn't look like it's going to die
immediately or as often anymore :)
This gets rid of a slightly annoying difference between files that fit
in the preview pane and ones that don't: hitting the scroll-preview
mappings would complain about a closed stream. Always using the pager
ensures there's always a process at the other end, even if asking it
to scroll doesn't actually do anything.
* [WIP]: Mon 28 Sep 2020 01:08:24 PM EDT
* add much much better tracking. so much less hax
* status updates, oneshot job updates, etc.
* remove temp function
* add status function
* asdfasdfasdf