Commit graph

154 commits

Author SHA1 Message Date
Sanchayan Maity efaba37bcf nvim: fugitive/git: Add helper to rename branch 2021-07-15 21:12:27 +05:30
Sanchayan Maity d3b8cec40a nvim: git: Add functionality to restore using git reflog 2021-07-09 10:34:12 +05:30
Sanchayan Maity 8fc44227f2 nvim: after/plugin/completion: Disable autocomplete 2021-07-05 17:43:10 +05:30
Sanchayan Maity 119c91a6b7 nvim: plugins: Add nvim-gdb 2021-07-05 17:39:56 +05:30
Sanchayan Maity a16c244fce nvim: autoload/ftplugin: git: Add rebase and merge helpers 2021-06-17 16:58:12 +05:30
Sanchayan Maity 108630d19c nvim: Move plugin configuration files to after/plugin
Now that neovim runtime can also source lua files from traditional vim
runtime directories like after/plugin/ftplugin etc, move all plugin
configuration files to after/plugin.
2021-06-17 10:07:51 +05:30
Sanchayan Maity ca9e0d1754 nvim: after/plugin: fzf: Move fzf configuration
Do all fzf configuration in after/plugin instead of lua/modules. While at
it, add functionality to add fzf items to the quickfix list.
2021-06-16 19:11:11 +05:30
Sanchayan Maity 3942f04633 nvim: after/plugin: fugitve: Use gS mapping to stash file
While at it, use <Leader>G for :Git.
2021-06-07 20:54:41 +05:30
Sanchayan Maity 3ba1673068 nvim: after/plugin: fugitive: Update gF and gE mapping
Often it is convenient to merge remote branch origin/foo into local
branch foo, without having to checkout foo first. Use gF mapping for
the same.

One may edit alternate versions of the file in different branches using
:Gedit <branch>:/path/to/file. Use gE mapping for the same.
2021-06-04 15:50:35 +05:30
Sanchayan Maity 748fd222da nvim: after/ftplugin: Use 'wipe' for bufhidden 2021-05-25 11:39:40 +05:30
Sanchayan Maity f088e258da nvim: after/plugin/fugitive: Add some more key mappings 2021-05-25 10:48:33 +05:30
Sanchayan Maity 9b639279d9 nvim: after/plugin: Add j and k motion to the jump list 2021-05-18 19:40:03 +05:30
Sanchayan Maity f05e5bcd5d nvim: after/plugin: fugitive: Add a key mapping for Gedit
Gedit is helpful to open up previous versions of the file. For example,
:Gedit HEAD~3:% loads the current file as it existed 3 commits ago.
2021-05-18 13:11:23 +05:30
Sanchayan Maity 87c23e3bbc nvim: after/plugin: vsnip: Fix conflicting key mapping with sneak 2021-05-17 10:34:43 +05:30
Sanchayan Maity 08df60f731 nvim: after: git/fugitive: Add settings and mappings to not leave buffers behind 2021-05-14 16:34:25 +05:30
Sanchayan Maity 8694445d2d nvim: after: plugin/ftplugin: Drop unnecessary maps
Fugitive/vim already provides the necessary mappings. No need for
mapping these.
2021-05-14 13:46:25 +05:30
Sanchayan Maity e24fc200ec nvim: Add support for using snippets 2021-05-13 21:07:42 +05:30
Sanchayan Maity 1c9b8aae40 nvim: plugins: Add support for Coq 2021-05-13 19:38:37 +05:30
Sanchayan Maity aa1bdca912 nvim: plugins: Drop guile support
We added this to explore guix but lost interest. Also no time. Will only
explore racket if at all.
2021-05-12 19:23:36 +05:30
Sanchayan Maity 048095bb2e nvim: Update mappings for ferret 2021-05-08 14:40:04 +05:30
Sanchayan Maity 07bd4e8592 nvim: lua: plugins: Drop hlslens 2021-04-29 13:41:19 +05:30
Sanchayan Maity b9e5fb64bf nvim: fugitive: Refactor and add some more git helpers 2021-04-27 09:29:41 +05:30
Sanchayan Maity 765eec81b6 nvim: after: fugitive: Update key mappings 2021-04-19 12:20:00 +05:30
Sanchayan Maity ff7e6f524c nvim: git/fugitive: Add helper for git branch and checkout 2021-03-19 12:15:52 +05:30
Sanchayan Maity 3b2e3adee1 nvim: plugins: Enable support for guile 2021-03-10 21:36:55 +05:30
Sanchayan Maity c5cd375c25 nvim: modules: completion: Move key bindings in lua module
nvim-compe recently included instructions on using backspace and tab
correctly. Include the same configuration.
2021-02-08 11:42:01 +05:30
Sanchayan Maity 9c889caa9a nvim: plugin: compe: Use TAB and S-TAB to cycle through popup menu
We mistakenly dropped this while switching to compe from
completion-nvim.
2021-02-05 13:58:42 +05:30
Sanchayan Maity 9918959aa2 nvim: Switch to nvim-compe 2021-02-02 18:09:35 +05:30
Sanchayan Maity 91be84b9d7 nvim: Switch back to fugitive again :)
With most of our operations now being done through fzf + git command
line or lazygit, we primarily only require the log & blame facilities.
The blame interface in Gina is confusing.

This time however, we include some nice helper functions of our own.
2021-02-01 18:17:13 +05:30
Sanchayan Maity f73f40f5af nvim: Drop searchlight and switch to hlslens 2020-12-23 16:38:55 +05:30
Sanchayan Maity fef45b50e9 Drop init.vim
With the below PR merged
https://github.com/neovim/neovim/pull/12235

init.lua is now first class and we have no need for init.vim anymore.
2020-12-07 13:05:08 +05:30
Sanchayan Maity cbd37c1856 nvim: Move to packer 2020-10-29 21:06:46 +05:30
Sanchayan Maity efc8bf88b5 nvim: Except for gina migrate everything in after/plugin to lua 2020-10-24 11:06:27 +05:30
Sanchayan Maity cb16ddec0c nvim: Refactor configuration and start moving to lua 2020-10-23 17:23:51 +05:30
Sanchayan Maity 18b93f32d7 nvim: Refactor and update settings for completion-nvim
Use of trigger keys has been updated upstream. Also disable auto
completion.
2020-10-13 19:46:43 +05:30
Sanchayan Maity d04c8675f9 nvim: Switch back to gina dropping fugitive
The only purposes we have been using fugitive for is status and commit
which should be equally comfortable with gina. Gina log is really
instantaneous even on big repositories like Linux while fugitive just
freezes vim. For handling hunks, merge and rebase conflicts we anyways
rely on the other plugins.

We use edita so that applications which use $EDITOR internally can work
inside neovim terminal without opening another instance which does not
work with the already running instance. This is required for things like
interactive rebase. See below issue.
https://github.com/lambdalisue/gina.vim/issues/276

We drop fzf-checkout as it isn't that useful anymore since gina allows
easy checkouts for branch or tags easily.
2020-10-06 17:43:02 +05:30
Sanchayan Maity 160ed5b1c1 Revert "Revert "nvim: Switch to signify""
This reverts commit 79be97c081.

While signify has the below issue
https://github.com/mhinz/vim-signify/issues/345

still drop gitgutter and use signify as gitgutter might have problems as
observed in this thread.
https://github.com/nvim-lua/completion-nvim/issues/203
2020-10-05 20:48:56 +05:30
Sanchayan Maity c25188661b nvim: Add fzf-preview
This plugin provides support for Quickfix and Location list along with
previews. Also, does not do fuzzy match on file names which is useful.
Move some of the commands from fzf to fzf-preview as it provides
previews for those as well.

Using pedit for previews for quickfix list wasn't super comfortable.
Drop it, now that we have quickfix preview with fzf-preview.
2020-09-22 20:33:49 +05:30
Sanchayan Maity 79be97c081 Revert "nvim: Switch to signify"
See open issue
https://github.com/mhinz/vim-signify/issues/345

Makes signify completely unusable if the undo hunks feature is desired.

This reverts commit b25091fae6.
2020-09-14 10:09:47 +05:30
Sanchayan Maity b25091fae6 nvim: Switch to signify
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-09 13:25:52 +05:30
Sanchayan Maity 27d4b8d326 nvim: Update git key bindings
fzf checkout plugin introduced some new functionality. Taking advantage
of that update existing and introduce some new key bindings.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-02 11:21:53 +05:30
Sanchayan Maity c134bd4326 nvim: after: plugin: fzf: Add key mapping for recently accessed buffers
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-22 14:49:27 +05:30
Sanchayan Maity 0abeb9d927 nvim: Refactor out asyncdo & completion keymappings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-14 19:15:14 +05:30
Sanchayan Maity a649021325 nvim: Move key mappings for fzf & gitgutter to after/plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-26 19:30:15 +05:30
Sanchayan Maity a2d603d61a nvim: Re-introduce git-messenger
Now that we have dropped golden-ration add git-messenger back.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-24 20:23:30 +05:30
Sanchayan Maity ba8739f4d0 nvim: Drop git messenger
git messenger does not size it's floating window correctly and cursor
gets all messed up while trying to jump in the floating window with
golden-ratio mode being active. May be related to the issue
https://github.com/rhysd/git-messenger.vim/issues/38

Based on the below issue
https://github.com/tpope/vim-fugitive/issues/1387

We can already use fugitive's git blame interface for seeing the last
commit on the line.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-18 10:40:41 +05:30
Sanchayan Maity 8365e134d8 nvim: Drop incremental search as in-built suffices
Also use vim-searchlight for search highlighting the word under cursor.
Add custom highlight color to make the word being searched under cursor
stand out for our color schemes and better key mappings to shift through
searches in command line.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-17 10:25:18 +05:30
Sanchayan Maity dc895fe1ee nvim: Refactor the nvim-lsp settings
This also helps in the key bindings now being in effect only for which
language servers has been enabled.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-29 11:14:00 +05:30
Sanchayan Maity 19d00c7ac5 nvim: Add vim-fugitive for git back
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-27 20:50:06 +05:30
Sanchayan Maity c42e841e3e nvim: Switch to vim-sneak
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-27 15:15:32 +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 69654597d2 nvim: Use in built LSP for rust
While at it, use wombat colorscheme for Rust.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-24 16:57:26 +05:30
Sanchayan Maity 77db00dcba nvim: init.vim: Drop text object plugins we do not use
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-24 13:43:01 +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