Commit graph

1204 commits

Author SHA1 Message Date
Sanchayan Maity 954c2ec1b3 nvim: init: Use a size of 2 for sign column
This helps to display both diagnostic signs and git gutter at the same
time. Use automatic resize keeping minimum at 1 and maximum at 2.
2021-10-16 17:31:29 +05:30
Sanchayan Maity f4fd6ab1e8 nvim: after/plugin/marks: Do not show builtin marks 2021-10-16 17:31:29 +05:30
Sanchayan Maity eb406bd1da nvim: treesitter: Drop clojure and fennel
We added them briefly but never used these.
2021-10-14 14:41:39 +05:30
Sanchayan Maity e4ac609db3 nvim: Update packer 2021-10-14 00:43:31 +05:30
Sanchayan Maity 4c6a34d07f nvim: plugins: Switch from vim-signature to marks.nvim 2021-10-14 00:43:31 +05:30
Sanchayan Maity 48d64d6de1 nvim: after/plugin/cmp: Update settings
Seems we missed a few things last time. The formatting.fields thing is
a new feature.
2021-10-12 20:15:57 +05:30
Sanchayan Maity a9efbede25 nvim: after/plugin/gdb_helper: Add helper to get breakpoint
This allows us to generate a breakpoint location we can use in the gdb
command file or on command line and also copies it to the clipboard thus
allowing us to easily paste it.
2021-10-12 14:16:37 +05:30
Sanchayan Maity e5f2fb0318 nvim: Use relative paths in dirvish
When yanking a path in dirvish buffer this setting allows us to get
relative paths instead of absolute which is default.
2021-10-12 14:16:37 +05:30
Sanchayan Maity 1f281f6bd7 nvim: after/plugin/cmp: Update nvim-cmp settings
Support for use of floating windows for completion menus landed
upstream. It introduced a new feature but also broke things. Having
native_menu set completely breaks auto completion.

While at it, add mapping for scrolling docs. Also add support for it
in color scheme.
2021-10-11 13:28:07 +05:30
Sanchayan Maity a83b07959d nvim: lsp: Drop lsp_signature
The signature help sometimes stays open even after moving away from
the function. Sometimes it conflicts with the auto completion pop-up
making it difficult to see one of the two windows.
2021-10-11 13:28:07 +05:30
Sanchayan Maity cf15054719 nvim: plugins: Add pretty Quickfix windows 2021-10-11 13:28:07 +05:30
Sanchayan Maity ac8273d9fd nvim: init: Enable cursorline
A new cursorline option 'number' seems to be available now. This would
be useful compared to the whole line.
2021-10-10 11:57:15 +05:30
Sanchayan Maity 25059ef623 nvim: lsp: Enable some additional key mappings for code actions 2021-10-10 11:57:15 +05:30
Sanchayan Maity a8d0a43556 nvim: plugins: Add toggleterm
Serves as a good replacement to floaterm.
2021-10-05 15:44:29 +05:30
Sanchayan Maity c237a19e0b nvim: plugins: Drop floaterm
See the previous commit for the reason of dropping this.
2021-10-05 12:59:43 +05:30
Sanchayan Maity 79e4022b0e nvim: plugins: Drop nvim-gdb
termdebug seems good enough so just drop this. Or we will use nvim-dap
if needed. However, termdebug should be enough really. We also just
found gdb-dashboard which seems great adding just the necessary UI bits.
2021-10-04 09:56:37 +05:30
Sanchayan Maity b7036e5bfe nvim: plugins: Drop vim-togglelist
Was never really needed. Can just use open and close for quickfix and
location list.
2021-10-03 13:10:43 +05:30
Sanchayan Maity b04ecb9541 nvim: lsp: Remove redundant capabilities settings
The required capabilities to be set are already correctly set by
nvim-cmp, no need to set them again. We had added that to enable rust
snippet expansion earlier.

Also see older revisions of this document.
https://github.com/neovim/nvim-lspconfig/wiki/Snippets
2021-10-03 12:46:40 +05:30
Sanchayan Maity cf78dcae4d nvim: lsp: Fix diagnostic errors 2021-10-02 18:49:02 +05:30
Sanchayan Maity 8aa4fc2f76 nvim: lsp: Enable shellcheck as diagnostics source for null-ls 2021-10-02 18:29:57 +05:30
Sanchayan Maity 068dfcd4b9 nvim: lsp/keymappings: Move the diagnostic key mappings outside of LSP
vim.diagnostic framework is now available and can be used outside of
LSP. This means the same functions can now work for plugins providing
diagnostics via this framework like nvim-lint and null-ls.
2021-10-02 18:29:57 +05:30
Sanchayan Maity ff93725694 nvim: treesitter: Update treesitter configuration 2021-10-02 17:19:34 +05:30
Sanchayan Maity 2ff1ba46e1 nvim: plugins: Add TSUpdate as post install hook for treesitter 2021-10-02 17:19:34 +05:30
Sanchayan Maity ef61388c72 nvim: plugins: Drop neoformat
With LSP providing formatting have not used this in more than a year.
Just drop it. Also it is pretty stupid to look for everything global &
not use language build tool to pick the correct formatter and its
configuration.
2021-10-02 17:19:34 +05:30
Sanchayan Maity 891fae907b nvim: plugin: Add a simple whitespace plugin
Now that we dropped vim-better-whitespace just add something simple to
strip whitespace if we do ever need it.
2021-10-02 16:14:31 +05:30
Sanchayan Maity 8a43a1c14f nvim: keymappings: Drop mapping to save
We have a keyboard macro to do this.
2021-10-02 13:03:12 +05:30
Sanchayan Maity 331885ea25 nvim: plugins: Drop vim-better-whitespace
Using formatter already does this, so drop it.
2021-10-02 12:45:08 +05:30
Sanchayan Maity 05194ded3a nvim: plugins: Load AnsiEsc plugin only on AnsiEsc command 2021-10-02 11:06:23 +05:30
Sanchayan Maity 95d5a10abc nvim: plugins: Drop SyntaxAttr 2021-10-02 11:06:23 +05:30
Sanchayan Maity ae4edc5bed nvim: plugins: Drop unneeded text object plugins 2021-10-02 10:05:12 +05:30
Sanchayan Maity 6613689352 nvim: after/plugin/which-key: Add triggers blacklist
We have some mappings starting with p and need to blacklist in which key
without which using paste 'p' becomes impossible.
2021-10-01 14:55:30 +05:30
Sanchayan Maity 31780f0c25 nvim: keymappings: Drop highlight search mapping
<C-l> now clears search highlight and update diffs and is mapped by
default.

See
https://github.com/neovim/neovim/issues/14090#issuecomment-901882455.
2021-10-01 14:55:30 +05:30
Sanchayan Maity a668139491 nvim: after/ftplugin/C: Add a key mapping for ClangSwitchSourceHeader
This allows us to switch seamlessly between source and header file.

Its provided by nvim-lspconfig. See
https://github.com/neovim/nvim-lspconfig/blob/master/lua/lspconfig/clangd.lua
2021-10-01 10:00:13 +05:30
Sanchayan Maity 62e99dd1f0 nvim: after/ftplugin/C: Drop unneeded settings
Do not know what advantage if any these settings will bring anymore.
2021-09-30 14:20:42 +05:30
Sanchayan Maity 4b8caad3b6 nvim: plugins: Drop cscope
Now that we have migrated to clang LSP for C, the only reason for
keeping it around was using it to find files in gst-build repository
which was structured in such a way that fzf and rg could not be used.
Now that GStreamer has moved to monorepo setup, we can use fzf and
rg just like in any project. No need for cscope anymore.
2021-09-30 14:20:42 +05:30
Sanchayan Maity 0a21f7d979 nvim: lsp: Explicitly set the log level 2021-09-30 13:55:49 +05:30
Sanchayan Maity 4b6bd7e7ed nvim: after/plugin/fugitive: Add key mappings for git log grep
Usage:
$ git log --grep=word
$ git log -Gword
2021-09-29 11:42:52 +05:30
Sanchayan Maity 8aaccc4f16 nvim: lsp: Refactor and alignment clean ups 2021-09-27 18:46:55 +05:30
Sanchayan Maity 9de5a7de76 nvim: after/plugin/vsnip: Keymap settings are not required anymore
With the move to nvim-cmp these vsnip key mappings are not required
anymore. The completion and expansion gets taken care of by nvim-cmp.
Just move the vsnip_filetypes settings to init.
2021-09-27 18:46:55 +05:30
Sanchayan Maity b6063211f7 nvim: plugins: Fix snippets not showing up in completion
For some reason without adding the snippets to the runtime path,
snippets do now show up in completion.

Found the solution here though the issue is on Ultisnips
https://github.com/hrsh7th/nvim-cmp/issues/241
2021-09-27 16:40:55 +05:30
Sanchayan Maity be02b5ead7 nvim: Switch to nvim-cmp
nvim-compe has been deprecated. While we tried to make it a few days
without any completion support, in javascript/typescript could not get
the default omnicompletion to work at all. It is possible that this
could be due to nvim-lsp-ts-utils/null-ls but who is gonna debug.

Also tried MUcomplete but it just would not work. There are open issues
on this. See https://github.com/neovim/neovim/issues/12390 and also
https://github.com/lifepillar/vim-mucomplete/issues/179.

So here we are with nvim-cmp. Some observations in comparison to compe
before. Using buffer completion seems not possible as most of the times
LSP completion items then do not turn up. Do not know if this is server
specific but at least it is the case with Rust. compe seemed better
performance wise especially in tsserver and considering the buffer
problem mentioned above. Also, even with vsnip added as the completion
source can't seem to get any snippet specific completions working.

Could have ditched all completion support if I did not have to use
tsserver but need it for work currently. So we will stick to enabling
this and hopefully it improves in future.

Fuck nodejs, javascript and typescript.

For references see,
https://github.com/kristijanhusak/neovim-config
https://github.com/sQVe/dotfiles/tree/master/config/nvim
2021-09-27 16:29:18 +05:30
Sanchayan Maity b95a14b8d1 nvim: lsp: Fix enabling of range format support again!
47b1578 did not actually fix it. We need to keep using 'gq' but actually
correctly specify whether we want normal or visual mode. Also disable
range formatting explicitly for tsserver.
2021-09-27 15:23:12 +05:30
Sanchayan Maity d7fbe762c5 nvim: Update packer 2021-09-27 13:50:59 +05:30
Sanchayan Maity c781b15582 nvim: Drop signify and switch to gitsigns
signify seems to be giving an error after somewhat long usage of
"E489: too many highlight and syntax groups".
2021-09-27 13:14:27 +05:30
Sanchayan Maity 91eecec611 nvim: keymappings: Drop the mapping for help 2021-09-27 13:14:27 +05:30
Sanchayan Maity 975e6a646e nvim: plugins: Switch from vim-which-key to which-key 2021-09-27 13:14:20 +05:30
Sanchayan Maity 00670a867f nvim: lsp: Enable rust-tools for inlay hints 2021-09-27 12:31:27 +05:30
Sanchayan Maity 0aa93c6e9b nvim: init: Always enable the signcolumn
Have a fixed column for the diagnostics to appear in as this removes
the jitter when warnings/errors flow in.

Recommended here
https://sharksforarms.dev/posts/neovim-rust/
2021-09-26 12:06:16 +05:30
Sanchayan Maity 97db1c6c9d nvim: keymappings: Enable unique and refactor/cleanup
Enable unique to detect and avoid conflicting key mappings.
2021-09-26 11:51:04 +05:30
Sanchayan Maity 6223b802ce nvim: after/ftplugin/c: Fix conflicting mapping
,d cscope mapping conflicts with the LSP diagnostic mapping.
2021-09-26 11:51:04 +05:30
Sanchayan Maity f7d12b27d3 nvim: lsp: Alignment cleanup 2021-09-26 11:50:36 +05:30
Sanchayan Maity 55356513a9 nvim: after/plugin/easyalign: Fix conflicting mapping
'ga' mapping conflicts with the LSP code action mapping.
2021-09-25 18:31:10 +05:30
Sanchayan Maity 47b157805d nvim: lsp: Fix enabling of range format support
If range formatting is supported we should check that first to enable
it else since most LSP servers support formatting, without range
formatting check being first, it would never be enabled.
2021-09-25 18:21:51 +05:30
Sanchayan Maity 8801b26fa9 nvim: lsp: Add range formatting with motion 2021-09-25 15:26:52 +05:30
Sanchayan Maity eebffce98e nvim: lsp: Add back custom preview function
Follow up to 469e367.
2021-09-25 15:26:52 +05:30
Sanchayan Maity f01b1d6a52 nvim: lsp: Use Leader k mapping for LSP hover
While at it, align code to look nice.
2021-09-25 15:13:49 +05:30
Sanchayan Maity 616c4f003c nvim: lsp: Increase value of debounce didChange notifications 2021-09-25 13:21:01 +05:30
Sanchayan Maity 469e36756b nvim: lsp: Drop custom preview function
Those functions do not work anymore. May be we will add it later
via https://github.com/rmagatti/goto-preview.
2021-09-25 13:21:01 +05:30
Sanchayan Maity 9ab36d4b1b nvim: lsp: Fix null-ls setup 2021-09-25 13:21:01 +05:30
Sanchayan Maity 350a6edd2c nvim: fugitive/git: Add git helper to push upstream
Now that we set push.default to nothing in our git configuration, add
a git helper to figure out the upstream for the current branch and push
it.
2021-09-25 13:21:01 +05:30
Sanchayan Maity 643e1be349 nvim: keymappings: Add mappings to paste from + & * register 2021-09-22 17:52:15 +05:30
Sanchayan Maity 130bf3e04d nvim: colors: yolokai: Update diagnostic highlight 2021-09-22 17:51:51 +05:30
Sanchayan Maity 71f5c334f1 nvim: plugins: Drop nvim-peekup
Does not work correctly and keeps pasting in the first window instead of
where the cursor is placed.
2021-09-21 11:02:25 +05:30
Sanchayan Maity 52ff789cf3 nvim: Switch to the maintained galaxyline fork
See
https://github.com/NTBBloodbath/galaxyline.nvim
https://www.reddit.com/r/neovim/comments/pq3zvq/galaxylinenvim_is_back/
2021-09-21 11:02:25 +05:30
Sanchayan Maity b31aeaf597 nvim: Update packer 2021-09-21 11:02:25 +05:30
Sanchayan Maity e1cfc0408d nvim: yolokai: Sync with nvim-highlite upstream 2021-09-13 18:00:40 +05:30
Sanchayan Maity 763f811931 nvim: after/plugin/haskell: Cleanup settings not required anymore
We dropped the Haskell syntax plugin for treesitter and also ghcid.
Remove settings which were for those plugins.
2021-09-11 11:57:10 +05:30
Sanchayan Maity 3edfac79b4 nvim: after/plugin/completion: Disable tags completion
We were using tags completion for C projects primarily but now that we
have enabled clangd LSP, disable tags based completion.
2021-09-10 14:06:59 +05:30
Sanchayan Maity 5b6685b165 nvim: lsp: Enable clangd for C and C++ 2021-09-10 14:06:59 +05:30
Sanchayan Maity ccb4b4343d nvim: after/plugin: fugitive: Update key mappings 2021-09-10 13:41:24 +05:30
Sanchayan Maity be257f67f0 nvim: Update packer 2021-09-06 14:51:16 +05:30
Sanchayan Maity 555026ef80 nvim: lsp: Sync nvim-lsp-ts-utils settings with upstream 2021-08-31 11:02:34 +05:30
Sanchayan Maity 44411a87e2 nvim: Update packer 2021-08-31 11:02:34 +05:30
Sanchayan Maity 9431ca8646 nvim: Update packer 2021-08-12 12:02:25 +05:30
Sanchayan Maity 88ed57fb8b nvim: keymappings: Enable escape and arrow keys
Now that we use Planck EZ as our main keyboard with Colemak as the
layout, allow use of escape and arrow keys. HJKL are not usable the
same way as before.
2021-08-06 10:51:22 +05:30
Sanchayan Maity 8f5e45cb52 nvim: keymappings: Add mapping to copy to clipboard 2021-08-06 10:51:22 +05:30
Sanchayan Maity 26bc1e7e9c nvim: Update packer 2021-08-06 10:51:22 +05:30
Sanchayan Maity bdc14d4ebc nvim: Add lightbulb for discoverable LSP code actions 2021-07-26 18:44:41 +05:30
Sanchayan Maity b319398534 nvim: Update packer 2021-07-25 11:42:33 +05:30
Sanchayan Maity 3e7fd609ec nvim: lsp: Sync nvim-lsp-ts-utils configuration with upstream 2021-07-21 11:00:40 +05:30
Sanchayan Maity d00bf90b30 nvim: after/plugin: nvimgdb: Update nvim-gdb configuration 2021-07-21 10:29:21 +05:30
Sanchayan Maity c9cc36a499 nvim: Update packer 2021-07-20 21:01:22 +05:30
Sanchayan Maity cc2bedbe5d nvim: keymappings: Add mappings to move lines 2021-07-20 21:01:13 +05:30
Sanchayan Maity c646381a00 nvim: lsp: Add support for lua 2021-07-17 18:38:32 +05:30
Sanchayan Maity c51261d94a nvim: Update packer 2021-07-16 10:54:46 +05:30
Sanchayan Maity 2a2f85b82e nvim: completion: Update nvim-compe settings
Sync with upstream. While at it, since we do not use autocomplete
anymore, change min_length to 1 to trigger completion easily.
2021-07-16 10:54:46 +05:30
Sanchayan Maity efaba37bcf nvim: fugitive/git: Add helper to rename branch 2021-07-15 21:12:27 +05:30
Sanchayan Maity 4565822924 nvim: lsp: Switch to pylsp
pyls is deprecated and not supported in nvim-lspconfig anymore.

The supported python language server is here.
https://github.com/python-lsp/python-lsp-server
2021-07-15 18:13:52 +05:30
Sanchayan Maity ed70d5a630 nvim: Update packer 2021-07-13 19:56:43 +05:30
Sanchayan Maity a493297cae nvim: plugins: For handling files with ANSI escape sequences better 2021-07-12 12:23:52 +05:30
Sanchayan Maity d3b8cec40a nvim: git: Add functionality to restore using git reflog 2021-07-09 10:34:12 +05:30
Sanchayan Maity a85a76c3eb nvim: Update packer 2021-07-09 10:34:12 +05:30
Sanchayan Maity 8fc44227f2 nvim: after/plugin/completion: Disable autocomplete 2021-07-05 17:43:10 +05:30
Sanchayan Maity 119c91a6b7 nvim: plugins: Add nvim-gdb 2021-07-05 17:39:56 +05:30
Sanchayan Maity ffadf1cf4f nvim: keymappings: Map ;; to :
Let's us get over the annoyance of having to press shift for using :.
2021-07-05 10:48:53 +05:30
Sanchayan Maity 6c3886aff0 nvim: Update packer 2021-07-05 10:48:53 +05:30
Sanchayan Maity fff7723126 nvim: treesitter: Enable Haskell 2021-06-28 16:43:06 +05:30
Sanchayan Maity 112239bd31 nvim: plugins: Drop indentLine
indentLine seems to have general performance issues.
2021-06-26 11:19:47 +05:30
Sanchayan Maity a51f16304c nvim: after/ftplugin: git: Do not set bufhidden to wipe
This resulted in not being able to go back to the previous buffer when
using something like git log which is not we want.
2021-06-23 12:30:18 +05:30
Sanchayan Maity 47065178c5 nvim: Update packer 2021-06-23 12:30:18 +05:30
Sanchayan Maity 6406ae8a71 nvim: plugins: Drop plugins
Drop plugins we never use anymore or got around to using.
2021-06-23 12:30:11 +05:30
Sanchayan Maity 44a39eee24 nvim: treesitter: Enable playground
Helps to see what treesitter queries are being made. Would be helpful in
tuning the color scheme.
2021-06-23 12:28:44 +05:30
Sanchayan Maity 0649b639da nvim: treesitter: Force nvim-treesitter to use a specific compiler
Required for Haskell. See
https://github.com/tree-sitter/tree-sitter-haskell#building-with-nvim-treesitter
2021-06-19 11:26:13 +05:30
Sanchayan Maity a16c244fce nvim: autoload/ftplugin: git: Add rebase and merge helpers 2021-06-17 16:58:12 +05:30
Sanchayan Maity 108630d19c nvim: Move plugin configuration files to after/plugin
Now that neovim runtime can also source lua files from traditional vim
runtime directories like after/plugin/ftplugin etc, move all plugin
configuration files to after/plugin.
2021-06-17 10:07:51 +05:30
Sanchayan Maity ca9e0d1754 nvim: after/plugin: fzf: Move fzf configuration
Do all fzf configuration in after/plugin instead of lua/modules. While at
it, add functionality to add fzf items to the quickfix list.
2021-06-16 19:11:11 +05:30
Sanchayan Maity aee5337f55 nvim: init: Drop exrc and secure
exrc is deprecated and not recommended. Accordingly also drop secure.

See
https://github.com/neovim/neovim/issues/5784#issuecomment-506993689
2021-06-16 12:55:44 +05:30
Sanchayan Maity 7fb370f824 nvim: lsp: Enable code lens support
Relevant PR
https://github.com/neovim/neovim/pull/13165
2021-06-15 15:41:28 +05:30
Sanchayan Maity 2fcdea1cb2 nvim: keymappings: Add a key mapping to help with opening vim docs 2021-06-15 09:56:23 +05:30
Sanchayan Maity 5d2d279e9e nvim: after/ftplugin: help: Add key mapping for closing help files 2021-06-15 08:34:27 +05:30
Sanchayan Maity 3d8ccb4f23 nvim: yolokai: Sync with nvim-highlite upstream 2021-06-15 08:34:27 +05:30
Sanchayan Maity 0eb9b86927 Revert "nvim: Fix accessing t_Co"
This reverts commit 72e3b80274.
2021-06-15 08:34:27 +05:30
Sanchayan Maity ba3c62722b nvim: Update packer 2021-06-15 08:34:27 +05:30
Sanchayan Maity e715f19d1e nvim: modules: Alignment cleanup
Slight OCD :).
2021-06-12 12:24:57 +05:30
Sanchayan Maity 8ad693d5bc nvim: init: Drop duplicate swapfile setting call 2021-06-10 18:30:31 +05:30
Sanchayan Maity 8be870b015 nvim: after/ftplugin: man: Set nobuflisted and bufhidden for man pages 2021-06-10 10:30:27 +05:30
Sanchayan Maity 511d5a17aa nvim: plugins: Add plenary and null-ls
nvim-lsp-ts-utils now has plenary and null-ls as a requirement.
2021-06-10 10:30:27 +05:30
Sanchayan Maity 9d6be2d56b nvim: Update packer 2021-06-10 10:30:27 +05:30
Sanchayan Maity 3942f04633 nvim: after/plugin: fugitve: Use gS mapping to stash file
While at it, use <Leader>G for :Git.
2021-06-07 20:54:41 +05:30
Sanchayan Maity 3a6b12d118 nvim: after/ftplugin: mail: Disable whitespace in mail
We do not care about whitespace when constructing replies from within
mutt.
2021-06-05 17:42:48 +05:30
Sanchayan Maity 3ba1673068 nvim: after/plugin: fugitive: Update gF and gE mapping
Often it is convenient to merge remote branch origin/foo into local
branch foo, without having to checkout foo first. Use gF mapping for
the same.

One may edit alternate versions of the file in different branches using
:Gedit <branch>:/path/to/file. Use gE mapping for the same.
2021-06-04 15:50:35 +05:30
Sanchayan Maity 65230f92a0 nvim: Update packer 2021-06-04 10:33:31 +05:30
Sanchayan Maity e3df9adf91 nvim: after/ftplugin: C: Fix quickr cscope mappings
These seem to not work with nnoremap for some reason.
2021-06-03 20:55:19 +05:30
Sanchayan Maity 525d73373d nvim: after/ftplugin: Set wipe on bufhidden for dirvish and gitcommit 2021-06-02 13:54:26 +05:30
Sanchayan Maity d7ff7f1ec2 nvim: after/ftplugin: Fix various key mappings
Also see the previous commit for more context.
2021-05-29 13:39:44 +05:30
Sanchayan Maity efe3e7e517 Revert "nvim: after: ftplugin: Fix various key mappings"
This reverts commit e6397864d0.

This was actually wrong. nnoremap should be always what we want. For
example, this broke the <Leader>r mapping for gitrebase and would invoke
:Reword from lambdalisue/reword.vim.
2021-05-29 13:39:44 +05:30
Sanchayan Maity 4e2abc80df nvim: after/ftplugin: gitrebase: Add vim-interactive-rebase-reverse
The plugin is a pretty small ftplugin. Just add it to our ftplugin.
This also fixes the issue where this plugin did not take affect
when using interactive rebase from within fugitive.
2021-05-29 13:39:44 +05:30
Sanchayan Maity 72e3b80274 nvim: Fix accessing t_Co
With neovim/neovim#13479 merged, window option needs to be used for
accessing t_Co correctly.
2021-05-29 13:33:32 +05:30
Sanchayan Maity fbce78c346 nvim: init: Use vim.o for setting all options
Works exactly the same as `set` after neovim/neovim#13479.
2021-05-29 13:32:43 +05:30
Sanchayan Maity ac3cb2e828 nvim: Update packer 2021-05-29 10:50:43 +05:30
Sanchayan Maity 748fd222da nvim: after/ftplugin: Use 'wipe' for bufhidden 2021-05-25 11:39:40 +05:30
Sanchayan Maity f088e258da nvim: after/plugin/fugitive: Add some more key mappings 2021-05-25 10:48:33 +05:30
Sanchayan Maity a567150a64 Revert "nvim: after/ftplugin: javascript: Add keymapping to invoke prettier"
This reverts commit 1ba2fee97d.

Now that we enable nvim-lsp-ts-utils, this is not required anymore.
2021-05-24 17:20:23 +05:30
Sanchayan Maity 7383245dd3 nvim: plugins/lsp: Add nvim-lsp-ts-utils 2021-05-24 17:20:23 +05:30
Sanchayan Maity 25afe0527c nvim: keymappings: Add a key mapping to select last pasted/yanked text 2021-05-24 15:59:29 +05:30
Sanchayan Maity 66f07fba89 nvim: plugins/treesitter: Enable treesitter text objects 2021-05-22 15:30:52 +05:30
Sanchayan Maity f846dace39 nvim: keymappings: Drop mapping for copying whole buffer
Now that we have a text object for the whole buffer, this is not
required anymore.
2021-05-21 15:40:11 +05:30
Sanchayan Maity 66b022dcb0 nvim: plugins: Add various text object plugins 2021-05-21 11:16:43 +05:30
Sanchayan Maity 847dd90e2d nvim: Update packer 2021-05-21 10:02:13 +05:30
Sanchayan Maity 9b639279d9 nvim: after/plugin: Add j and k motion to the jump list 2021-05-18 19:40:03 +05:30
Sanchayan Maity f05e5bcd5d nvim: after/plugin: fugitive: Add a key mapping for Gedit
Gedit is helpful to open up previous versions of the file. For example,
:Gedit HEAD~3:% loads the current file as it existed 3 commits ago.
2021-05-18 13:11:23 +05:30
Sanchayan Maity 9848348881 nvim: plugins: Drop all LISP support
Flights of fancy. Thought I will learn LISP but dynamically typed
languages are just annoying to work with.
2021-05-17 20:39:46 +05:30
Sanchayan Maity 5462060452 nvim: plugins: Drop rainbow
Does not really work with treesitter.

There is nvim-ts-rainbow but it seems to have performance problems.
https://github.com/p00f/nvim-ts-rainbow/issues/5
2021-05-17 20:38:09 +05:30
Sanchayan Maity 2031d90b49 nvim: after/ftplugin: python: Set textwidth to 0
Let the formatter decide how to wrap lines.
2021-05-17 13:41:02 +05:30
Sanchayan Maity 87c23e3bbc nvim: after/plugin: vsnip: Fix conflicting key mapping with sneak 2021-05-17 10:34:43 +05:30
Sanchayan Maity 3b163a4a5a nvim: Update packer 2021-05-17 10:34:30 +05:30
Sanchayan Maity 04b2a511e1 nvim: treesitter: Add fish and nix
Drop the syntax highlighting plugins for fish and nix and switch to
treesitter. The ftdetect is taken from the respective plugins.

We might need to add the indent specific scripts for fish and nix
later since we are not enabling indent with treesitter.
2021-05-14 19:36:43 +05:30
Sanchayan Maity 58fe622b66 nvim: init: Align to look nice 2021-05-14 18:04:55 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 08df60f731 nvim: after: git/fugitive: Add settings and mappings to not leave buffers behind 2021-05-14 16:34:25 +05:30
Sanchayan Maity 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
Sanchayan Maity 8694445d2d nvim: after: plugin/ftplugin: Drop unnecessary maps
Fugitive/vim already provides the necessary mappings. No need for
mapping these.
2021-05-14 13:46:25 +05:30
Sanchayan Maity 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
Sanchayan Maity d3a0883851 nvim: Update packer 2021-05-14 10:25:01 +05:30
Sanchayan Maity e24fc200ec nvim: Add support for using snippets 2021-05-13 21:07:42 +05:30
Sanchayan Maity ca46007f89 nvim: lsp: Debounce didChange notifications to the server 2021-05-13 21:07:42 +05:30
Sanchayan Maity 1c9b8aae40 nvim: plugins: Add support for Coq 2021-05-13 19:38:37 +05:30
Sanchayan Maity 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
Sanchayan Maity aa1bdca912 nvim: plugins: Drop guile support
We added this to explore guix but lost interest. Also no time. Will only
explore racket if at all.
2021-05-12 19:23:36 +05:30
Sanchayan Maity d2889ad053 nvim: init: Use lua style code for sneak settings 2021-05-12 18:38:59 +05:30
Sanchayan Maity c768cd89f1 nvim: lsp: Remove LSP workspace mappings
We never seem to need those.
2021-05-12 18:06:12 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 0d806355ab nvim: keymappings: Add helpful mappings for visual block shift & buffer copy 2021-05-08 14:40:12 +05:30
Sanchayan Maity 16a797df6f nvim: modules: fzf: Use the leader 'fm' mapping for marks 2021-05-08 14:40:04 +05:30
Sanchayan Maity 048095bb2e nvim: Update mappings for ferret 2021-05-08 14:40:04 +05:30
Sanchayan Maity 91604ca16c nvim: lsp/plugins: Add support for automatically showing fn signature 2021-05-08 14:39:58 +05:30
Sanchayan Maity a899271748 nvim: plugins: Search in visual mode using * and # 2021-05-08 14:39:52 +05:30
Sanchayan Maity e8a1135b24 nvim: Update packer 2021-05-08 14:39:52 +05:30
Sanchayan Maity 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
Sanchayan Maity d5be9384ed nvim: lua: plugins: Update aniseed and conjure 2021-05-05 20:58:38 +05:30
Sanchayan Maity f030b39a3e nvim: init: Use zathura as PDF viewer 2021-05-03 19:58:06 +05:30
Sanchayan Maity 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
Sanchayan Maity 5ce14b4cc7 nvim: Update packer 2021-05-03 11:01:01 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity d7c2ca6e43 nvim: ftplugin/autoload: C: Run gst-indent on save 2021-05-02 19:23:57 +05:30
Sanchayan Maity 893b06defb nvim: colors: yolokai: Update color highlight for LineNr & SignColumn 2021-05-02 15:08:09 +05:30
Sanchayan Maity b36197fbe8 nvim: init: Enable relativenumber 2021-05-02 13:29:38 +05:30
Sanchayan Maity b6e2f23516 nvim: lua: autocmd: Fix highlight on yank autocmd
Still does not seem to work though 🤔.
2021-05-02 13:16:29 +05:30
Sanchayan Maity 734eda3f37 nvim: lua: statusline: Sync with galaxyline changes upstream 2021-05-01 16:37:00 +05:30
Sanchayan Maity 574b6f5343 nvim: Update packer 2021-05-01 10:32:08 +05:30
Sanchayan Maity 32fba27008 nvim: colors: yolokai: Change WhichKeySeperator color 2021-04-30 14:14:48 +05:30
Sanchayan Maity 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
Sanchayan Maity 86de71d5da nvim: lua: plugins/colors: Switch to which-key.nvim 2021-04-29 19:41:30 +05:30
Sanchayan Maity 07bd4e8592 nvim: lua: plugins: Drop hlslens 2021-04-29 13:41:19 +05:30
Sanchayan Maity 9d3efb1a3c nvim: lua: autocmd: Drop scrollbar autocmd
Should have been cleaned as part of 5058b6b.
2021-04-29 10:58:41 +05:30
Sanchayan Maity 9abfcaeeca nvim: Update packer 2021-04-29 10:58:41 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 5005a2b558 nvim: Update packer 2021-04-28 10:58:12 +05:30
Sanchayan Maity b9e5fb64bf nvim: fugitive: Refactor and add some more git helpers 2021-04-27 09:29:41 +05:30
Sanchayan Maity baa70ee678 nvim: keymappings: Add a useful mapping for closing tabs 2021-04-22 10:55:37 +05:30
Sanchayan Maity 82bc7524b1 nvim: Update packer 2021-04-20 11:32:14 +05:30
Sanchayan Maity c8b64ae94f Revert "nvim: keymappings: Do not use 'jk' for Esc anymore"
This reverts commit 915a5427e3.
2021-04-19 12:20:00 +05:30
Sanchayan Maity 765eec81b6 nvim: after: fugitive: Update key mappings 2021-04-19 12:20:00 +05:30
Sanchayan Maity 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
Sanchayan Maity 7363f20681 nvim: Update packer 2021-04-19 11:18:40 +05:30
Sanchayan Maity 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
Sanchayan Maity cdd87b94d8 nvim: Update packer 2021-04-07 20:31:30 +05:30
Sanchayan Maity 39aaa2fd5c nvim: Update conjure to the new release 2021-04-02 20:05:53 +05:30
Sanchayan Maity 5b8fc42e29 nvim: Update packer 2021-03-30 11:25:37 +05:30
Sanchayan Maity d197d0b1b7 nvim: Update packer 2021-03-25 11:10:12 +05:30
Sanchayan Maity 90d6c8681d nvim: Update packer 2021-03-23 10:46:45 +05:30
Sanchayan Maity ff7e6f524c nvim: git/fugitive: Add helper for git branch and checkout 2021-03-19 12:15:52 +05:30
Sanchayan Maity 3b2e3adee1 nvim: plugins: Enable support for guile 2021-03-10 21:36:55 +05:30
Sanchayan Maity 8943ecf656 nvim: plugins: Update conjure and aniseed 2021-03-10 21:36:55 +05:30
Sanchayan Maity 05a87e36a8 nvim: plugins: Switch from parinfer to vim-sexp 2021-03-10 21:36:55 +05:30
Sanchayan Maity e8ef3a4ded nvim: lsp: Enable typescript language server
Need it for some work stuff :(.
2021-03-10 21:36:55 +05:30
Sanchayan Maity b6aae8d570 nvim: Update packer 2021-03-09 10:54:21 +05:30
Sanchayan Maity d601e558da nvim: Update packer 2021-03-06 12:25:50 +05:30
Sanchayan Maity 3707429737 nvim: lsp: Update LSP key bindings 2021-02-25 17:53:45 +05:30
Sanchayan Maity 7360f65e2f nvim: lsp: Enable python language server 2021-02-25 17:35:50 +05:30
Sanchayan Maity eff13b5225 nvim: yolokai: Sync with upstream nvim-highlite 2021-02-25 13:27:28 +05:30
Sanchayan Maity abd22a73db nvim: treesitter: Enable some more languages with treesitter 2021-02-25 12:32:05 +05:30
Sanchayan Maity 060fc1d41c nvim: init: Make cursor line always be in the middle of the window 2021-02-22 14:44:10 +05:30
Sanchayan Maity c9526d8997 nvim: Drop vim-smoothie 2021-02-22 14:23:01 +05:30
Sanchayan Maity d3cbc0307a nvim: Update packer 2021-02-19 11:06:20 +05:30
Sanchayan Maity ae391080a1 nvim: Sync nvim-compe settings with upstream 2021-02-18 19:07:13 +05:30
Sanchayan Maity 47e40e765d nvim: Add support for inserting visual block to anywhere 2021-02-16 20:38:03 +05:30
Sanchayan Maity fa940ca9e6 nvim: Update packer 2021-02-16 19:47:09 +05:30
Sanchayan Maity d9cd7d6d1f nvim: Update packer 2021-02-12 00:49:47 +05:30
Sanchayan Maity ad0db79b4f nvim: Update packer 2021-02-10 11:26:22 +05:30
Sanchayan Maity c5cd375c25 nvim: modules: completion: Move key bindings in lua module
nvim-compe recently included instructions on using backspace and tab
correctly. Include the same configuration.
2021-02-08 11:42:01 +05:30
Sanchayan Maity 9c889caa9a nvim: plugin: compe: Use TAB and S-TAB to cycle through popup menu
We mistakenly dropped this while switching to compe from
completion-nvim.
2021-02-05 13:58:42 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity cddc40f842 nvim: Update packer 2021-02-03 14:42:36 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 9918959aa2 nvim: Switch to nvim-compe 2021-02-02 18:09:35 +05:30
Sanchayan Maity 6ef47458e2 nvim: lsp: Move the completion item symbols from completion-nvim to LSP 2021-02-02 17:33:21 +05:30
Sanchayan Maity 5c2d83a833 nvim: Update packer 2021-02-02 17:33:21 +05:30
Sanchayan Maity 91be84b9d7 nvim: Switch back to fugitive again :)
With most of our operations now being done through fzf + git command
line or lazygit, we primarily only require the log & blame facilities.
The blame interface in Gina is confusing.

This time however, we include some nice helper functions of our own.
2021-02-01 18:17:13 +05:30
Sanchayan Maity a23caf6d12 nvim: Introduce LISP support 2021-02-01 10:35:29 +05:30
Sanchayan Maity 000bd17c4c nvim: Update packer 2021-02-01 10:35:29 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 5b69c13505 nvim: Update packer 2021-01-28 23:36:29 +05:30
Sanchayan Maity 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
Sanchayan Maity 1dbb82fc49 nvim: Update LSP status configuration variables 2021-01-27 09:13:47 +05:30
Sanchayan Maity 366688d1c3 nvim: Update packer 2021-01-27 09:13:47 +05:30
Sanchayan Maity 47ab28723f nvim: modules: statusline: Use srcery variant for white foreground 2021-01-22 16:10:43 +05:30
Sanchayan Maity 355b060aea nvim: colors: yolokai: Use srcery variant for white 2021-01-22 16:07:49 +05:30
Sanchayan Maity 874a2801d4 nvim: lua: plugins: Add nvim-bqf to improve quickfix 2021-01-21 10:48:59 +05:30
Sanchayan Maity 54b66455cd nvim: lua: modules: gitsigns: Enable hunk text objects 2021-01-17 11:50:34 +05:30
Sanchayan Maity d9f8c8ce56 nvim: Update packer 2021-01-17 11:46:10 +05:30
Sanchayan Maity dc4ecdb8b3 nvim: Update packer 2021-01-16 12:28:44 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 4efbec8683 nvim: treesitter: Enable some more languages 2021-01-14 20:05:41 +05:30
Sanchayan Maity e62cb8f3ab nvim: Update packer 2021-01-14 10:57:02 +05:30
Sanchayan Maity 1307d996ac nvim: colors: yolokai: Change the delimiter color to red 2021-01-13 16:32:34 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 30011d5c9d nvim: Add SyntaxAttr plugin to help show highlight group under cursor 2021-01-13 16:04:27 +05:30
Sanchayan Maity 41f1e85929 nvim: Enable treesitter refactor and text objects 2021-01-12 16:34:52 +05:30
Sanchayan Maity 3e72b0f5ad nvim: Update packer 2021-01-12 16:13:08 +05:30
Sanchayan Maity d0e3d43830 nvim: modules: statusline: Show file name for inactive buffer 2021-01-11 12:11:51 +05:30
Sanchayan Maity 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
Sanchayan Maity 39405e8cab nvim: ftplugin: Add & fix mapping for jumping between changes 2021-01-09 17:01:37 +05:30
Sanchayan Maity 76a868c8e6 nvim: Update packer 2021-01-09 16:52:32 +05:30
Sanchayan Maity fa18abaf65 nvim: Clean up init 2021-01-09 11:48:30 +05:30
Sanchayan Maity 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
Sanchayan Maity ebea44a8d4 nvim: Update packer 2021-01-06 10:35:27 +05:30
Sanchayan Maity 5058b6b6b0 nvim: lua: plugins: Drop scrollbar 2021-01-05 14:39:59 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 6336685b5e nvim: Update packer 2021-01-03 18:16:10 +05:30
Sanchayan Maity 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
Sanchayan Maity bf6f8004b9 nvim: Update packer 2020-12-28 10:39:15 +05:30
Sanchayan Maity 28b9b906ed nvim: Update packer 2020-12-24 21:06:02 +05:30
Sanchayan Maity 3f6d104eb0 nvim: markdown: Set formatting mode to hard wrap with smart auto formatting 2020-12-23 20:02:51 +05:30
Sanchayan Maity f73f40f5af nvim: Drop searchlight and switch to hlslens 2020-12-23 16:38:55 +05:30
Sanchayan Maity 42f707adb4 nvim: Drop syntax highlighting plugins we do not need 2020-12-23 16:38:55 +05:30
Sanchayan Maity dec2764e43 Revert "nvim: init: Enable virtualedit"
This reverts commit 98c0c283ee.
2020-12-23 16:38:55 +05:30
Sanchayan Maity 102f5c1013 nvim: Update packer 2020-12-21 10:33:18 +05:30
Sanchayan Maity 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
Sanchayan Maity 766a429ce7 nvim: yolokai: Sync with nvim-highlite upstream 2020-12-19 09:53:09 +05:30
Sanchayan Maity cf88659f30 nvim: colors: yolokai: Add highlighting for conflict-markers 2020-12-18 13:56:14 +05:30
Sanchayan Maity 8b8b7ec139 nvim: modules: floaterm: Add key mapping to open lazygit directly 2020-12-18 13:55:42 +05:30
Sanchayan Maity 97d10b6a1b nvim: modules: gitsigns: Sync settings with upstream 2020-12-16 11:26:23 +05:30
Sanchayan Maity 24b4c561ed nvim: Update packer 2020-12-15 10:10:26 +05:30
Sanchayan Maity 62553ba8c7 nvim: plugins/lua: Add lspfuzzy 2020-12-14 17:16:28 +05:30
Sanchayan Maity 8e07da50c9 nvim: Add pandoc support 2020-12-14 12:41:35 +05:30
Sanchayan Maity 77c1d52544 nvim: Update packer 2020-12-14 12:36:26 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 515639a7ca nvim: Update packer 2020-12-12 10:50:36 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity ab59251f2e nvim: lua: lsp: Fix call to show line diagnostics 2020-12-08 18:35:20 +05:30
Sanchayan Maity 1e55c5d336 Revert "nvim: Switch to using toggleterm instead of floaterm"
This reverts commit 7ef8054d41.
2020-12-08 16:42:42 +05:30
Sanchayan Maity 91cc5cef03 nvim: Update packer 2020-12-08 16:42:42 +05:30
Sanchayan Maity fef45b50e9 Drop init.vim
With the below PR merged
https://github.com/neovim/neovim/pull/12235

init.lua is now first class and we have no need for init.vim anymore.
2020-12-07 13:05:08 +05:30
Sanchayan Maity 33dca47c05 nvim: Update packer 2020-12-07 13:05:08 +05:30
Sanchayan Maity 7ef8054d41 nvim: Switch to using toggleterm instead of floaterm 2020-11-25 10:29:36 +05:30
Sanchayan Maity 0eddbeba17 nvim: Update packer 2020-11-24 11:57:07 +05:30
Sanchayan Maity b861963f9a nvim: Add tmux completion source for completion-nvim 2020-11-21 12:08:25 +05:30
Sanchayan Maity 9a2f273a7d nvim: Sync with nvim-highlite upstream 2020-11-21 12:08:25 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity a25d54afee nvim: Update packer 2020-11-21 11:04:30 +05:30
Sanchayan Maity a4ef81590a nvim: Update packer 2020-11-20 18:28:12 +05:30
Sanchayan Maity 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
Sanchayan Maity 7bb5343314 nvim: lua: modules: gitsigns: Add preview hunk feature now available upstream 2020-11-17 18:19:34 +05:30
Sanchayan Maity 432cb2c98f nvim: after: ftplugin: txt: Set textwidth to 78 2020-11-17 10:45:51 +05:30
Sanchayan Maity 974c399bea nvim: nvim lsp lua module name has changed upstream 2020-11-15 22:39:01 +05:30
Sanchayan Maity e421b24e16 nvim: Update packer 2020-11-14 19:12:16 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 07739669c5 nvim: modules: gitsigns: Update key map as per upstream changes 2020-11-10 15:47:09 +05:30
Sanchayan Maity 6b36e648d9 nvim: after: ftplugin: C: Do not enable folds 2020-11-06 12:28:17 +05:30
Sanchayan Maity 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
Sanchayan Maity 7bc8295486 nvim: Clean up commands for searching word under cursor 2020-11-05 18:58:37 +05:30
Sanchayan Maity 801f9725b4 nvim: Add easy-align 2020-11-05 11:39:57 +05:30
Sanchayan Maity 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
Sanchayan Maity 81acdab631 nvim: Update packer 2020-11-05 11:17:53 +05:30
Sanchayan Maity 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
Sanchayan Maity 78b781b1c8 nvim: Update packer 2020-11-03 12:00:54 +05:30
Sanchayan Maity 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
Sanchayan Maity 2c5c6b7c1a nvim: Drop tabular 2020-10-30 16:37:06 +05:30
Sanchayan Maity 3691d67298 nvim: Use galaxyline for statusline 2020-10-30 14:28:14 +05:30
Sanchayan Maity 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
Sanchayan Maity cbd37c1856 nvim: Move to packer 2020-10-29 21:06:46 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 47fcbd2233 nvim: Some consistency cleanup 2020-10-26 11:01:54 +05:30
Sanchayan Maity efc8bf88b5 nvim: Except for gina migrate everything in after/plugin to lua 2020-10-24 11:06:27 +05:30
Sanchayan Maity 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
Sanchayan Maity b1c51c6e83 nvim: Migrate from vim-plug to paq-nvim 2020-10-24 11:06:27 +05:30
Sanchayan Maity cb16ddec0c nvim: Refactor configuration and start moving to lua 2020-10-23 17:23:51 +05:30
Sanchayan Maity 8c69639144 nvim: lsp: Drop purescript language server 2020-10-23 13:34:31 +05:30
Sanchayan Maity 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
Sanchayan Maity d5078268d0 nvim: Upgrade vim-plug 2020-10-21 11:20:43 +05:30
Sanchayan Maity cb18514efc colors: yolokai: Update highlight setting for sneak 2020-10-20 13:09:19 +05:30
Sanchayan Maity 6bffe738c9 after: ftplugin: Set textwidth & wrapmargin to 0 for meson & configure files 2020-10-20 13:08:39 +05:30
Sanchayan Maity b96f253235 yolokai: Sync with some changes in upstream nvim-highlite 2020-10-18 19:19:54 +05:30
Sanchayan Maity 18b93f32d7 nvim: Refactor and update settings for completion-nvim
Use of trigger keys has been updated upstream. Also disable auto
completion.
2020-10-13 19:46:43 +05:30
Sanchayan Maity 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
Sanchayan Maity 3e49faa46d nvim: keymappings: Drop enhanced ijump helper
This actually crashes in some situations. Drop this.
2020-10-08 14:48:06 +05:30
Sanchayan Maity 46ad457661 nvim: Drop vim-fetch
Never used till date, so drop it.
2020-10-08 13:08:28 +05:30
Sanchayan Maity 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
Sanchayan Maity d04c8675f9 nvim: Switch back to gina dropping fugitive
The only purposes we have been using fugitive for is status and commit
which should be equally comfortable with gina. Gina log is really
instantaneous even on big repositories like Linux while fugitive just
freezes vim. For handling hunks, merge and rebase conflicts we anyways
rely on the other plugins.

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

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

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

still drop gitgutter and use signify as gitgutter might have problems as
observed in this thread.
https://github.com/nvim-lua/completion-nvim/issues/203
2020-10-05 20:48:56 +05:30
Sanchayan Maity 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
Sanchayan Maity b092402711 nvim: config: Enable histogram based diffs 2020-09-26 10:48:00 +05:30
Sanchayan Maity ad4d92f619 nvim: Upgrade vim plug 2020-09-26 10:48:00 +05:30
Sanchayan Maity 682c735651 nvim: after: ftplugin: Clean up Haskell 2020-09-24 17:00:06 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity c25188661b nvim: Add fzf-preview
This plugin provides support for Quickfix and Location list along with
previews. Also, does not do fuzzy match on file names which is useful.
Move some of the commands from fzf to fzf-preview as it provides
previews for those as well.

Using pedit for previews for quickfix list wasn't super comfortable.
Drop it, now that we have quickfix preview with fzf-preview.
2020-09-22 20:33:49 +05:30
Sanchayan Maity 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
Sanchayan Maity ff13f829e5 nvim: plugin_settings: Enable keymappings for scrolling preview window 2020-09-22 11:14:44 +05:30
Sanchayan Maity 0a20d1d3e2 nvim: Add scrollbar 2020-09-21 11:33:43 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 79be97c081 Revert "nvim: Switch to signify"
See open issue
https://github.com/mhinz/vim-signify/issues/345

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

This reverts commit b25091fae6.
2020-09-14 10:09:47 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity b25091fae6 nvim: Switch to signify
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-09 13:25:52 +05:30
Sanchayan Maity 8670913661 nvim: Add support for working with sudo
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-09 13:25:18 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 99a858df26 nvim: Upstream nvim-lsp repo got renamed
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-02 13:44:24 +05:30
Sanchayan Maity 27d4b8d326 nvim: Update git key bindings
fzf checkout plugin introduced some new functionality. Taking advantage
of that update existing and introduce some new key bindings.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-09-02 11:21:53 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity c134bd4326 nvim: after: plugin: fzf: Add key mapping for recently accessed buffers
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-22 14:49:27 +05:30
Sanchayan Maity e097977213 nvim: Upgrade vim-plug
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-21 18:17:07 +05:30
Sanchayan Maity c9e61c35e7 nvim: init.vim: Add vim-wordmotion
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-17 11:54:00 +05:30
Sanchayan Maity 0abeb9d927 nvim: Refactor out asyncdo & completion keymappings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-14 19:15:14 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity eb55c80682 Revert "nvim: init.vim: Add ALE for linting"
This reverts commit 286558f5af.
2020-07-09 19:27:47 +05:30
Sanchayan Maity d6e3c1a611 nvim: plugin_settings: Disable diagnostic virtual text
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-07-08 15:56:43 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 12009297a8 nvim: Upgrade vim-plug
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-30 20:51:49 +05:30
Sanchayan Maity 8a77b34ddd nvimL keymappings: Update chain completion mappings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-30 17:22:51 +05:30
Sanchayan Maity 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
Sanchayan Maity a649021325 nvim: Move key mappings for fzf & gitgutter to after/plugin
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-26 19:30:15 +05:30
Sanchayan Maity 0c8f59bcec nvim: colors: wombat: Fix colors name
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-25 13:57:28 +05:30
Sanchayan Maity a2d603d61a nvim: Re-introduce git-messenger
Now that we have dropped golden-ration add git-messenger back.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-24 20:23:30 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity fd606aa465 nvim: keymappings: Add enhanced helper for ijump
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-21 16:43:48 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 09359cb0a0 nvim: init.vim: Drop vim-markify
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-20 17:33:03 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity ba8739f4d0 nvim: Drop git messenger
git messenger does not size it's floating window correctly and cursor
gets all messed up while trying to jump in the floating window with
golden-ratio mode being active. May be related to the issue
https://github.com/rhysd/git-messenger.vim/issues/38

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

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

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

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-17 10:25:18 +05:30
Sanchayan Maity 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
Sanchayan Maity 286558f5af nvim: init.vim: Add ALE for linting
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-15 11:07:27 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 03f7e1ee50 nvim: plug: Upgrade vim-plug
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-04 18:03:34 +05:30
Sanchayan Maity eb2415300e nvim: Drop jump and change list handling
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-06-04 18:02:41 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity f0dc894593 nvim: Drop supertab
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-30 12:32:51 +05:30
Sanchayan Maity af01dd3351 nvim: config: Disable internal matchit
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-29 17:23:35 +05:30
Sanchayan Maity 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
Sanchayan Maity dc895fe1ee nvim: Refactor the nvim-lsp settings
This also helps in the key bindings now being in effect only for which
language servers has been enabled.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-29 11:14:00 +05:30
Sanchayan Maity 19d00c7ac5 nvim: Add vim-fugitive for git back
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-27 20:50:06 +05:30
Sanchayan Maity c42e841e3e nvim: Switch to vim-sneak
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-27 15:15:32 +05:30
Sanchayan Maity 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
Sanchayan Maity a20fa4494c nvim: Update to some keymappings for git and drop gina
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-27 10:31:06 +05:30
Sanchayan Maity 2ad7100749 nvim: Configure nvim-completion & remove conflicting LSP bindings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-25 19:00:55 +05:30
Sanchayan Maity 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
Sanchayan Maity 69654597d2 nvim: Use in built LSP for rust
While at it, use wombat colorscheme for Rust.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-24 16:57:26 +05:30
Sanchayan Maity 96127801a7 nvim: after: ftplugin: purescript: Update some keymappings
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-24 16:15:57 +05:30
Sanchayan Maity 77db00dcba nvim: init.vim: Drop text object plugins we do not use
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-24 13:43:01 +05:30
Sanchayan Maity 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
Sanchayan Maity 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
Sanchayan Maity 26ce7085a5 nvim: init.vim: Add OmniCppComplete
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
2020-05-23 16:56:03 +05:30