Commit graph

519 commits

Author SHA1 Message Date
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 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
Sanchayan Maity 19be5a4442 nvim: Switch to gruvbox8 theme
This theme is quite fast to load though slightly less nicer than
sonokai, the sonokai theme can take 20-30ms during load. Load times for
gruvbox8 seem to be around 2-2.5ms.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-18 18:32:33 +05:30
Sanchayan Maity 932e3ffc42 nvim: LSP cleanup and refactor
LSP does not work all the time. Either client breaks, server breaks or
it does not work because of the project structure. Removing LSP for the
umpteenth time.

asyncomplete does not seem to work at all for tags. For example, in the
gst-build directory the generated tags file can be 200MB+ in size. Even
with the file size limit set to unlimited it does not seem to give any
tag suggestions at all. Same is the case for Haskell.

Mucomplete can be slow in such cases where tag file is very large or
search space is extensively large and being synchronous this is to be
expected. To alleviate this, it is necessary to have a minimum prefix
length of 2 and perhaps trigger completion only when required. However,
this was still not good enough.

We are back to deoplete with custom source configuration. It is pretty
clear vimscript solutions are not up to the mark. Enable python provider
and also reintroduce language specific solutions like racer and jedi.

Refactor out language/file type specific settings. init.vim should only
have global keybindings, plugins and plugin settings. Also some other
minor cleanups, additions and rearrangements.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-15 09:27:36 +05:30
Sanchayan Maity 68c61a7a1c nvim: Add quickui for quickfix preview
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-12 15:38:39 +05:30
Sanchayan Maity 0438c0a032 nvim: Update vim plug
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-12 15:37:29 +05:30
Sanchayan Maity ff46041c41 nvim: Add fzf quickfix
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-08 10:22:30 +05:30
Sanchayan Maity 91248a4822 nvim: Remove plugins endwise, mundo and crates
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-08 09:35:40 +05:30
Sanchayan Maity c7afc36466 nvim: Add vim fetch
Enable to process line and column jump specifications in file paths as found
in stack traces and similar output

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-06 21:28:31 +05:30
Sanchayan Maity efbde43c1e nvim: Add vim any fold
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-06 21:28:24 +05:30
Sanchayan Maity cc0f55cec3 nvim: Set shortcuts for setting fold methods
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-06 21:28:10 +05:30
Sanchayan Maity 537f3021a4 nvim: Add vim exchange
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-06 14:09:13 +05:30
Sanchayan Maity 5f0dbec511 nvim: Add a shortcut for invoking haskdogs
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-06 10:56:30 +05:30
Sanchayan Maity 6297e35f45 nvim: Add bindings for preview tags
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-06 10:08:03 +05:30
Sanchayan Maity c775c0b4e8 nvim: Remove auto resize plugins
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-05 15:30:47 +05:30
Sanchayan Maity cccce84de4 nvim: Do not append results in vim grepper
This setting results in the quickfix list having the same result
multiple times if by mistake we run the same search again.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-04 13:04:13 +05:30
Sanchayan Maity 559013e491 nvim: Reintroduce key binding for buffer switching using :b
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-04 09:25:49 +05:30
Sanchayan Maity 26457a128e nvim: Lens should be disabled for buftypes & not filetypes
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-04 09:21:26 +05:30
Sanchayan Maity d123b038b3 nvim: Remove custom floating window function
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-03 16:32:59 +05:30
Sanchayan Maity bc64f3240f nvim: Add plugin to load diffs in quickfix list
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-03 12:39:24 +05:30
Sanchayan Maity 7e2ed37f66 nvim: Add vim-grepper and vim-qlist
While we have fzf, for situations where we want to search and load
results in quickfix or location list vim-grepper should come in handy.
vim-qlist enchances ]i/I related bindings for search to load then in
quickfix list.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-02 20:23:06 +05:30
Sanchayan Maity d9c9780223 nvim: Use window number information for window navigation
Airline section y is used for file encoding and file format. We do not
need this information in status line. Use it to show window number. Use
window numbers for navigation. See :h CTRL-W_W and :h winnr() for more
information.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-03-30 15:57:58 +05:30
Sanchayan Maity e5399b0c02 nvim: Increase height of floating window
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-03-30 13:10:27 +05:30
Sanchayan Maity bacae0a23d nvim: Use ag as any jump preferred search engine
While I would ideally like to use rg, it seems any jump does or cannot
use rg for some reasons for certain languages like Haskell. This can be
seen from the language map in any jump repo. So set preferred engine as
ag for now.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-03-28 10:25:23 +05:30
Sanchayan Maity b58fae6784 nvim: Add some miscellaneous plugins
While at it, remove quick-scope as it doesn't add much of a value when
we already use easymotion. Also do some cleanup.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-03-21 13:05:12 +05:30
Sanchayan Maity bb77d4748e nvim: Update key bindings
The git gutter fold bindings was slowing down the easymotion h binding.
So change it. Also the any jump binding was slowing down the 'a' append
binding.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-03-20 10:04:06 +05:30
Sanchayan Maity e4d37e47c9 nvim: Do not open floaterm in project root
Using this setting results in floaterm changing the directory which then
does not work when working in a setup like gst-build. Stick to whatever
directory we launched from since we would have started from a version
controlled directory root in most cases.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-03-02 19:27:32 +05:30
Sanchayan Maity 730257512d nvim: Add some more text object plugins
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-03-02 19:26:54 +05:30
Sanchayan Maity 8bd94d224f nvim: Make sure autochdir is off
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-29 11:26:08 +05:30
Sanchayan Maity c42bdf362d nvim: Add automatic window resizing plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-29 10:10:50 +05:30
Sanchayan Maity 6a05421110 nvim: Remove quickr-preview plugin
This plugin seems to have bugs and does not work with quickr-cscope and
quickfix-reflector. See the below issues.

https://github.com/ronakg/quickr-preview.vim/issues/19
https://github.com/ronakg/quickr-preview.vim/issues/17

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-29 09:36:22 +05:30
Sanchayan Maity 69006a09af nvim: Remove auto pairs
We can use vim surround for the same.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-29 09:35:48 +05:30
Sanchayan Maity 065a281e7e nvim: Fix indentation
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-28 12:56:49 +05:30
Sanchayan Maity 9315523206 nvim: Remove indentation specific settings
Since we use vim-sleuth, let that figure things out and do not set
anything by default.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-28 12:34:00 +05:30
Sanchayan Maity 025d0ddab3 nvim: Switch to sonokai
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-28 09:24:47 +05:30
Sanchayan Maity 2b59e8e343 nvim: Add any-jump
While this purpose can also be served by fzf the additional feature of
any-jump is that it shows definitions and usages, so helps to have more
context. Should also help us for languages we do not have any setup for
and might not want to use tags.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-28 09:22:42 +05:30
Sanchayan Maity edfd027067 nvim: Add vim-floaterm
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-28 09:21:28 +05:30
Sanchayan Maity cfc5dfbde3 nvim: Add quickr-preview
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-26 11:14:00 +05:30
Sanchayan Maity f6ea699860 nvim: Do not invoke Neomake automatically
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-26 11:03:52 +05:30
Sanchayan Maity b88b5f623a nvim: Do not remap the semicolon
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-26 10:59:17 +05:30
Sanchayan Maity af6a206e99 nvim: Add quick-scope plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-26 10:57:23 +05:30
Sanchayan Maity c015684a60 nvim: Remove window splitting shortcuts
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-26 10:49:00 +05:30
Sanchayan Maity de3295178a nvim: Remove Slimux
We haven't used Slimux much and has not been as much useful in our
work flow. Also increases the load time.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-26 10:39:44 +05:30
Sanchayan Maity 5af317e87c nvim: Prefix the fuzzy finder bindings with Leader
We want to use the standard vim f,F motions so free them up.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-26 10:15:22 +05:30
Sanchayan Maity cae810ad02 nvim: Remove line numbers
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-25 13:57:42 +05:30
Sanchayan Maity 605eb3898e nvim: Add another search replace helper
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-17 19:30:24 +05:30
Sanchayan Maity 93690c4887 nvim: Switch to a different whitespace stripping plugin
lessspace.vim is good but activates when leaving insert mode. This seems
to create problems while using LSP in python. Exact problem being when
in insert mode and about to enter function arguments, LSP will show
function argument signature. This conflicts with lessspace trying to do
it's thing and LSP trying to do it's thing.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-17 15:15:27 +05:30
Sanchayan Maity 61498e8115 nvim: Use vim-mergetool for merge conflicts
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-16 17:53:49 +05:30
Sanchayan Maity bf1acc4991 nvim: Remove gv
vim-flog already provides better git log viewing.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-16 13:54:31 +05:30
Sanchayan Maity 7ca8c091a4 nvim: Add vim-polyglot
This allows us to remove the various different syntax plugins we had for
each language and also takes care of most other languages if we ever
need. vim-polyglot includes the plugins we were using.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-15 21:17:18 +05:30
Sanchayan Maity 16c20e3daa nvim: Switch to the molokai theme variant
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-15 21:07:26 +05:30
Sanchayan Maity e9d699c73b nvim: Add python syntax plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-15 13:55:38 +05:30
Sanchayan Maity 10ca6c009b nvim: Disable Python3 provider
vimtex seems to complain compiler callbacks won't work without setting
the vimtex compiler program name which is to be neovim-remote. However,
the reason for requiring neovim-remote is mentioned as neovim not
providing the --servername option which seems to be atleast not true
anymore. So remove that and disable the Python3 provider so that we do
not depend on any external providers going forward.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-14 12:57:54 +05:30
Sanchayan Maity 18de6cf24d nvim: Switch to vim-lsp and asyncomplete
vim-lsp seems to provide more options, seems to work better and faster
even perhaps. With the switch to vim-lsp and asyncomplete we should be
able to remove dependency on external python provider.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-14 12:39:22 +05:30
Sanchayan Maity 519262d41f nvim: Remove auto format on save for Rust
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-13 16:31:49 +05:30
Sanchayan Maity e2fbaecbbf nvim: Disable providers we do not want to use ever
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-12 20:03:04 +05:30
Sanchayan Maity db2c2e0441 nvim: Fix LC key bindings activation for Purescript
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-12 16:40:31 +05:30
Sanchayan Maity ea87db710f nvim: Use Leader prefix for Neomake commands
Starting a command with 'n' resulted in a poor usage experience for
jumping to 'next' match of a search. Prefix all these commands with
Leader.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-10 09:23:40 +05:30
Sanchayan Maity d259c571bb nvim: Set up LC bindings only if it is started
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-09 19:22:22 +05:30
Sanchayan Maity 46364f42e3 nvim: Use Purescript language server
We do not do Purescript really so just add the language server support
and remove the extra bindings for purs ide plugin, if we ever require at
work.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-09 19:22:14 +05:30
Sanchayan Maity 3bd7b6e544 nvim: Add vim-lastplace
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-09 18:14:52 +05:30
Sanchayan Maity 6c182f7301 nvim: Add dhall syntax plugin
While at it, also rearrange things a bit.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-04 10:25:48 +05:30
Sanchayan Maity 6f22f549e9 nvim: Fix remote plugin update for Semshi
A plugin requiring a run of UpdateRemotePlugins does not work if it is
only setup to load with the specific file type.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-03 09:45:49 +05:30
Sanchayan Maity a8a3c1bb43 nvim: Switch to moonfly theme
The dark black background of moonfly theme I like. So switch. Rest
seems the same as nightfly.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-03 09:42:48 +05:30
Sanchayan Maity cdee23a6b7 nvim: Switch to using nightfly theme
This theme has some better styled colors for Haskell and though
increases the load times in vim slightly seems better to use.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-31 09:05:15 +05:30
Sanchayan Maity d4815d0fbf nvim: Enable relative numbering
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-29 19:13:46 +05:30
Sanchayan Maity 7d4f8818c9 nvim: Update bindings for GitGutter
Using u prefix bindings was resulting in delay for 'undo'.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-28 19:13:18 +05:30
Sanchayan Maity 293077d749 nvim: Upgrade vim-plug
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-27 21:00:42 +05:30
Sanchayan Maity a45c59d69c nvim: Add some Haskell niceties
Some niceties taken from
http://silly-bytes.blogspot.com/2016/08/vim-haskell_11.html

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-27 20:59:02 +05:30
Sanchayan Maity 14010c552e nvim: Fix conflicting bindings in LC
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-27 18:47:23 +05:30
Sanchayan Maity a5792a3f3a nvim: Use a custom stack compiler for Haskell
Neovim has a "stack" compiler file but this does not seem to work,
at least not in the shitty monorepo I am working on. Someone provided a
solution on Reddit which uses a custom compiler file and has been
modified to work on modules. Which is also perhaps why it doesn't work
in the monorepo project at work.

https://www.reddit.com/r/neovim/comments/es8wn7/haskell_makeprg_for_stack_build/
https://github.com/maxigit/vimrc/tree/2020/compiler

Use them and tie it up with Neomake! change.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-27 09:30:19 +05:30
Sanchayan Maity f7d7f6a328 nvim: Add racket plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-26 18:40:03 +05:30
Sanchayan Maity a4782833f4 Revert "nvim: Revert back to use of ESC key"
This reverts commit 957b588f15.
2020-01-25 09:00:20 +05:30
Sanchayan Maity 18292749c1 nvim: Use local leader as key prefix for LC bindings
Using 'l' sometimes lead to false trigger as we also use it as our
primary 'Right' movement key.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-24 15:25:09 +05:30
Sanchayan Maity 957b588f15 nvim: Revert back to use of ESC key
Now that we use a 60% tenkeyless mechanical keyboard it is easier to
reach the ESC key and use it. Also it seems sometimes hitting jk pretty
fast to escape does not work so easily on the mechanical keyboard.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-22 22:20:40 +05:30
Sanchayan Maity 452e24ede4 nvim: Add Slimux
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-22 22:14:04 +05:30
Sanchayan Maity 298cc6242e nvim: Update Tabularize mappings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-21 21:27:59 +05:30
Sanchayan Maity dd6334984a nvim: Remove conflicting binding with LC
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-20 21:31:06 +05:30
Sanchayan Maity d250fc507e nvim: Remove conflicting Tabularize mapping reported by checkhealth
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-19 20:08:13 +05:30
Sanchayan Maity f1ba148d9d nvim: Add a LC key binding & remove a conflicting one
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-19 20:05:52 +05:30
Sanchayan Maity 4a18370609 nvim: Put window resize in autocmd group
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-19 19:48:28 +05:30
Sanchayan Maity c3bda249af nvim: Add Neomake shortcut for firing stack build
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-19 19:08:47 +05:30
Sanchayan Maity f82abc12a3 nvim: Remove deoplete plugin for Rust and Python
Now that we rely on Language Client, we do not need deoplete specific
completion plugins for Python or Rust.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-18 18:12:10 +05:30
Sanchayan Maity a42da14022 nvim: Add support for Vista
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-18 17:57:39 +05:30
Sanchayan Maity a18da66dc4 nvim: Use hasktags instead of fast-tags
hasktags seems to better as it seems to be recognized by tools like
Vista and gives a proper 'Tagbar' structure for tags.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-18 17:55:20 +05:30
Sanchayan Maity ffb2b5288e nvim: Add shortcuts for enabling & disabling Neomake
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-18 15:32:55 +05:30
Sanchayan Maity e696cbfde3 nvim: Add LSP support
Though we had removed this earlier bring it back. It saves the hassle of
having different plugin, packages or bindings for different languages.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-18 15:02:28 +05:30
Sanchayan Maity adc85a9f34 nvim: Use ; for commands in visual mode as well
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-16 15:59:30 +05:30
Sanchayan Maity 26bb3388d0 nvim: Let jedi show call signatures in command line
Call signatures being shown as pop up in buffer just are too intrusive
and mess things up.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-16 09:28:21 +05:30
Sanchayan Maity 57ddf41dfd nvim: Invoke neomake only after writing a file
It becomes extremely annoying if neomake keeps getting invoked even
before we have finished writing some sensible code and then saved the
file. So let neomake be invoked automatically only when we save a file.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-15 12:57:23 +05:30
Sanchayan Maity 5497c1b1b6 nvim: Switch to QF for cscope
While we have gone back and forth between quickfix and fzf for cscope,
it makes sense for cscope results to be loaded in quickfix window.
Results loaded in fzf window will disappear once selected since that's
how fuzzy finding is used but we do not want to have that behaviour with
results of tools like cscope. Also use a plugin this time instead of
having our own function. The plugin also provides the added advantage of
jumping to a global definition instead of even opening that in a window.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-15 09:46:56 +05:30
Sanchayan Maity 17da7b62ec nvim: Disallow docstring window to popup during completion
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-14 20:58:15 +05:30
Sanchayan Maity 939486ef54 nvim: Add diffconflicts plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-13 19:26:04 +05:30
Sanchayan Maity 58f66d6d62 nvim: Update some FZF bindings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-13 15:16:33 +05:30
Sanchayan Maity 04f63d2a19 nvim: Add FZF MRU plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-13 14:30:48 +05:30
Sanchayan Maity 495e537e08 nvim: Cleanup & remove things we do not need
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-11 21:05:54 +05:30
Sanchayan Maity 617138019d nvim: Minor rearrangement
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-08 17:31:18 +05:30
Sanchayan Maity 27f165d8c3 nvim: Add pandoc support
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-07 09:02:43 +05:30
Sanchayan Maity a3777e9d45 nvim: Miscellaneous cleanups & improvements
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-06 19:39:10 +05:30
Sanchayan Maity ef32c9c6d9 nvim: Fix colors in terminal
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-06 19:12:24 +05:30
Sanchayan Maity d8778f264b nvim: Update vim-plug
While at it, ignore old plug file artifact.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-06 16:01:19 +05:30
Sanchayan Maity aef4a3c885 nvim: Use floating window for cscope fzf output
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-06 15:58:22 +05:30
Sanchayan Maity e951bb849f nvim: init.vim: Setup ghcid/hoogle based on environment
We may be running in a nix environment or without stack supported
project. Check this and setup the environment variable for ghcid and
hoogle plugin accordingly.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-01 12:18:30 +05:30
Sanchayan Maity e2c94e87d6 nvim: init.vim: Use of K conflicts with document access
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-01 12:15:55 +05:30
Sanchayan Maity 7200bbece7 Switch to using stow for dotfiles management
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-31 14:18:38 +05:30
Sanchayan Maity d113ff9d6b nvim: init.vim: Remove netrw settings
vinegar seems to behave weirdly if these settings are in place. For
example, each invocation of '-' results in a new netrw window and it
persists unless explicitly closed.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-31 12:13:40 +05:30
Sanchayan Maity a42cc7bba7 nvim: init.vim: Use custom bindings for smoothie
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-30 20:22:28 +05:30
Sanchayan Maity 05a281029f nvim: init.vim: Remove unimpaired
unimpaired plugin adds more than 15ms of load time and sometimes 20+ms
have also been seen. Not worth it. Just steal or modify some of the
bindings we care about.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-30 19:46:15 +05:30
Sanchayan Maity e727452726 nvim: init.vim: Fix binding for save
w is for word motion. Do not use it without leader.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-30 19:15:26 +05:30
Sanchayan Maity 83b5ba6487 nvim: init.vim: Remove fzf installation
Now that we do not need to take care of shitty ubuntu, remove fzf
install. On ubuntu, having a system installed fzf seemed to not work
with the fzf plugin.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-30 18:04:08 +05:30
Sanchayan Maity 8fcb0af80c nvim: init.vim: Reintroduce vim-vinegar
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-30 17:29:20 +05:30
Sanchayan Maity 4a640413a7 nvim: init.vim: Minor cleanup
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-30 17:07:11 +05:30
Sanchayan Maity fd9df06b50 nvim: init.vim: Remove some more leader usage
Follow in the foot steps of commit 4ebc8f3 and remove some more usage of
leader key.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-30 16:45:21 +05:30
Sanchayan Maity 037496f1e7 nvim: init.vim: Update some purescript related stuff
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-30 16:31:52 +05:30
Sanchayan Maity 4ebc8f3788 nvim: init.vim: Use vim-unimpaired & improve bindings
unimpaired provides some helpful bindings so use that. Remove redundant
bindings like the ones for quickfix & location list due to use of
unimpaired. It also provides consistent bindings across the board.

While at it, reduce the use of leader key. The idea behind using leader
key everywhere was taken since we migrated from spacemacs, However, for
non-conflicting bindings it's better to have a hit as few keys as
possible, so remove leader from few of the earlier bindings.

To see list of all mappings, use '9verbose nmap <key>'.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-30 16:29:11 +05:30
Sanchayan Maity df07def242 nvim: init.vim: Remove gdefault
It's also deprecated and not recommended to use.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-30 12:05:31 +05:30
Sanchayan Maity 1259c43e4d nvim: init.vim: Add awk-ward plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-29 15:55:04 +05:30
Sanchayan Maity 495aa26e7f nvim: init.vim: Setup deoplete completion for Purescript
Also allow auto imports from PSC IDE.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-28 13:36:00 +05:30
Sanchayan Maity df3b9f5b0b nvim: init.vim: Cleanup indentation defaults autocmd group
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-28 11:29:08 +05:30
Sanchayan Maity 13d5041a8a nvim: init.vim: Fix & update purescript key bindings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-28 11:28:26 +05:30
Sanchayan Maity fb96c1af6c nvim: init.vim: Use local leader for Haskell & C maps 2019-12-24 13:57:05 +05:30
Sanchayan Maity ca4b9f57f6 nvim: init.vim: Switch from comfortable motion to smoothie 2019-12-24 08:50:36 +05:30
Sanchayan Maity 2ea68f3b4f nvim: init.vim: Add helpers for tabular 2019-12-24 08:44:27 +05:30
Sanchayan Maity bc587c5991 nvim: init.vim: Update miscellaneous plugins
Couldn't really figure out how to use vim easy align, so just chuck it.
Add tabular & indentline.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-23 22:32:42 +05:30
Sanchayan Maity 5486336845 nvim: init.vim: Remove scheme plugin maps
We have SLIMV now and not the earlier scheme plugin.
2019-12-23 15:10:16 +05:30
Sanchayan Maity 0fd5af5978 nvim: init.vim: Remove leftover hardtime configuration 2019-12-23 15:06:28 +05:30
Sanchayan Maity fcb1ea960e nvim: init.vim: Update bindings
Try to use same bindings for common operations like jump to definition
and other code navigation operations across languages.
2019-12-23 11:24:43 +05:30
Sanchayan Maity bdf2f541b5 nvim: init.vim: Set keyword for Haskell filetypes to hoogle 2019-12-23 10:48:42 +05:30
Sanchayan Maity 4f0b45ac96 nvim: init.vim: Update textwidth settings globally & gitcommit
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-21 20:24:16 +05:30
Sanchayan Maity 0b9e52ffe4 nvim: init.vim: Switch to vim-commentary
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-21 12:30:44 +05:30
Sanchayan Maity e66a137b4f nvim: init.vim: Use SLIMV
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-15 16:14:53 +05:30
Sanchayan Maity c80bb00a55 nvim: init.vim: Revert back to using cscope with fzf
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-12 19:41:53 +05:30
Sanchayan Maity 77f5543f45 nvim: init.vim: Remove hard time
For code browsing j & k keys are required. Using Ctrl-d/e
combination to scroll becomes unwieldy.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-12 18:28:31 +05:30
Sanchayan Maity 13af45b091 nvim: init.vim: Set inccommand 2019-12-12 09:52:35 +05:30
Sanchayan Maity 350a66948d nvim: init.vim: Add neoformat
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-11 22:03:32 +05:30
Sanchayan Maity 7480ddff24 nvim: init.vim: Add default netrw settings 2019-12-11 09:08:52 +05:30
Sanchayan Maity 7fa8b136eb nvim: init.vim: Remove vim-vinegar
For some reason, vinegar bindings are not working. And there is no
point in debugging this.
2019-12-11 09:08:38 +05:30
Sanchayan Maity 4c4517c71f nvim: init.vim: Fix Neomake for C
Taken from
https://github.com/neomake/neomake/issues/1027

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-10 21:53:25 +05:30
Sanchayan Maity 9dfacd2c7b nvim: init.vim: Add Purescript support 2019-12-10 15:38:30 +05:30
Sanchayan Maity 58e5137876 nvim: init.vim: Add jedi-vim
Show Pydocs feature in deoplete jedi does not seem to consider
the complete word. For example, os.path.splitext placing cursor
on splitext seems to give an error. Same works in jedi-vim. Do
not use completions from jedi-vim though.
2019-12-10 12:29:13 +05:30
Sanchayan Maity e08b4113f0 nvim: init.vim: More easymotion settings
With easymotion makes quick-scope is not required.
2019-12-10 10:52:04 +05:30
Sanchayan Maity d832758501 nvim: init.vim: Add easy align plugin 2019-12-10 08:51:12 +05:30
Sanchayan Maity fe96f3ae1a nvim: init.vim: Update key bindings 2019-12-10 08:45:33 +05:30
Sanchayan Maity 4de4c74d5b nvim: init.vim: Spell lang seems to give error
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-09 19:16:59 +05:30
Sanchayan Maity e86154f9e1 nvim: init.vim: Add missing shortcut for Rg
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-09 18:49:11 +05:30
Sanchayan Maity 2a5e0f8a73 nvim: init.vim: Add vim-hardtime
Time to improve our vim chops.
2019-12-09 14:45:37 +05:30
Sanchayan Maity 2ffb605c11 nvim: init.vim: Add targets plugin 2019-12-09 09:46:29 +05:30
Sanchayan Maity a797230085 nvim: init.vim: Add fzf plugin explicitly
Without this, it seems to not work on Ubuntu even with latest
neovim and pynvim. On Manjaro, this was not a problem.
2019-12-09 09:17:30 +05:30
Sanchayan Maity c9715c9b69 nvim: init.vim: Remove vim-agriculture
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-08 19:28:19 +05:30
Sanchayan Maity 1885132796 nvim: init.vim: Add ultisnips
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-08 17:51:33 +05:30
Sanchayan Maity 0527052815 nvim: init.vim: Cleanup autocmd groups
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-08 12:24:17 +05:30
Sanchayan Maity 51d0f409b6 nvim: init.vim: Add localleader for which-key
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-07 17:22:34 +05:30
Sanchayan Maity 01470159ef nvim: init.vim: Use floating window for FZF
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-07 15:14:39 +05:30
Sanchayan Maity f98349ed99 nvim: init.vim: Add org mode
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-07 15:08:10 +05:30
Sanchayan Maity ec669640a9 nvim: init.vim: Add some more key bindings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-06 22:21:52 +05:30
Sanchayan Maity 5984a6d528 nvim: init.vim: Switch back to fzf
Since fzf comes installed by default on Manjaro i3 and we
need some fuzzy finder on command line anyways switch to
it. The additional helpers around fzf cannot be ignored.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-06 21:05:31 +05:30
Sanchayan Maity 6a445e6685 nvim: init.vim: Update deoplete options 2019-12-06 14:05:03 +05:30
Sanchayan Maity bbecfe66ca nvim: init.vim: Add better syntax highlighting options for C & CPP 2019-12-06 10:31:46 +05:30
Sanchayan Maity a0ab5d020b Revert "nvim: init.vim: Switch to pencil colorscheme"
This reverts commit e5a3fee955.
2019-12-06 09:20:09 +05:30
Sanchayan Maity e5a3fee955 nvim: init.vim: Switch to pencil colorscheme 2019-12-06 08:56:27 +05:30
Sanchayan Maity c17cc61f6f nvim: init.vim: Set background
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-05 22:19:30 +05:30
Sanchayan Maity 3250980b83 nvim: init.vim: Add auto pairs & incsearch 2019-12-05 15:07:11 +05:30
Sanchayan Maity 3036a0300a nvim: init.vim: Group key bindings as per filetype 2019-12-05 14:25:46 +05:30
Sanchayan Maity 47739fc256 nvim: init.vim: Miscellaneous additions & improvements 2019-12-05 13:57:06 +05:30
Sanchayan Maity edc425c029 nvim: init.vim: Remove merginal 2019-12-05 12:25:05 +05:30
Sanchayan Maity 4549f10038 nvim: init.vim: Add more gitgutter settings 2019-12-05 11:04:23 +05:30
Sanchayan Maity 51470fbcf6 nvim: init.vim: Add vim which key 2019-12-05 10:42:09 +05:30
Sanchayan Maity d1264962a9 nvim: init.vim: Remove gutentags
We will just fire a tag generation command ourselves with Neomake.
No need for gutentags. It isn't smart anyways to work for multiple
languages and doesn't work on repos like gst-build.
2019-12-04 14:15:27 +05:30
Sanchayan Maity 236048fb2f nvim: init.vim: Group the configurations 2019-12-04 12:38:00 +05:30
Sanchayan Maity a2e5730165 nvim: init.vim: Switch to LeaderF
Ditch our plans to have vimscript only plugins. This seems to provide
much more functionality than clap & we are dependent on pynvim anyways
because we are gonna keep using deoplete.
2019-12-04 12:20:57 +05:30
Sanchayan Maity 6ca10e38b2 nvim: init.vim: Let terminal job id be echoed to status line 2019-12-04 11:19:18 +05:30
Sanchayan Maity e03e64dd56 nvim: init.vim: Add shortcut for Merginal 2019-12-04 10:45:21 +05:30
Sanchayan Maity ec14943f55 nvim: init.vim: Add vim-slime 2019-12-04 10:42:45 +05:30
Sanchayan Maity fc225d7dd8 nvim: init.vim: Minor updates to airline 2019-12-04 07:59:57 +05:30
Sanchayan Maity 83d381942f nvim: init.vim: Remove twiggy & switch to merginal
Twiggy does not seem to work with fish shell. See the below
issue and considering that it has been open since more than
a year does not look likely to be solved.
https://github.com/sodapopcan/vim-twiggy/issues/7

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-03 21:25:11 +05:30
Sanchayan Maity 89d199f2b7 nvim: init.vim: Miscellaneous fixes
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-03 18:12:36 +05:30
Sanchayan Maity a3501508ba nvim: init.vim: Improve startup time
https://github.com/hyiltiz/vim-plugins-profile
Use vim-plug lazy loading functionality to decrease start time.
erlang tags plugin seems to have been the major culprit.

Before:
python3 vim-plugins-profile.py -p nvim
Running nvim to generate startup logs... done.
Loading and processing logs... done.
Plugin directory: /home/sanchayan/.config/nvim/plugged
=====================================
Top 10 plugins slowing nvim's startup
=====================================
1        54.910   vim-erlang-tags
2         5.667   vim-sexp
3         4.000   vim-airline
4         3.672   vim-easymotion
5         3.433   nerdcommenter
6         2.914   neomake
7         1.884   vim-monokai
8         1.448   vim-gitgutter
9         0.968   vimtex
10        0.896   vim-fugitive
=====================================
Plotting result... done.

After:
python3 vim-plugins-profile.py -p nvim
Running nvim to generate startup logs... done.
Loading and processing logs... done.
Plugin directory: /home/sanchayan/.config/nvim/plugged
=====================================
Top 10 plugins slowing nvim's startup
=====================================
1         4.697   vim-airline
2         3.705   vim-easymotion
3         3.354   nerdcommenter
4         3.101   neomake
5         1.892   vim-monokai
6         1.599   vim-gitgutter
7         0.909   vim-fugitive
8         0.869   vimtex
9         0.630   supertab
10        0.491   deoplete.nvim
=====================================
Plotting result... done.
2019-12-03 15:00:29 +05:30
Sanchayan Maity ff65606652 nvim: init.vim: Man page support is included by default in neovim
Signed-off-by: Sanchayan Maity <sanchayan.maity@harman.com>
2019-12-03 14:10:29 +05:30
Sanchayan Maity ad991c0b12 nvim: init.vim: Add shortcut for generating tags in Haskell project 2019-12-03 11:29:52 +05:30
Sanchayan Maity b9e7a26560 nvim: init.vim: Enable vim-togglelist
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-02 22:12:00 +05:30
Sanchayan Maity 0a9b5e78ca nvim: init.vim: Reintroduce QFGrep for cscope
Commit 6a26c59f removed Quickfix + QFGrep enhancement for
cscope since we wanted to use fzf and later skim. However,
since we now want to have as much as possible only pure
vimscript dependencies, reintroduce this so we need not
depend on fzf or any external fuzzy search tool anymore
with our recent usage of vim-clap.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-02 19:54:02 +05:30
Sanchayan Maity b3ac08c56f nvim: init.vim: Do not load sessions while explicitly loading a file
Also remove spell lang for git commits as it seems to complain
about them.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-02 18:03:32 +05:30
Sanchayan Maity 960af2006a nvim: init.vim: Remove rooter
Rooter seems to effect the cscope & fzf integration.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-02 16:52:53 +05:30
Sanchayan Maity 9dd0ad4e87 nvim: init.vim: Switch to vim-clap
vim-clap seems to be much nicer and has better integration
with the floating window feature of neovim.

Use fzf again since we need cscope integration. Eventually
we would like to have a cscope provider for clap. Also fzf
seems to be installed by default on Manjaro i3.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-02 16:52:42 +05:30
Sanchayan Maity 7db7083a37 nvim: init.vim: Miscellaneous improvements
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-02 11:25:12 +05:30
Sanchayan Maity adb1e875f2 nvim: init.vim: Remove rust-doc as it does not help
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-02 08:48:04 +05:30
Sanchayan Maity 09bf6ef4c4 nvim: init.vim: Add rustdoc and format on autosave
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-01 22:00:38 +05:30
Sanchayan Maity 1e5b19d740 nvim: init.vim: Miscellaneous cleanups
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-12-01 21:31:18 +05:30
Sanchayan Maity bdae1542b0 nvim: init.vim: Modify key bindings as recommended by plugin docs
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-27 19:31:03 +05:30
Sanchayan Maity 92c9516ab4 nvim: init.vim: Remove vim swoop
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-27 16:32:39 +05:30
Sanchayan Maity 6fbc3fae0f nvim: init.vim: Add comfortable motion
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-27 13:03:51 +05:30
Sanchayan Maity 754f80a43e nvim: init.vim: Miscellaneous improvements
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-27 12:58:41 +05:30
Sanchayan Maity 9e7dcba80a nvim: init.vim: Autoresize window
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-26 19:53:18 +05:30
Sanchayan Maity b304adcfdd nvim: init.vim: menuone is not we need in completeopt
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-25 21:46:54 +05:30
Sanchayan Maity e9941f935a nvim: init.vim: Switch to vim-workspace
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-25 21:45:20 +05:30
Sanchayan Maity 0c607cf1ce nvim: init.vim: Update format options
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-25 21:04:56 +05:30
Sanchayan Maity c5af132ec6 nvim: init.vim: Open fuzzy search results in floating window
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-25 15:38:36 +05:30
Sanchayan Maity 1f28479f98 nvim: init.vim: Fix tabbing in deoplete
Use supertab to fix tabbing in deoplete which is backward
and change completeopt.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-25 15:38:00 +05:30
Sanchayan Maity 9836b05e6a nvim: init.vim: Add deoplete-tag for tag based completions
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-25 14:20:08 +05:30
Sanchayan Maity 9bf38af00a nvim: init.vim: Add better syntax highlighter for Python
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-24 21:06:04 +05:30
Sanchayan Maity 64db0550c1 nvim: init.vim: Miscellaneous settings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-24 18:59:44 +05:30
Sanchayan Maity cc0e78bf1f Change escape key binding for escaping from terminal
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-23 20:50:03 +05:30
Sanchayan Maity aa8e6dfd18 nvim: init.vim: Disable escape in command mode as well
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-22 17:17:34 +05:30
Sanchayan Maity 99149dbe36 nvim: init.vim: Add quickfix reflector 2019-11-20 15:24:19 +05:30
Sanchayan Maity 5ab23c2bdd nvim: init.vim: Remap escape keys 2019-11-20 11:44:47 +05:30
Sanchayan Maity dfecf742a7 nvim: init.vim: Increase hoogle search count
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-19 20:38:00 +05:30
Sanchayan Maity aa23738970 nvim: init.vim: Add some more nerdtree shortcuts 2019-11-19 10:48:40 +05:30
Sanchayan Maity a32d244694 nvim: init.vim: Remove redundant cscopemaps 2019-11-18 13:54:30 +05:30
Sanchayan Maity d8faed50e3 nvim: init.vim: Switch to skim from fzf 2019-11-18 12:25:56 +05:30
Sanchayan Maity 87db61b102 nvim: init.vim: Add shortcuts for splits 2019-11-18 11:13:27 +05:30
Sanchayan Maity d2c059bb40 nvim: init.vim: Disable ex mode and swap & backup files 2019-11-18 10:45:12 +05:30
Sanchayan Maity f4f9cfe0e6 Remove buffergator & use buffer numbers
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-16 20:36:31 +05:30
Sanchayan Maity 135b3ec154 nvim: init.vim: Do not trigger neomake on BufWinEnter
Triggering neomake on BufWinEnter auto command becomes a
problem if the make program does not exist. In Haskell, if
for a project hlint is not installed using stack, opening
the editor stalls.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-16 20:00:48 +05:30
Sanchayan Maity e35e64bb05 nvim: init.vim: Miscellaneous key bindings and package updates 2019-11-05 11:48:13 +05:30
Sanchayan Maity b950eb70da nvim: init.vim: Enable vim-crates plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-04 19:45:41 +05:30
Sanchayan Maity fb0671128e nvim: init.vim: Add Hoogle & Hspec support
While at it also goodie shortcuts for Ghcid and hoogle.
2019-11-04 11:29:31 +05:30
Sanchayan Maity 3bdc90b523 nvim: init.vim: Enable ghcid
When we enabled ghcid before it did not work as we did not
set the command which it should use for starting ghcid. Fixed
now and it is working awesome!!!
2019-11-04 10:12:38 +05:30
Sanchayan Maity 8dad0c1949 nvim: init.vim: Key bindings for all fzf niceties
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-03 19:54:53 +05:30
Sanchayan Maity 6fb728b503 Revert "nvim: init.vim: Use neovim-ghci"
This reverts commit 07dffc32f4.
2019-11-02 21:02:06 +05:30
Sanchayan Maity 07dffc32f4 nvim: init.vim: Use neovim-ghci
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-01 22:47:33 +05:30
Sanchayan Maity 83469d1496 nvim: init.vim: Switch to Edward Kmett's version
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-01 22:21:35 +05:30
Sanchayan Maity bd107791a1 nvim: init.vim: Remove Intero
Intero can't even do jump to definition or reliably tell
me the types. Nuke it.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-01 22:18:05 +05:30
Sanchayan Maity 0dd3456d66 Add shortcuts for Neomake
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-11-01 15:28:46 +05:30
Sanchayan Maity 21ba6a5c2b nvim: init.vim: Integrate cscope & fzf
Since we can load results of cscope in fzf we no longer
need quickfix & cscope integration.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2019-10-30 22:42:33 +05:30