Commit graph

1056 commits

Author SHA1 Message Date
ed8fd2a359 nvim: plugins: Drop textobj-word-column
Does not seem to work as expected due to possible conflict with targets.
2021-05-14 17:12:58 +05:30
e909c059a4 nvim: modules: completion: min_length needs to be 2
This is required if we want completion to trigger on identifiers like
'if' to be able to select snippets.
2021-05-14 16:34:25 +05:30
08df60f731 nvim: after: git/fugitive: Add settings and mappings to not leave buffers behind 2021-05-14 16:34:25 +05:30
a9c91c06e4 nvim: autoload: git: Use bwipeout instead of bdelete
Really delete the buffer. If bdelete is used, we can still go back to
the previous buffer using <C-^> which we do not want. Basically we do
not want a fugitive git buffer to become alternate-file.

See :help alternate-file.
2021-05-14 16:33:45 +05:30
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
7767b23f69 nvim: plugins: Drop conflict-marker
We have been mostly relying on diffconflicts plugin to resolve merge
conflicts. For complex merge conflicts, it becomes difficult to
understand which conflict hunk to pick. The syntax highlighting also
stopped taking effect due to treesitter probably. So just drop this.
Introducing a mapping to jump among conflicts would be helpful.

We let the syntax highlighting entries in our color scheme be, just
in case we decide to revisit this.
2021-05-14 13:13:43 +05:30
d3a0883851 nvim: Update packer 2021-05-14 10:25:01 +05:30
e24fc200ec nvim: Add support for using snippets 2021-05-13 21:07:42 +05:30
ca46007f89 nvim: lsp: Debounce didChange notifications to the server 2021-05-13 21:07:42 +05:30
1c9b8aae40 nvim: plugins: Add support for Coq 2021-05-13 19:38:37 +05:30
1ba2fee97d nvim: after/ftplugin: javascript: Add keymapping to invoke prettier
Different prettier versions format differently. Add a keymapping to
invoke the project local prettier. Using Neoformat prettier uses the
global install prettier which can give different results.
2021-05-13 17:01:29 +05:30
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
d2889ad053 nvim: init: Use lua style code for sneak settings 2021-05-12 18:38:59 +05:30
c768cd89f1 nvim: lsp: Remove LSP workspace mappings
We never seem to need those.
2021-05-12 18:06:12 +05:30
2eea1feb69 nvim: keymappings/plugins: Add support for marks and registers
We drop vim-system-copy and will explicitly use registers when required.
Add nvim-peekup to help with registers and vim-signature for marks. Some
additional helper bindings for working with marks are added as well.
2021-05-12 18:06:12 +05:30
49c9fd9a2c nvim: modules: workspace: Drop key mapping for toggling workspace
Rather than waste a key mapping starting with 'p', we can call this
ourselves when required.
2021-05-12 18:06:12 +05:30
0d806355ab nvim: keymappings: Add helpful mappings for visual block shift & buffer copy 2021-05-08 14:40:12 +05:30
16a797df6f nvim: modules: fzf: Use the leader 'fm' mapping for marks 2021-05-08 14:40:04 +05:30
048095bb2e nvim: Update mappings for ferret 2021-05-08 14:40:04 +05:30
91604ca16c nvim: lsp/plugins: Add support for automatically showing fn signature 2021-05-08 14:39:58 +05:30
a899271748 nvim: plugins: Search in visual mode using * and # 2021-05-08 14:39:52 +05:30
e8a1135b24 nvim: Update packer 2021-05-08 14:39:52 +05:30
3efb1c1c94 nvim: plugins: Drop aniseed
It's really not required and we do not intend to write out nvim
configuration in fennel either. Conjure support for lisp is enough.
2021-05-08 14:39:45 +05:30
d5be9384ed nvim: lua: plugins: Update aniseed and conjure 2021-05-05 20:58:38 +05:30
f030b39a3e nvim: init: Use zathura as PDF viewer 2021-05-03 19:58:06 +05:30
b064bb14a9 nvim: lua: plugins: Add diffview
Also add a helper on lines similar to Git difftool from fugitive.
2021-05-03 19:25:38 +05:30
5ce14b4cc7 nvim: Update packer 2021-05-03 11:01:01 +05:30
e6397864d0 nvim: after: ftplugin: Fix various key mappings
Make sure we use <buffer> to make a local mapping just for the active
buffer.
2021-05-02 19:23:57 +05:30
5398b83200 nvim: after: ftplugin: Fix various auto commands usage
Fix missing clearing of auto commands in various file type plugins.
2021-05-02 19:23:57 +05:30
d7c2ca6e43 nvim: ftplugin/autoload: C: Run gst-indent on save 2021-05-02 19:23:57 +05:30
893b06defb nvim: colors: yolokai: Update color highlight for LineNr & SignColumn 2021-05-02 15:08:09 +05:30
b36197fbe8 nvim: init: Enable relativenumber 2021-05-02 13:29:38 +05:30
b6e2f23516 nvim: lua: autocmd: Fix highlight on yank autocmd
Still does not seem to work though 🤔.
2021-05-02 13:16:29 +05:30
734eda3f37 nvim: lua: statusline: Sync with galaxyline changes upstream 2021-05-01 16:37:00 +05:30
574b6f5343 nvim: Update packer 2021-05-01 10:32:08 +05:30
32fba27008 nvim: colors: yolokai: Change WhichKeySeperator color 2021-04-30 14:14:48 +05:30
3c3558b3d0 Revert "nvim: lua: plugins/colors: Switch to which-key.nvim"
This reverts commit 86de71d5da.

This plugin seems to create problems for things that should work. For
example, trying to paste with 'p' triggers which-key when it should not.
Disabling everything in setup except for Leader prefixed keys does not
work either.
2021-04-30 14:14:48 +05:30
86de71d5da nvim: lua: plugins/colors: Switch to which-key.nvim 2021-04-29 19:41:30 +05:30
07bd4e8592 nvim: lua: plugins: Drop hlslens 2021-04-29 13:41:19 +05:30
9d3efb1a3c nvim: lua: autocmd: Drop scrollbar autocmd
Should have been cleaned as part of 5058b6b.
2021-04-29 10:58:41 +05:30
9abfcaeeca nvim: Update packer 2021-04-29 10:58:41 +05:30
db6657f3ce nvim: init: Fix option settings
Some options need to be set for both vim.bo (for the current buffer) and
vim.o (for newly opened buffers). This is required till the below PR
gets merged.
https://github.com/neovim/neovim/pull/13479
2021-04-28 11:06:46 +05:30
053ddbf55e nvim: lua: plugins: Drop vim-tmux-focus-events
This plugin is now obsolete and no longer needed as both neovim and vim
(since version 8.2.2345) have native support for this functionality.
2021-04-28 10:58:39 +05:30
10237ec093 nvim: lua: plugins: Drop nvim-bqf and add back QFEnter
With nvim-bqf when opening the quickfix list, it jumps around the opened
buffers. For example, when calling LSP reference on a variable in buffer
one, it jumps to buffer three after the quickfix list opens. This is
annoying, so dump it. The preview feature has not been that helpful
anyways.
2021-04-28 10:58:12 +05:30
5005a2b558 nvim: Update packer 2021-04-28 10:58:12 +05:30
b9e5fb64bf nvim: fugitive: Refactor and add some more git helpers 2021-04-27 09:29:41 +05:30
baa70ee678 nvim: keymappings: Add a useful mapping for closing tabs 2021-04-22 10:55:37 +05:30
82bc7524b1 nvim: Update packer 2021-04-20 11:32:14 +05:30
c8b64ae94f Revert "nvim: keymappings: Do not use 'jk' for Esc anymore"
This reverts commit 915a5427e3.
2021-04-19 12:20:00 +05:30
765eec81b6 nvim: after: fugitive: Update key mappings 2021-04-19 12:20:00 +05:30
66213e0d06 nvim: modules: floaterm: Drop binding for lazygit
Fugitive actually has everything one needs on a daily basis.
2021-04-19 12:20:00 +05:30
7363f20681 nvim: Update packer 2021-04-19 11:18:40 +05:30
915a5427e3 nvim: keymappings: Do not use 'jk' for Esc anymore
With 60% keyboard, Esc is easier to hit and in sway, may be we should
map Caps to Esc.
2021-04-07 20:31:37 +05:30
cdd87b94d8 nvim: Update packer 2021-04-07 20:31:30 +05:30
39aaa2fd5c nvim: Update conjure to the new release 2021-04-02 20:05:53 +05:30
5b8fc42e29 nvim: Update packer 2021-03-30 11:25:37 +05:30
d197d0b1b7 nvim: Update packer 2021-03-25 11:10:12 +05:30
90d6c8681d nvim: Update packer 2021-03-23 10:46:45 +05:30
ff7e6f524c nvim: git/fugitive: Add helper for git branch and checkout 2021-03-19 12:15:52 +05:30
3b2e3adee1 nvim: plugins: Enable support for guile 2021-03-10 21:36:55 +05:30
8943ecf656 nvim: plugins: Update conjure and aniseed 2021-03-10 21:36:55 +05:30
05a87e36a8 nvim: plugins: Switch from parinfer to vim-sexp 2021-03-10 21:36:55 +05:30
e8ef3a4ded nvim: lsp: Enable typescript language server
Need it for some work stuff :(.
2021-03-10 21:36:55 +05:30
b6aae8d570 nvim: Update packer 2021-03-09 10:54:21 +05:30
d601e558da nvim: Update packer 2021-03-06 12:25:50 +05:30
3707429737 nvim: lsp: Update LSP key bindings 2021-02-25 17:53:45 +05:30
7360f65e2f nvim: lsp: Enable python language server 2021-02-25 17:35:50 +05:30
eff13b5225 nvim: yolokai: Sync with upstream nvim-highlite 2021-02-25 13:27:28 +05:30
abd22a73db nvim: treesitter: Enable some more languages with treesitter 2021-02-25 12:32:05 +05:30
060fc1d41c nvim: init: Make cursor line always be in the middle of the window 2021-02-22 14:44:10 +05:30
c9526d8997 nvim: Drop vim-smoothie 2021-02-22 14:23:01 +05:30
d3cbc0307a nvim: Update packer 2021-02-19 11:06:20 +05:30
ae391080a1 nvim: Sync nvim-compe settings with upstream 2021-02-18 19:07:13 +05:30
47e40e765d nvim: Add support for inserting visual block to anywhere 2021-02-16 20:38:03 +05:30
fa940ca9e6 nvim: Update packer 2021-02-16 19:47:09 +05:30
d9cd7d6d1f nvim: Update packer 2021-02-12 00:49:47 +05:30
ad0db79b4f nvim: Update packer 2021-02-10 11:26:22 +05:30
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
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
51b848d1f6 nvim: lua: completion: Enable treesitter completion with nvim-compe
compe recently added completion support with treesitter. Enable it.
2021-02-05 13:58:11 +05:30
0981238a3c nvim: ftplugin: haskell: Clean up hoogle settings
Should have been cleaned up as part of 14ebb51f9f.
2021-02-04 23:29:30 +05:30
75f5b0d63e nvim: lua: plugins: Drop QFEnter
Now that we use nvim-bqf it already provides opening a quickfix entry in
either of tab, split or vsplit. So drop QFEnter.
2021-02-03 16:23:31 +05:30
cddc40f842 nvim: Update packer 2021-02-03 14:42:36 +05:30
a18a122b97 nvim: lua: lsp: Drop lspfuzzy
Now that we are using nvim-bqf, we have a nicer interface to quickfix
list and nvim-bqf also integrates fzf mode. So drop lspfuzzy.
2021-02-02 20:28:51 +05:30
cb6eef2314 nvim: lua: lsp: Drop lsp-status
We use galaxyline for the status line and it already provides
LSP diagnostics info. So drop lsp-status. While the progress
message during the loading in status line is nice, may be will
incorporate it later by picking only the required pieces.

While at it, expose all diagnostics via statusline using galaxyline
components.
2021-02-02 20:13:07 +05:30
9918959aa2 nvim: Switch to nvim-compe 2021-02-02 18:09:35 +05:30
6ef47458e2 nvim: lsp: Move the completion item symbols from completion-nvim to LSP 2021-02-02 17:33:21 +05:30
5c2d83a833 nvim: Update packer 2021-02-02 17:33:21 +05:30
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
a23caf6d12 nvim: Introduce LISP support 2021-02-01 10:35:29 +05:30
000bd17c4c nvim: Update packer 2021-02-01 10:35:29 +05:30
a0739c3ef9 nvim: Switch back to vim-signify
vim-signify recently fixed the below issue which was a problem earlier.
https://github.com/mhinz/vim-signify/issues/345

Considering that gitsigns exhibits a problem where the complete sign
column is marked while in the middle of a rebase, switch back to using
signify.
2021-01-30 15:03:57 +05:30
7ebc88268b nvim: colors: yolokai: Update pandoc and yaml syntax highlighting
This improves the highlighting for files written in pandoc markdown.
It seems having the rainbow parentheses plugin active, results in
overwriting the syntax highlighting for URLs.
2021-01-29 11:36:46 +05:30
5b69c13505 nvim: Update packer 2021-01-28 23:36:29 +05:30
48dff4004d nvim: lua: plugins: Do not use file type loading for Haskell plugins
The syntax plugin does not seem to take an effect, when the file type
loading feature from packer is used. So, remove it.
2021-01-27 09:13:47 +05:30
1dbb82fc49 nvim: Update LSP status configuration variables 2021-01-27 09:13:47 +05:30
366688d1c3 nvim: Update packer 2021-01-27 09:13:47 +05:30
47ab28723f nvim: modules: statusline: Use srcery variant for white foreground 2021-01-22 16:10:43 +05:30
355b060aea nvim: colors: yolokai: Use srcery variant for white 2021-01-22 16:07:49 +05:30
874a2801d4 nvim: lua: plugins: Add nvim-bqf to improve quickfix 2021-01-21 10:48:59 +05:30
54b66455cd nvim: lua: modules: gitsigns: Enable hunk text objects 2021-01-17 11:50:34 +05:30
d9f8c8ce56 nvim: Update packer 2021-01-17 11:46:10 +05:30
dc4ecdb8b3 nvim: Update packer 2021-01-16 12:28:44 +05:30
14ebb51f9f nvim: plugins: Drop vim-hoogle
With LSP enabled for Haskell, we do not really need this.
2021-01-16 12:28:44 +05:30
795fe5208b Revert "nvim: Enable treesitter refactor and text objects"
This reverts commit 41f1e85929.

Enabling these two, seems to somehow result in highlighting not working
anymore. So disable them.
2021-01-14 20:05:41 +05:30
4efbec8683 nvim: treesitter: Enable some more languages 2021-01-14 20:05:41 +05:30
e62cb8f3ab nvim: Update packer 2021-01-14 10:57:02 +05:30
1307d996ac nvim: colors: yolokai: Change the delimiter color to red 2021-01-13 16:32:34 +05:30
6b6bd3c3fa nvim: colors: yolokai: Add syntax highlighting for pandoc
We might have to add more highlight groups later.
2021-01-13 16:18:07 +05:30
054b3188ce nvim: ftplugin: markdown: Update pandoc settings
Use citeproc as backend for bibliographic completion. The embedded
language setting is required to highlight the language blocks.
2021-01-13 16:16:49 +05:30
30011d5c9d nvim: Add SyntaxAttr plugin to help show highlight group under cursor 2021-01-13 16:04:27 +05:30
41f1e85929 nvim: Enable treesitter refactor and text objects 2021-01-12 16:34:52 +05:30
3e72b0f5ad nvim: Update packer 2021-01-12 16:13:08 +05:30
d0e3d43830 nvim: modules: statusline: Show file name for inactive buffer 2021-01-11 12:11:51 +05:30
757b29b026 nvim: Allow doing commits from within floating terminal
With this we can invoke git commit and not have a nested neovim
instance. This also makes 'C' option in lazygit to work properly
when lazygit is being used from the floating terminal with floaterm.
2021-01-09 17:21:17 +05:30
39405e8cab nvim: ftplugin: Add & fix mapping for jumping between changes 2021-01-09 17:01:37 +05:30
76a868c8e6 nvim: Update packer 2021-01-09 16:52:32 +05:30
fa18abaf65 nvim: Clean up init 2021-01-09 11:48:30 +05:30
94865fce59 nvim: Add customised LSP labels
Taken from
https://github.com/lukas-reineke/dotfiles/blob/master/vim/lua/lsp.lua
2021-01-08 20:44:39 +05:30
ebea44a8d4 nvim: Update packer 2021-01-06 10:35:27 +05:30
5058b6b6b0 nvim: lua: plugins: Drop scrollbar 2021-01-05 14:39:59 +05:30
494f0706bb nvim: yolokai: Update syntax highlighting
We want information messages to have orange color and warning messages
to have pink color.

Also fix the syntax highlighting for LspDiagnostics. While migrating
away from diagnostic-nvim, we did not specify the syntax highlight for
virtual text correctly, which resulted in them having just plain white
text on black background.
2021-01-04 17:03:42 +05:30
6929c30e2d nvim: yolokai: Update syntax highlighting
- TSStructure was deprecated
- TSVariable/TSVariableBuiltin/TSNamespace/TSComment seem to be newly
  introduced
- Use a different color for functions and identifiers
- Reorder alphabetically. Easier to compare against upstream doc
2021-01-04 16:03:01 +05:30
6336685b5e nvim: Update packer 2021-01-03 18:16:10 +05:30
fcbdfc31ab nvim: Fix LSP configuration
Not sure what changed in recent releases for either nvim, packer or
lspconfig plugins, but, our custom LSP configuration file seems to
not be loaded or have any effect when specified via packer's config
directive. So load it manually in init.
2021-01-01 11:56:33 +05:30
bf6f8004b9 nvim: Update packer 2020-12-28 10:39:15 +05:30
28b9b906ed nvim: Update packer 2020-12-24 21:06:02 +05:30
3f6d104eb0 nvim: markdown: Set formatting mode to hard wrap with smart auto formatting 2020-12-23 20:02:51 +05:30
f73f40f5af nvim: Drop searchlight and switch to hlslens 2020-12-23 16:38:55 +05:30
42f707adb4 nvim: Drop syntax highlighting plugins we do not need 2020-12-23 16:38:55 +05:30
dec2764e43 Revert "nvim: init: Enable virtualedit"
This reverts commit 98c0c283ee.
2020-12-23 16:38:55 +05:30
102f5c1013 nvim: Update packer 2020-12-21 10:33:18 +05:30
dfe44fb14c git/nvim: Switch to using diffconflicts for resolving merge conflicts
While we dropped diffconflicts earlier and switch to vanilla vimdiff,
two way merges are definitely better than three way merges. 3 way merge
as in gina or vimdiff is extremely confusing except for may be the
simplest of merge conflicts.

conflict-marker and diffconflicts should let us handle all cases.
2020-12-19 16:29:06 +05:30
766a429ce7 nvim: yolokai: Sync with nvim-highlite upstream 2020-12-19 09:53:09 +05:30
cf88659f30 nvim: colors: yolokai: Add highlighting for conflict-markers 2020-12-18 13:56:14 +05:30
8b8b7ec139 nvim: modules: floaterm: Add key mapping to open lazygit directly 2020-12-18 13:55:42 +05:30
97d10b6a1b nvim: modules: gitsigns: Sync settings with upstream 2020-12-16 11:26:23 +05:30
24b4c561ed nvim: Update packer 2020-12-15 10:10:26 +05:30
62553ba8c7 nvim: plugins/lua: Add lspfuzzy 2020-12-14 17:16:28 +05:30
8e07da50c9 nvim: Add pandoc support 2020-12-14 12:41:35 +05:30
77c1d52544 nvim: Update packer 2020-12-14 12:36:26 +05:30
451963c108 nvim: init: Enable python3 provider
We want to add pandoc support with vim-pandoc next and it makes use of
the python API. So enable this.
2020-12-12 17:20:10 +05:30
98c0c283ee nvim: init: Enable virtualedit
Allow cursor to be positioned even when there is no actual character.
2020-12-12 12:55:28 +05:30
515639a7ca nvim: Update packer 2020-12-12 10:50:36 +05:30
2e6e01eb2a nvim: lua: plugins: Drop edita
We added edita to be able to do interactive rebase inside neovim
terminal which Gina does not support by default.

See issue
https://github.com/lambdalisue/gina.vim/issues/276

Mostly haven't been using this, just relying on spawning a separate pane
in tmux or kitty window to do the rebase. So drop this.
2020-12-11 11:40:51 +05:30
eb8346e80f nvim: lua: lsp: Add support for incremental sync
Support for incremental sync landed in neovim with this MR.
https://github.com/neovim/neovim/pull/13371
2020-12-09 10:14:18 +05:30
ab59251f2e nvim: lua: lsp: Fix call to show line diagnostics 2020-12-08 18:35:20 +05:30
1e55c5d336 Revert "nvim: Switch to using toggleterm instead of floaterm"
This reverts commit 7ef8054d41.
2020-12-08 16:42:42 +05:30
91cc5cef03 nvim: Update packer 2020-12-08 16:42:42 +05:30
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
33dca47c05 nvim: Update packer 2020-12-07 13:05:08 +05:30
7ef8054d41 nvim: Switch to using toggleterm instead of floaterm 2020-11-25 10:29:36 +05:30
0eddbeba17 nvim: Update packer 2020-11-24 11:57:07 +05:30
b861963f9a nvim: Add tmux completion source for completion-nvim 2020-11-21 12:08:25 +05:30
9a2f273a7d nvim: Sync with nvim-highlite upstream 2020-11-21 12:08:25 +05:30
1a88bddf19 nvim: lua: plugins: No need to specify branch anymore
With this commit upstream
a68b21be60

packer can handle finding default branches by itself and does not error
out like earlier for anything named other than master.
2020-11-21 11:13:02 +05:30
50a5d55fe4 nvim: Update for nvim LSP diagnostics
The diagnostic-nvim plugin got merged upstream and as a result the
plugin is not required anymore. LSP diagnostic highlight group names
were also updated.

See the below issues for notes on migration.
https://github.com/neovim/neovim/pull/12655
https://github.com/nvim-lua/diagnostic-nvim/issues/73
2020-11-21 11:05:07 +05:30
a25d54afee nvim: Update packer 2020-11-21 11:04:30 +05:30
a4ef81590a nvim: Update packer 2020-11-20 18:28:12 +05:30
77514eaea0 nvim: Fix loading of git messenger
Relying on lazy loading on command invocation feature seems to not make the
default key bindings of the plugin take effect. Remove it.
2020-11-17 18:36:45 +05:30
7bb5343314 nvim: lua: modules: gitsigns: Add preview hunk feature now available upstream 2020-11-17 18:19:34 +05:30
432cb2c98f nvim: after: ftplugin: txt: Set textwidth to 78 2020-11-17 10:45:51 +05:30
974c399bea nvim: nvim lsp lua module name has changed upstream 2020-11-15 22:39:01 +05:30
e421b24e16 nvim: Update packer 2020-11-14 19:12:16 +05:30
be594ae121 nvim: Use nvim_command for disabling back ups and swap
Using the vim.o API seems to have no effect for these three options. Set
them via the 'nvim_command' API.
2020-11-11 19:43:18 +05:30
ee6af66c8a nvim: Do not rely on plugins.vim to load plugins
We do not really need to rely on a plugins file in 'plugin' to load the
packages using 'execute luafile'. Just do a 'require plugins' in init.lua.
2020-11-10 21:06:15 +05:30
07739669c5 nvim: modules: gitsigns: Update key map as per upstream changes 2020-11-10 15:47:09 +05:30
6b36e648d9 nvim: after: ftplugin: C: Do not enable folds 2020-11-06 12:28:17 +05:30
acb5bfcf05 nvim: ftplugin: C: Update tag generation command
For correct preview with FZFTags, this is needed to help locate the line
position of the tag.
2020-11-05 19:17:54 +05:30
7bc8295486 nvim: Clean up commands for searching word under cursor 2020-11-05 18:58:37 +05:30
801f9725b4 nvim: Add easy-align 2020-11-05 11:39:57 +05:30
7887a04d62 Revert "nvim: lua: plugins: Remove post install hook for fzf"
This reverts commit aba40d88df and also
fixes the post install hook command.

Original issue:
https://github.com/wbthomason/packer.nvim/issues/83

Fixed by:
6f9efb232a
2020-11-05 11:39:28 +05:30
81acdab631 nvim: Update packer 2020-11-05 11:17:53 +05:30
aba40d88df nvim: lua: plugins: Remove post install hook for fzf
The post install hook does not work in packer currently and has no
effect. Remove it.
2020-11-03 12:25:13 +05:30
78b781b1c8 nvim: Update packer 2020-11-03 12:00:54 +05:30
4bc376433b nvim: Drop gitjump
We can move between conflict markers using functionality from the
conflict markers plugin and we also have gina. If required just
introduce the command mapping later.
2020-11-02 14:00:30 +05:30
2c5c6b7c1a nvim: Drop tabular 2020-10-30 16:37:06 +05:30
3691d67298 nvim: Use galaxyline for statusline 2020-10-30 14:28:14 +05:30
d923915c22 Revert "colors: yolokai: Update highlight setting for sneak"
This reverts commit cb18514efc.

The previous colors were better.
2020-10-30 14:28:14 +05:30
cbd37c1856 nvim: Move to packer 2020-10-29 21:06:46 +05:30
21167993bf nvim: Use gitsigns
Currently there is an observable bug where this doesn't play well with
gina buffers. Perhaps it should be disabled for any gina buffers or
something similar.
2020-10-28 11:11:46 +05:30
d0687b7f1a nvim: Drop vim-signify
The undo hunk feature is complete garbage at the moment. Also it seems
whenever we have changes and thus signs in gutter, sometimes there is
an observable sluggishness.
2020-10-27 21:28:46 +05:30
47fcbd2233 nvim: Some consistency cleanup 2020-10-26 11:01:54 +05:30
efc8bf88b5 nvim: Except for gina migrate everything in after/plugin to lua 2020-10-24 11:06:27 +05:30
a382ca376a nvim: lua: plugins: Fix paq cleaning itself
Since PaqClean cleans up anything in packages directory that are not in
configuration, including itself, it is necessary to include paq itself
in the packages list.
2020-10-24 11:06:27 +05:30
b1c51c6e83 nvim: Migrate from vim-plug to paq-nvim 2020-10-24 11:06:27 +05:30
cb16ddec0c nvim: Refactor configuration and start moving to lua 2020-10-23 17:23:51 +05:30
8c69639144 nvim: lsp: Drop purescript language server 2020-10-23 13:34:31 +05:30
0b76ab242f nvim: Drop purescript and erlang
We do not expect to be writing either of them anytime in the near
future.
2020-10-23 13:33:11 +05:30
d5078268d0 nvim: Upgrade vim-plug 2020-10-21 11:20:43 +05:30
cb18514efc colors: yolokai: Update highlight setting for sneak 2020-10-20 13:09:19 +05:30
6bffe738c9 after: ftplugin: Set textwidth & wrapmargin to 0 for meson & configure files 2020-10-20 13:08:39 +05:30
b96f253235 yolokai: Sync with some changes in upstream nvim-highlite 2020-10-18 19:19:54 +05:30
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
84a5ec8ee9 nvim: Switch to better-whitespace
Might be better as it is faster for the common case. See comment,
https://github.com/axelf4/vim-strip-trailing-whitespace/issues/2#issuecomment-573422150
2020-10-10 13:39:54 +05:30
3e49faa46d nvim: keymappings: Drop enhanced ijump helper
This actually crashes in some situations. Drop this.
2020-10-08 14:48:06 +05:30
46ad457661 nvim: Drop vim-fetch
Never used till date, so drop it.
2020-10-08 13:08:28 +05:30
51042d4089 nvim: plugin_settings: Drop CPP syntax highlighting options
These settings where specific to syntax plugins which we do not
use anymore and should have been dropped with af410754a4.
2020-10-08 13:08:28 +05:30
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
87ebb6c160 nvim: keymappings: Add key mapping for closing tab page 2020-10-06 17:43:02 +05:30
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
2f8acc928a nvim: plugin_settings: Disable smart edit for suda
See issue
https://github.com/lambdalisue/suda.vim/issues/18
2020-10-02 12:10:16 +05:30
b092402711 nvim: config: Enable histogram based diffs 2020-09-26 10:48:00 +05:30
ad4d92f619 nvim: Upgrade vim plug 2020-09-26 10:48:00 +05:30
682c735651 nvim: after: ftplugin: Clean up Haskell 2020-09-24 17:00:06 +05:30
3bc32b2e34 nvim: after: ftplugin: Drop rust
We dropped neomake long back and this should have been dropped with
467a660409.
2020-09-24 16:55:56 +05:30
7e575f9ca4 nvim: after: ftplugin: Drop CPP
The settings done in this file where specific to syntax plugins which we
do not use anymore and should have been dropped with af410754a4.
2020-09-24 16:53:04 +05:30
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
78447af8df nvim: after: ftplugin: C: Set makeprg to ninja
For C, we now work on pulseaudio, gstreamer and pipewire projects which
all use meson and ninja, so set makeprg to ninja build command.
2020-09-22 12:58:36 +05:30
ff13f829e5 nvim: plugin_settings: Enable keymappings for scrolling preview window 2020-09-22 11:14:44 +05:30
0a20d1d3e2 nvim: Add scrollbar 2020-09-21 11:33:43 +05:30
d8fc9facec nvim/git: Use vimdiff as merge tool & drop DiffConflicts
The conflict markers plugin is what we have been using all the time and
is useful even without resorting to merge tool. Drop the DiffConflicts
plugin and use vimdiff as the merge tool if at all we need to resort to
a full 3 way merge view.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-17 10:48:11 +05:30
ded93ed2fe nvim: HLS is now supported in nvim-lspconfig
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-16 13:03:41 +05:30
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
af410754a4 nvim: Add nvim-treesitter
Drop the syntax highlight plugins for the languages for which treesitter
is now enabled.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-11 20:21:35 +05:30
9358922742 nvim: keymappings: Add key mapping for reloading buffer
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-11 20:20:33 +05:30
bfd2e9bd62 nvim: Update syntax highlighting for nvim-treesitter
All the added highlight groups in this commit are not defined upstream
in nvim-highlite. We may change this later.

While at it, remove all 'link' usages.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-10 20:59:26 +05:30
b25091fae6 nvim: Switch to signify
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-09 13:25:52 +05:30
8670913661 nvim: Add support for working with sudo
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-09 13:25:18 +05:30
b006265b14 nvim: Sync with changes to nvim-highlite upstream
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-07 12:13:33 +05:30
d59e74f588 nvim: Add support for LSP in status line
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-02 14:45:27 +05:30
99a858df26 nvim: Upstream nvim-lsp repo got renamed
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-02 13:44:24 +05:30
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
c8fe39e73e nvim: plugin_settings: Disable default keymappings for quickr-cscope
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-01 11:05:33 +05:30
b4cdd42422 nvim: init.vim: Drop tmux-complete
This does not work anymore. Probably because we dropped python and it
also does not list a source for completion-nvim. However, we can copy
anything from tmux using tmux extracto plugin to the clipboard, so
that is also a solution.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-08-29 17:00:20 +05:30
ac9d77f59b nvim: Re-introduce floaterm
Commit f977b8a while dropping all python dependencies also dropped
floaterm. However it has a dependency on python based neovim-remote
only if integration with git or floaterm is required from command line
which we do not. So add it back. Using the previous toggle bindings
with this gives a nice floating terminal which can be easily hidden.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-08-29 17:00:11 +05:30
83a6c276aa nvim: Add buffers as a completion source for completion-nvim
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-08-27 19:34:32 +05:30
2c4f5ff052 nvim: plugin_settings: Enable floating window for fzf
Commit c70ec87 dropped floating window for fzf due to golden ratio not
playing well with it. Now that we do not use golden ratio mode anymore
enable it back.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-08-26 20:22:08 +05:30
a3e7f17fa7 nvim: lua: lsp: Add key binding for LSP code action
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-08-26 12:37:31 +05:30
8128af0f4e nvim: plugin_settings: Set up some more vimtex options
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-08-25 16:27:28 +05:30
f0d863b863 nvim: init.vim: Drop support for all lisp
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-08-24 19:07:34 +05:30
1b3feefc4c nvim: Set the default tex flavour
This is required in latest releases. See :help vimtex-tex-flavor.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-08-04 17:40:56 +05:30
5b4ed5f9c6 nvim: Sync with changes to nvim-highlite upstream
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-29 13:24:20 +05:30
57b888e2dd nvim: plugin_settings: Drop tags as completion source for Haskell
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-27 18:11:00 +05:30
8e1bea3144 nvim: keymappings: Drop sudo write mapping
This really does not work. Use sudoedit.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-27 11:35:29 +05:30
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
e097977213 nvim: Upgrade vim-plug
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-21 18:17:07 +05:30
c9e61c35e7 nvim: init.vim: Add vim-wordmotion
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-17 11:54:00 +05:30
0abeb9d927 nvim: Refactor out asyncdo & completion keymappings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-14 19:15:14 +05:30
94d5c03fd7 nvim: config: Do not highlight the column any more
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-14 19:15:07 +05:30
540a83df81 nvim: keymappings: Update bindings for search and replace
Do this to avoid slowing sneak and ferret a little bit due to 's'
conflict.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-13 11:19:38 +05:30
9fe8808e7e nvim: ftplugin: haskell: Assume hasktags & hlint are available in path
We assume these are installed via nix and available globally. hasktags
and haskdogs do not build with stack on ghc8.8 and hence this switch.
With nix, haskdogs gives an issue due to locale like is also observed
when stack is installed via nix. codex does not seem to generate tags
which work.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-11 13:12:39 +05:30
f124c272c4 nvim: init.vim: Add support for word replacement while preserving case
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-09 20:57:04 +05:30
eb55c80682 Revert "nvim: init.vim: Add ALE for linting"
This reverts commit 286558f5af.
2020-07-09 19:27:47 +05:30
d6e3c1a611 nvim: plugin_settings: Disable diagnostic virtual text
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-08 15:56:43 +05:30
e4703d72f0 nvim: init.vim: Update plug links for completion & diagnostic-nvim
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-08 13:53:40 +05:30
aa99ea7e0c nvim: Drop quickui
Revert 13cea58905. This does not play well with defined color scheme and
overrides it which is annoying. The VimEnter approach mentioned did not
work, so just drop it and use preview windows as earlier.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-07 20:54:46 +05:30
8b9e46b8b8 nvim: Switch to using a color scheme template engine
Use this color scheme template to have a proper custom monokai color
scheme variant.
https://github.com/Iron-E/nvim-highlite

We will call it yolokai. YOLO monokai. While at it, drop all earlier
ones.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-07 16:34:51 +05:30
402d7e0c30 nvim: Use built in highlight yank text feature
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-02 15:38:23 +05:30
946a1c5592 nvim: Drop vim-markdown
This plugin results in the odd grey high lighting seen in floating
windows when using hover with nvim-lsp. See the below issue.
https://github.com/neovim/neovim/issues/12543

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-02 15:11:27 +05:30
d7ad845d73 nvim: init.vim: Add vim-exchange back again
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-02 14:39:59 +05:30
12009297a8 nvim: Upgrade vim-plug
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-30 20:51:49 +05:30
8a77b34ddd nvimL keymappings: Update chain completion mappings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-30 17:22:51 +05:30
71c049dbe3 nvim: plugin_settings: Drop markify settings
Should have been dropped by commit 09359cb0a0.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-27 10:39:18 +05:30
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
0c8f59bcec nvim: colors: wombat: Fix colors name
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-25 13:57:28 +05:30
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
5e4bf90f21 nvim: Drop golden-ratio
Love this plugin but it completely messes up the quickfix window. If it
did not touch the quickfix window every thing would be fine.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-24 20:15:25 +05:30
93f0fc9d3e nvim: init.vim: Add word based column text object
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-22 10:37:51 +05:30
fd606aa465 nvim: keymappings: Add enhanced helper for ijump
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-21 16:43:48 +05:30
76017dc434 nvim: keymappings: Update key mappings for tags and tabs
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-21 10:26:44 +05:30
13cea58905 nvim: Add back quickui again for floating preview windows
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-21 09:51:12 +05:30
9e8562186a nvim: plugin_settings: Fix golden ratio for floating windows
Without this setting golden ratio tries to resize floating windows which
does not work well.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-21 09:48:57 +05:30
09359cb0a0 nvim: init.vim: Drop vim-markify
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-20 17:33:03 +05:30
c6bb3ecdfc nvim: after: ftplugin: Add n & S fields when generating tags
n will tell ctags add a line number filed in each tag record
and S means including function signatures.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-20 14:46:12 +05:30
254e6754b9 nvim: after: ftplugin: qf: Always open QF window at bottom
This got mistakenly dropped by commit 8ea80b9af7.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-19 10:53:44 +05:30
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
434f24fb98 nvim: init.vim: Add fzf-checkout for fuzzy checking out branches
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-17 10:25:31 +05:30
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
7b35dd4e78 nvim: keymappings: Fix the sudo write command
We actually haven't tested this.
https://dev.to/jovica/the-vim-trick-which-will-save-your-time-and-nerves-45pg

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-16 10:47:00 +05:30
286558f5af nvim: init.vim: Add ALE for linting
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-15 11:07:27 +05:30
c70ec871ec nvim: Use golden ratio mode
Floating window for fzf does not size up nicely when using golden-ratio
so disable that.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-14 12:20:06 +05:30
8ea80b9af7 nvim: Switch to ferret & drop our bare bones grepper
See ferret's README for the advantages.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-14 11:22:03 +05:30
d662824b9f nvim: keymappings: Add key mappings for fugitive git grep
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-12 21:49:37 +05:30
a2b8d386a0 nvim: lua: lsp: Add support for peek definition
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-11 15:29:48 +05:30
ebd1bd566b nvim: lua: nvim_lsp: hls: Do not start unless hie.yaml is found
Do not start haskell-language-server unless a hie.yaml file is present
for proper multi-component support.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-09 17:26:23 +05:30
690a1bdae8 nvim: lua: Switch to haskell-language-server for Haskell
This is not available in upstream nvim_lsp repository but works with a
simple lua config addition for the same.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-05 19:42:33 +05:30
00cefaa665 nvim: config: Disable relative number & rely on sneak
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-04 18:18:22 +05:30
03f7e1ee50 nvim: plug: Upgrade vim-plug
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-04 18:03:34 +05:30
eb2415300e nvim: Drop jump and change list handling
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-04 18:02:41 +05:30
f21ea0787b nvim: Drop nvim-gdb
nvim-gdb relies on Python and we disabled Python completely sometime
back so this has not really been functional. If we feel we require it
really for some C work we will enable Python and this package again.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-04 16:57:20 +05:30
1ae0477bfb nvim: lua: lsp: Add key bindings for navigating LSP diagnostics
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-03 16:53:40 +05:30
fa04744c9a nvim: Enable purescript language server
This does not perform any better than purs ide and psc-ide-vim could not
jump to definitions in other components which is the same case here.
But, at least we now need one less package and additional bindings for
psc-ide-vim.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-03 14:26:19 +05:30
f40584b6a9 nvim: Enable LSP support for Haskell
With ghcide release v0.2.0 adding multi-component support this should
work more widely now. We still can have tags, so change the key binding
for jump to definition and drop key binding K for Hoogle.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-03 12:35:15 +05:30
01de471188 nvim: plugin_settings: Disable omni completion for Haskell
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-01 11:22:10 +05:30
490210fb98 nvim: keymappings: Change binding for creating workspace
Having it as <Leader>ws made the save binding <Leader>w slow.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-01 09:51:21 +05:30
f0dc894593 nvim: Drop supertab
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-30 12:32:51 +05:30
af01dd3351 nvim: config: Disable internal matchit
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-29 17:23:35 +05:30
4aa66a5e59 nvim: Add fzf
The only reason fzf.vim functioned till now seems to be due to the fact
that we were loading fzf.vim found in /usr/share/vim/vimfiles. Do not
rely on this and specify it in plugins.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-29 16:20:16 +05:30
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
19d00c7ac5 nvim: Add vim-fugitive for git back
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-27 20:50:06 +05:30
c42e841e3e nvim: Switch to vim-sneak
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-27 15:15:32 +05:30
4051932e7e nvim: config: Fix pumblend for wild menu
We broke this in our last clean up which meant this was not working
anymore with the given option.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-27 15:15:18 +05:30
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
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
901c4cd1fd nvim: after: ftplugin: C: Set colorscheme to wombat
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-24 19:09:48 +05:30
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
96127801a7 nvim: after: ftplugin: purescript: Update some keymappings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-24 16:15:57 +05:30
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
7a9e5f3b7d nvim: Move the QF autocmd to it's ftplugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-23 18:19:01 +05:30
5e5b331986 nvim: after: ftplugin: c: Forgot to clean up neomake here
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-23 17:08:44 +05:30
26ce7085a5 nvim: init.vim: Add OmniCppComplete
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-23 16:56:03 +05:30
8c1b5dd9b3 nvim: Add simple terminal toggle plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-23 15:48:27 +05:30
800d725c28 nvim: init.vim: Add syntax highlighting for Jenkins & Lua
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-23 14:55:04 +05:30
f977b8a246 nvim: Nuke everything Python related
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-23 14:47:16 +05:30
cdc8feecc8 nvim: Switch to completion-nvim and drop deoplete
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-23 12:36:08 +05:30
c5bf8764f6 nvim: colors: Add modified wombat color scheme
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-23 11:36:59 +05:30
a11a6d3ba2 nvim: after: ftplugin: haskell: Add a asyncdo mapping for hlint
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-22 17:55:00 +05:30
333576e90d nvim: Add vim-markify
Now that we have dropped Neomake add a simple plugin to add the
functionality of quickfix signs.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-22 17:16:52 +05:30
bc6a097739 nvim: Miscellaneous clean up
1. Clean up the remnants of Neomake and grepper config left behind
2. Drop quickui and use a custom preview function for items in QF
window stolen from floaterm plugin's author
3. Cleanups for vim default configuration settings like wildignore

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-22 15:33:11 +05:30
db58f26760 nvim: init.vim: Drop vim-haskellFold
We do not use folds.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-22 10:32:44 +05:30
e366962b4e nvim: plugin: statusline: Oops, make read only descriptive
Just R does not make any sense.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-22 10:31:54 +05:30
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
3b7326b6ed nvim: plugin: statusline: Show read only or modified status
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-21 13:17:58 +05:30
d73c9e483d nvim: Drop vim-buftabline and it's color scheme configuration
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-21 10:26:08 +05:30
df18cc7ec4 nvim: plugin: gitjump: Git jump integration with vim
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-19 15:57:53 +05:30
c1f6813a9d nvim: plugin: statusline: Drop hunk summary in status line
Hunk summary in status line has not been useful.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-19 15:33:17 +05:30
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
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
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
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
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
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
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
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
86cbd6a4a6 nvim: Update some key mappings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-12 10:19:13 +05:30
495be4683f nvim: Increase the height of fzf window
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-11 16:57:17 +05:30
1a061f6ec8 nvim: keymappings: Miscellaneous key mappings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-11 13:50:54 +05:30
01eb979b2c nvim: Drop eunuch and lastplace
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-11 11:40:42 +05:30
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
c94132b1e6 nvim: keymappings: Better behaviour for '0'
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-10 20:42:16 +05:30
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
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
2ef8a772e5 nvim: Switch to dirvish as directory viewer
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-09 17:57:40 +05:30
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
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
5e1995d731 nvim: ftplugin: gitcommit: Add diff section jump only for git commits 2020-05-09 14:17:43 +05:30
f43e74690f nvim: after: ftplugin: Add helper key bindings for git rebase 2020-05-09 12:25:58 +05:30
fa25d22481 nvim: Add git rebase helper
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-09 11:42:48 +05:30
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
80e2aa9341 nvim: Refactor neovim configuration
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-07 13:06:50 +05:30
fe35fd065c nvim: Upgrade vim-plug
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-06 10:39:55 +05:30
021c66c047 nvim: Remove unused plugin setting
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-05 17:45:54 +05:30
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
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
33148207ec nvim: Switch to jellybeans colorscheme
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-02 18:47:05 +05:30
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
47106487ac nvim: Discard GGrep
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-02 11:42:04 +05:30
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
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
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
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
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
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
470cd043d5 nvim: Add QFEnter plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-26 18:29:55 +05:30
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
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
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
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
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
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
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
42fcd983ad nvim: Disable auto completion by default
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-21 16:14:33 +05:30
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
643cdfef11 nvim: Some minor cleanups, additions and refactor
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-21 16:14:15 +05:30
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
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
68c61a7a1c nvim: Add quickui for quickfix preview
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-12 15:38:39 +05:30
0438c0a032 nvim: Update vim plug
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-12 15:37:29 +05:30
ff46041c41 nvim: Add fzf quickfix
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-08 10:22:30 +05:30
91248a4822 nvim: Remove plugins endwise, mundo and crates
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-08 09:35:40 +05:30
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
efbde43c1e nvim: Add vim any fold
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-06 21:28:24 +05:30
cc0f55cec3 nvim: Set shortcuts for setting fold methods
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-06 21:28:10 +05:30
537f3021a4 nvim: Add vim exchange
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-06 14:09:13 +05:30
5f0dbec511 nvim: Add a shortcut for invoking haskdogs
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-06 10:56:30 +05:30
6297e35f45 nvim: Add bindings for preview tags
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-06 10:08:03 +05:30
c775c0b4e8 nvim: Remove auto resize plugins
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-05 15:30:47 +05:30
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
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
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
d123b038b3 nvim: Remove custom floating window function
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-04-03 16:32:59 +05:30
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
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
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
e5399b0c02 nvim: Increase height of floating window
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-03-30 13:10:27 +05:30
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
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
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
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
730257512d nvim: Add some more text object plugins
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-03-02 19:26:54 +05:30
8bd94d224f nvim: Make sure autochdir is off
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-29 11:26:08 +05:30
c42bdf362d nvim: Add automatic window resizing plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-29 10:10:50 +05:30
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
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
065a281e7e nvim: Fix indentation
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-28 12:56:49 +05:30
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
025d0ddab3 nvim: Switch to sonokai
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-28 09:24:47 +05:30
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
edfd027067 nvim: Add vim-floaterm
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-28 09:21:28 +05:30
cfc5dfbde3 nvim: Add quickr-preview
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-26 11:14:00 +05:30
f6ea699860 nvim: Do not invoke Neomake automatically
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-26 11:03:52 +05:30
b88b5f623a nvim: Do not remap the semicolon
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-26 10:59:17 +05:30
af6a206e99 nvim: Add quick-scope plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-26 10:57:23 +05:30
c015684a60 nvim: Remove window splitting shortcuts
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-26 10:49:00 +05:30
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
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
cae810ad02 nvim: Remove line numbers
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-25 13:57:42 +05:30
605eb3898e nvim: Add another search replace helper
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-17 19:30:24 +05:30
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
61498e8115 nvim: Use vim-mergetool for merge conflicts
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-16 17:53:49 +05:30
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
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
16c20e3daa nvim: Switch to the molokai theme variant
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-15 21:07:26 +05:30
e9d699c73b nvim: Add python syntax plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-15 13:55:38 +05:30
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
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
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
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
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
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
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
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
3bd7b6e544 nvim: Add vim-lastplace
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-02-09 18:14:52 +05:30
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
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
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
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
d4815d0fbf nvim: Enable relative numbering
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-29 19:13:46 +05:30
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
293077d749 nvim: Upgrade vim-plug
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-27 21:00:42 +05:30
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
14010c552e nvim: Fix conflicting bindings in LC
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-27 18:47:23 +05:30
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
f7d7f6a328 nvim: Add racket plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-26 18:40:03 +05:30
a4782833f4 Revert "nvim: Revert back to use of ESC key"
This reverts commit 957b588f15.
2020-01-25 09:00:20 +05:30
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
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
452e24ede4 nvim: Add Slimux
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-22 22:14:04 +05:30
298cc6242e nvim: Update Tabularize mappings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-21 21:27:59 +05:30
dd6334984a nvim: Remove conflicting binding with LC
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-20 21:31:06 +05:30
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
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
4a18370609 nvim: Put window resize in autocmd group
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-19 19:48:28 +05:30
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
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
a42da14022 nvim: Add support for Vista
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-18 17:57:39 +05:30
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
ffb2b5288e nvim: Add shortcuts for enabling & disabling Neomake
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-01-18 15:32:55 +05:30
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