aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2017-04-29autoload/gitcha.vim: Include entire subject in popup extra textTeddy Wing
Fix the subject issue from 0773fdd7bde5e7ce462c15bd1c71db3a3e46862a and show the entire commit subject in the popup menu.
2017-04-29Update TODOTeddy Wing
2017-04-29autoload/gitcha.vim: Add commit subject to completion popup (WIP)Teddy Wing
Initial try at adding the commit subject to the popup menu to provide context for the commit. Currently only shows the first word of the subject because I'm using `split()`.
2017-04-29Update TODOTeddy Wing
2017-04-29autoload/gitcha.vim: Describe the code with commentsTeddy Wing
2017-04-29Move functions to autoload/Teddy Wing
Don't force our functions to be loaded when the ftplugin is loaded. Be good Vimscript citizens and respect load performance.
2017-04-29Move ftplugin to ftplugin/gitcommit/gitcha.vimTeddy Wing
To ensure that we don't conflict with the real "gitcommit" ftplugin, move ours into a new custom file. As described in :h ftplugin-name we can create additional ftplugins for the same filetype by putting our script in a directory named for the filetype.
2017-04-28TODO: Add entry for extra contextual textTeddy Wing
2017-04-28Add TODOTeddy Wing
2017-04-28ftplugin/gitcommit.vim: Restore user completion functionTeddy Wing
Make our custom mapping work while retaining any user-defined `completefunc`. Doing it this way enables us to get away without having to set a hacky `CursorMovedI` unsetting autocommand as imagined in e70d92c495001c0af0037b9fadbeec170d2c318f. We clutter our `GitSHAComplete` completion function a bit with functionality that doesn't really belong to it in order to get a win for simple implementation of the `completefunc` restore feature.
2017-04-28ftplugin/gitcommit.vim: Remove test code from e70d92c495001c0af0037b9fadTeddy Wing
2017-04-28ftplugin/gitcommit.vim: Experiment providing a custom mappingTeddy Wing
Experiment with providing a custom mapping for our Git SHA completion function. We use <C-x><C-s>. The custom mapping should set our function as the custom `completefunc`, call the user completion function by programmatically running `<C-x><C-u>`, and then unset and restore the previous `completefunc` value. This allows us to not clobber a user-defined completion function and also give ourselves a special custom <C-x> mapping. Just experimenting for now. Figured out how to get this to work using a test `ASDF` function along with these resources: * http://stackoverflow.com/questions/15643234/remapping-tab-completions-in-vim * https://github.com/ervandew/supertab/blob/master/plugin/supertab.vim * http://stackoverflow.com/questions/6926034/creating-a-mapping-for-insert-mode-but-not-for-autocomplete-submode It works. The only problem is that we can't restore the old `completefunc` value. Thinking about ways to do this, and for now my most promising idea is to use the `CursorMovedI` autocommand.
2017-04-27ftplugin/gitcommit.vim: Make completion work for commit SHAsTeddy Wing
Get the list of SHAs from `git rev-list` and use this for completion. Not too different from the original structure. Renamed `res` to `matches` because that seemed clearer to me.
2017-04-27Sample completion functionTeddy Wing
Copy the completion function included in `:h complete-functions` to give us a base custom completion function to work from. We'll be using this to provide completion for Git SHAs.