Commit graph

650 commits

Author SHA1 Message Date
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 491ffb9bee nvim: Drop vim-polyglot & miscellaneous clean up
Drop polyglot and add the necessary language support manually. While at
it disable some internal plugins and drop vim-qlist. qlist is only useful
if path is set correctly and it can search for files as indicated by the
path. Since we do not do this, it does not add any value.

Add vim-tmux-focus-events back again. As per this thread
https://github.com/tmux-plugins/vim-tmux-focus-events/issues/1

neovim shouldn't require this plugin however the observation seems that
it's required.

Gitgutter quickfix entries should be loaded in quickfix and not location
list.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-19 14:21:29 +05:30
Sanchayan Maity f8d48a4dc4 nvim: after: ftplugin: qf: Do not set relative number in QF window
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-17 20:58:06 +05:30
Sanchayan Maity ea9f89d74e nvim: Use vim-system-copy
Use this so we do not pollute clipboard history. Also since neovim
depends on a provider which transparently uses shell commands to
communicate with the system clipboard, it seems this adds around 80ms
to start up.

074.721: sourcing /usr/share/nvim/runtime/autoload/provider/clipboard.vim

This plugin should allow us to depend on it only when required.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-15 14:23:23 +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 d211c2fe66 nvim: Switched to a different rainbow parentheses plugin
While at it, disable highlighting of matched parentheses.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-14 15:36:30 +05:30
Sanchayan Maity 4593725d7d nvim: colors: molokai: Improvement updates taken from molokayo
See the repo
https://github.com/fmoralesc/molokayo

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-13 11:53:31 +05:30
Sanchayan Maity 97e53f5a1c nvim: Switch to molokai and subsume upstream repository
:(. Gruvbox doesn't cut it, nor does jellybeans. Back to molokai.

Color scheme taken from
https://github.com/fatih/molokai

We add this to our own colors directory while dropping terminal color
support as we have terminal GUI colors option set. Also change the
background color to be completely black like we want it. Also drop the
auto command as it is not required anymore.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-12 11:58:57 +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 495be4683f nvim: Increase the height of fzf window
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-11 16:57:17 +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 01eb979b2c nvim: Drop eunuch and lastplace
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-11 11:40:42 +05:30
Sanchayan Maity c874a027b5 nvim: Switch to gruvbox8
Back at this again as it loads faster and did not realise last time that
the background can be over ridden with an auto command group to be set
to complete black. The auto command group must be read first before
setting of the color scheme that's why the autocmd file is now loaded
first before everything else.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-11 11:32:31 +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 fee71ae71e nvim: Miscellaneous clean up
Make sure key bindings are local to the file type buffer.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-09 19:17:58 +05:30
Sanchayan Maity 2ef8a772e5 nvim: Switch to dirvish as directory viewer
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-09 17:57:40 +05:30
Sanchayan Maity ccfab23987 nvim: init.com: Drop some more unneeded plugins & rearrange
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-09 17:31:58 +05:30
Sanchayan Maity f763976fbf nvim: plugin_settings: Disable syntax concealing for markdown
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-09 16:02:56 +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 f43e74690f nvim: after: ftplugin: Add helper key bindings for git rebase 2020-05-09 12:25:58 +05:30
Sanchayan Maity fa25d22481 nvim: Add git rebase helper
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-09 11:42:48 +05:30
Sanchayan Maity fe4ef658f6 nvim: Drop vim-anyfold and vim-matchup
Really don't use folds ever, so drop this plugin.
Same for matchup.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-08 21:29:40 +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
Sanchayan Maity fe35fd065c nvim: Upgrade vim-plug
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-06 10:39:55 +05:30
Sanchayan Maity 021c66c047 nvim: Remove unused plugin setting
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-05 17:45:54 +05:30
Sanchayan Maity f8ce9ccb21 git: gitconfig: Remove diff3 as conflict style
diff3 as conflict style was required by vim-mergetool. It is not
required by the current plugins we are using.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-05 11:26:23 +05:30
Sanchayan Maity 7f51f5d2d4 fish: Add git alias helpers for opening & adding unmerged files
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-03 21:46:52 +05:30
Sanchayan Maity 534eebb89e nvim: Remove mergetool and switch to DiffConflicts for git merge
Also add the conflict-marker plugin. This should also be useful
for doing rebases and resolving conflicts. Might drop one later
if one of them serves all the purposes in all cases.

While at it, add unimpaired style bindings for moving between
tabs. This is required since :DiffConflictsShowHistory opens
a new tab and default tab navigation bindings gt/gT at least
are binded to something else in python.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-03 21:35:28 +05:30
Sanchayan Maity b42d4cc7a7 nvim: Add function to easily work with jump list & access change list
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-03 11:26:47 +05:30
Sanchayan Maity 33148207ec nvim: Switch to jellybeans colorscheme
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-02 18:47:05 +05:30
Sanchayan Maity a2228c077b nvim: ftplugin: purescript: Set textwidth and wrapmargin to 0
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-02 12:22:02 +05:30
Sanchayan Maity 47106487ac nvim: Discard GGrep
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-02 11:42:04 +05:30
Sanchayan Maity f57a5fffc0 nvim: Switch to showing the full file path in statusline
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-01 17:57:21 +05:30
Sanchayan Maity b57e4bdceb nvim: Fix netrw buffers staying open after usage of vinegar
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-01 12:52:04 +05:30
Sanchayan Maity 55d3655ffe nvim: ftplugin: haskell: Enable classic highlighting for Haskell
Gives color separation in molokai between "instance" and "Typeclass Type".

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-30 10:29:24 +05:30
Sanchayan Maity 95a31ad348 nvim: Switch to vanilla molokai
Better contrast and darker colors.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-28 17:02:54 +05:30
Sanchayan Maity a05099b6bb nvim: Fix mapping for diff section jumps
Do not conflict with paragraph motion mapping.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-28 10:20:35 +05:30
Sanchayan Maity caf6f81318 nvim: Disable shada
We do not want project specific or project local information to be
available among various neovim instances. It should either be managed
by sessions or should not be stored on neovim exit.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-28 09:51:26 +05:30
Sanchayan Maity 470cd043d5 nvim: Add QFEnter plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-26 18:29:55 +05:30
Sanchayan Maity f56bb8c5fb nvim: Drop vim-fugitive and move to gina
vim-fugitive from Tpope is synchronous on neovim. It is
asynchronous on vim when vim-dispatch is available but for
neovim it will always be synchronous. Gina is asynchronous
by default and does not freeze on large repos like fugitive
does. So drop fugitive, other plugins and settings dependent
on it.

While at it, also add some more good things from git gutter
and some shortcuts.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-26 18:29:07 +05:30
Sanchayan Maity d879a43b48 nvim: statusline: Add a hunk summary to the status line
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-24 20:35:31 +05:30
Sanchayan Maity 40bc178d32 nvim: Switch back to sonokai
We switched away from Sonokai due to high load times in 20ms or more but
there isn't a monokai variant which is better than this. Gruvbox got
annoying after a while. A darker contrast would have been preferred but
no other fits the bill.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-24 15:50:53 +05:30
Sanchayan Maity f6c8b8d8fa nvim: Fix color scheme setting point
It seems since we are using hard coded colors, so we do not need the
auto command at all. Getting rid of it gives the right results.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-23 10:17:54 +05:30
Sanchayan Maity 321213894b nvim: Add a key binding to save files with sudo
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-23 09:37:02 +05:30
Sanchayan Maity 8af9c11813 nvim: Drop dependency on vim-airline
Use a custom status line and buftabline.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-23 09:33:30 +05:30
Sanchayan Maity c880a370d4 nvim: Drop unneeded plugins & use incsearch for automatic nohlsearch
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-22 09:09:06 +05:30
Sanchayan Maity 42fcd983ad nvim: Disable auto completion by default
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-21 16:14:33 +05:30
Sanchayan Maity a368dd07fc nvim: Drop any jump plugin
Since we already use vim grepper this plugin does not provide much.
Drop it.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-21 16:14:26 +05:30
Sanchayan Maity 643cdfef11 nvim: Some minor cleanups, additions and refactor
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-21 16:14:15 +05:30