Commit graph

13 commits

Author SHA1 Message Date
Sanchayan Maity a20fa4494c nvim: Update to some keymappings for git and drop gina
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-27 10:31:06 +05:30
Sanchayan Maity 2ad7100749 nvim: Configure nvim-completion & remove conflicting LSP bindings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-25 19:00:55 +05:30
Sanchayan Maity 8c1b5dd9b3 nvim: Add simple terminal toggle plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-23 15:48:27 +05:30
Sanchayan Maity f977b8a246 nvim: Nuke everything Python related
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-23 14:47:16 +05:30
Sanchayan Maity 467a660409 nvim: Drop neomake, QFGrep and vim-grepper
Profiling with below
nvim -c 'profile start vim.log' -c 'profile func *' -c 'q'

shows that neomake adds to the start up time. Currently we only use it
for two tasks. Running hlint for Haskell and stack build asynchronously.

Use asyncdo and define a generic wrapper command for running makeprg
asynchronously. This can be used for anything as long as makeprg is
set correctly.

vim-grepper also adds somewhat to the startup time though not much. We
do not need the functionality of switching between grep tools. Here
again just use asyncdo and define a generic command for running grepprg
asynchronously.

Drop QFGrep as we can use in built Cfilter plugin for filtering the
quickfix list.

Note that all start times mentioned above are a few milliseconds not
even more than 5ms. However, we would like to be as fast as possible
and use in built functions.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-21 16:39:06 +05:30
Sanchayan Maity 7875f6d8ab nvim: functions: Drop functions for cycling through all hunks in all buffers
We can just call GitGutterQuickFix and then cycle through all hunks. No
need for this.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-19 14:34:42 +05:30
Sanchayan Maity 1721c8d62b nvim: keymappings: Do not map j/k to gj/gk
This does not work for line jump when you have relative numbers on and
lines wrap around.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-15 10:54:19 +05:30
Sanchayan Maity 86cbd6a4a6 nvim: Update some key mappings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-12 10:19:13 +05:30
Sanchayan Maity 1a061f6ec8 nvim: keymappings: Miscellaneous key mappings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-11 13:50:54 +05:30
Sanchayan Maity c94132b1e6 nvim: keymappings: Better behaviour for '0'
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-10 20:42:16 +05:30
Sanchayan Maity 3c0e1088ad nvim: Drop easymotion
We use easymotion primarily for vertical motion and any motion requires
at least 3 or 4 key bindings which isn't necessarily different if we are
using relative numbers. For example, pressing <Leader>j and then
pressing another one or two keys for the vertical movement is the same
number of keys while using relative numbers. So just use relative
numbers and drop it. We also never used the word and character motions
or cross window motions.

Use f,F,t,T for horizontal line motions. Use clever-f for this, which
improves the default behaviour. For any other motion not covered by
these two, just use incsearch.

While at it, move some of the key bindings to after/plugin to have
key bindings specific to a plugin in it's own file.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-10 20:41:02 +05:30
Sanchayan Maity 5e1995d731 nvim: ftplugin: gitcommit: Add diff section jump only for git commits 2020-05-09 14:17:43 +05:30
Sanchayan Maity 80e2aa9341 nvim: Refactor neovim configuration
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-07 13:06:50 +05:30