Commit graph

1140 commits

Author SHA1 Message Date
406570312f
nvim: after/ftplugin/rust: Do not add cargo registry to buffer list 2023-02-10 18:42:57 +05:30
56f81f598e
nvim: Switch back to paq
Packer does not seem to be maintained. Version 2 being developed
by Lewis @ https://github.com/lewis6991/packer.nvim has breaking
changes. Migrating to Lazy will open it's own can of worms & it
does not use packages. Funny thing is author of Packer himself
uses Lazy.

We really should not be needing anything fancy. neovim can load
packages automatically from packpath. All we need is something
which will clone the packages to packpath and all those will be
automatically loaded.

paq.nvim which we were using before packer was the right choice
and does the bare minimum we stated above.

Rest all with features like fancy lazy loading is nonsense.
2023-02-09 20:19:59 +05:30
547bf78b9b
nvim: plugins: Update plugin configuration
Do not make packer optional and remove use of after, cmd, config,
run and requires.

This is in preparation for testing if we can move off the plugin
manager and use in built packages support for handling packages.

While at it, drop unnecessary comments.
2023-02-09 15:57:47 +05:30
dd0adf5212
nvim: plugins: Drop luasnip and use snippy
Our snippet usage is not extensive. Use snippy which is a more
minimalistic plugin.
2023-02-03 18:19:37 +05:30
0b1380f28b
nvim: after/ftplugin: js/ts: Do not add node_modules to buffer list 2023-01-31 20:33:44 +05:30
ad1c594245
nvim: after/plugin/nvim-lint: Drop pylint and use ruff 2023-01-26 16:55:44 +05:30
f5d12372bd
Revert "nvim: plugins: Drop sleuth now that neovim has editorconfig built-in"
This reverts commit 058c37882d.

It is still helpful to have this it seems as without this working on
projects which do not have editorconfig becomes a pain.
2023-01-26 16:55:43 +05:30
3e5d0f0e13
nvim: after/ftplugin/markdown: Remove column limit 2023-01-21 20:05:03 +05:30
a64baccca1
nvim: Reintroduce clipboard settings
clipboard support just seems to be completely flaky right now. Add
previous settings but instead of tmux specific commands use wayland
clipboard tools.

This should make it work everywhere. One downside of this setting is
we go back to polluting system clipboard every time & does not really
matter if we copy to + or * register. Both will result in a call to
wl-copy.
2023-01-19 14:15:13 +05:30
f3190ffa0b
nvim: after/ftplugin/diff: spell is window local & not buffer local 2023-01-19 14:15:13 +05:30
558f03bede
nvim: after/plugin/gitlinker: Add videolan repo 2023-01-18 10:44:25 +05:30
674409573b
git/nvim: Drop diffconflicts
See the discussion on
https://github.com/whiteinge/diffconflicts/issues/26

Also
https://www.eseth.org/2020/mergetools.html
2023-01-17 10:09:29 +05:30
5ac754ea99
nvim: plugins: Drop exchange and word motion 2023-01-15 17:22:15 +05:30
058c37882d
nvim: plugins: Drop sleuth now that neovim has editorconfig built-in 2023-01-15 17:22:14 +05:30
c9b189e7c5
nvim: Add editorconfig 2023-01-15 17:22:14 +05:30
6340486b46
nvim: Use nvim-lint for linting markdown with vale
This effectively reverts 3ea83c6 and f4ee744.
2023-01-15 17:22:10 +05:30
c378e0a811
nvim: after/ftplugin/rust: Do not add library & toolchain source to buffer list 2023-01-15 12:19:21 +05:30
b249fdefcc
Revert "Revert "nvim: init: Drop tmux configuration for copying to system clipboard""
This reverts commit 2d17a75972.
2023-01-14 18:58:51 +05:30
a134cea609
nvim: Update packer 2023-01-14 18:58:51 +05:30
2d5fac776a
nvim: after/ftplugin: Move from vim to lua 2023-01-14 18:58:50 +05:30
f4d02a793f
nvim: plugins: Drop dirvish and use dirbuf.nvim 2023-01-12 18:39:37 +05:30
fcc992511e
nvim: plugins: Use our own fork of gitlinker
We want a fix and the author seems to be inactive, so use our own
fork with the patch applied till the upstream author becomes active
again.
2023-01-12 18:39:37 +05:30
2d17a75972
Revert "nvim: init: Drop tmux configuration for copying to system clipboard"
This reverts commit c37bd7d451.

Copying to system clipboard seems to have broken again and need to
revert this.

See https://github.com/neovim/neovim/issues/21636.
2023-01-08 11:08:13 +05:30
6e268b0d20
nvim: after/plugin/lightbulb: Update configuration 2023-01-07 10:36:23 +05:30
d63a6aeef4
nvim: after/ftplugin: Move settings from {js/ts}.vim to {js/ts}.lua 2023-01-06 13:07:39 +05:30
0c9e0eb164
nvim: lsp: Disable semantic token highlighting
It produces somewhat bad syntax highlighting in some cases. For example,
in typescript, the variable and it's type annotation get the same colour.
2023-01-05 09:38:26 +05:30
8b6cf82abe
nvim: yolokai: Sync with upstream 2023-01-04 13:54:10 +05:30
f68aed5238
nvim: lsp: Add mapping for clearing code lens 2023-01-03 20:04:27 +05:30
d37cbd3cf0
nvim: after/ftplugin: Add language server for racket & scheme 2022-12-28 19:53:02 +05:30
47498f93fc
nvim: plugins: Add autopairs and parinfer 2022-12-28 19:51:34 +05:30
79183f7402
nvim: Use mappings for copying entire buffer & drop textobj-entire 2022-12-28 19:51:34 +05:30
20b608ad08
nvim: treesitter: Enable fennel, racket and scheme 2022-12-28 19:51:09 +05:30
4fe0311c3c
nvim: Update packer 2022-12-20 20:43:10 +05:30
09f609b26a
nvim: after/plugin/nvim-lint: Enable clang-tidy 2022-12-20 20:43:09 +05:30
0e7b1fd4bd nvim: colors/yolokai: Use WinSeparator instead of VertSplit 2022-12-12 16:23:50 +05:30
0c7d4372d1 nvim: colors/yolokai: Enable undercurl for underline diagnostic
This effectively reverts commit 59490d1.
2022-12-12 10:11:20 +05:30
b60afcf0e9 Revert "nvim: init: Do not use underline for diagnostic"
This reverts commit 572ff25150.
2022-12-12 10:11:20 +05:30
ac65aa26cb nvim: lsp: Use local leader for running code lens
We use <Leader>l for linting. This should have been done as part of
commit b294f19.
2022-12-12 10:11:20 +05:30
d0b5159bd9 nvim: after/plugin/nvim-lint: Enable revive linter for go 2022-12-11 16:55:41 +05:30
9f415d9d4d nvim: after/ftplugin/go: Add go LSP support 2022-12-11 16:55:41 +05:30
9b00a19b52 nvim: after/ftplugin/rust: Format on save 2022-12-11 11:01:18 +05:30
bc8904c94b nvim: after/plugin/nvim-lint: Use eslint_d instead of eslint 2022-12-08 16:23:51 +05:30
599a0f1d2d nvim: Update packer 2022-12-08 11:11:23 +05:30
4f8f2c8016 nvim: autoload/git: Set upstream when checking out remote branch 2022-12-06 19:15:03 +05:30
a328fe3c5d nvim: after/ftplugin/sh: Add language server for bash 2022-12-06 12:49:30 +05:30
db1d0492ce nvim: Update packer 2022-12-06 12:38:40 +05:30
6fa2ecc8e4 nvim: after/ftplugin/json: Add mapping to format with jq 2022-12-05 17:38:38 +05:30
44c5116299 nvim: Update packer 2022-11-29 20:26:28 +05:30
4d970ce70c nvim: lsp: Fix error in LspDetach
Some language servers like HLS take longer to attach and if we exit
soon before LSP attach had a chance to finish (may be?), server
capabilities field does not seem to be valid in client object and
we get the below error. Check if it valid first.

Error detected while processing LspDetach Autocommands for "*":
Error executing lua callback: /home/core/.config/nvim/lua/lsp.lua:215: attempt to index field 'server_capabilities' (a nil value)
stack traceback:
        /home/core/.config/nvim/lua/lsp.lua:215: in function </home/core/.config/nvim/lua/lsp.lua:209>
        [C]: in function 'nvim_exec_autocmds'
        /usr/local/share/nvim/runtime/lua/vim/lsp.lua:1140: in function </usr/local/share/nvim/runtime/lua/vim/lsp.lua:1139>
Error executing lua callback: /home/core/.config/nvim/lua/lsp.lua:215: attempt to index field 'server_capabilities' (a nil value)
stack traceback:
        /home/core/.config/nvim/lua/lsp.lua:215: in function </home/core/.config/nvim/lua/lsp.lua:209>
        [C]: in function 'nvim_exec_autocmds'
        /usr/local/share/nvim/runtime/lua/vim/lsp.lua:1140: in function </usr/local/share/nvim/runtime/lua/vim/lsp.lua:1139>
2022-11-29 20:26:28 +05:30
b752f2241f nvim: plugins: Add support for cabal-fmt 2022-11-29 20:26:28 +05:30
42c06b8f2f nvim: after/plugin/nvim-lint: Drop mypy for Python linting 2022-11-25 16:54:15 +05:30
b0e55a6e60 nvim: after/plugin/word-column: Fix conflicting mapping with target
Since we now have more mapping available after dropping treesitter
text objects, we can fix this.

Fixes the below warning from targets check health.

targets: health#targets#check
========================================================================
  - WARNING: Conflicting mapping found:
    aq → <Plug>(textobj-wordcolumn-word-a)
    q → {'quote': [{'d': ''''}, {'d': '"'}, {'d': '`'}]}
  - WARNING: Conflicting mapping found:
    iq → <Plug>(textobj-wordcolumn-word-i)
    q → {'quote': [{'d': ''''}, {'d': '"'}, {'d': '`'}]}
2022-11-24 14:21:49 +05:30
397cac1050 nvim: plugins/treesitter: Use treehopper instead of textobjects
The whole bunch of treesitter text objects were difficult to remember
and we ended up rarely ever using any of the defined mappings.

treehopper simplifies things with a single mapping and hints.
2022-11-24 14:21:41 +05:30
ef4c3b7d30 nvim: Use more prominent white highlight for Comment
We seem to be making a lot of mistakes when it comes to handling
docs/comments in merge requests. Use a more prominent white colour
for the comment highlight group.
2022-11-23 12:42:06 +05:30
b294f196de nvim: after/plugin/nvim-lint: Use leader instead of local leader 2022-11-15 17:32:07 +05:30
3c3a2c5130 nvim: init: Enable closeoff and linematch options for diffopt
linematch option got merged a few hours ago with this commit.
https://github.com/neovim/neovim/pull/14537

While at it, set closeoff as well.
2022-11-07 14:33:29 +05:30
c37bd7d451 nvim: init: Drop tmux configuration for copying to system clipboard
This is not required any more with this upstream MR merged.
https://github.com/neovim/neovim/pull/20936
2022-11-06 10:40:28 +05:30
8d9d230c18 nvim: after/plugin/fugitive: Update gd/D mappings to use difftool 2022-11-04 17:46:44 +05:30
ba319f2bde nvim: after/plugin/gitsigns: Use on_attach callback to setup mappings
keymaps is deprecated.
2022-11-04 09:54:55 +05:30
36e7845aa4 nvim: after/ftplugin: Disable spell check for certain file types
Now that we enable spell check globally disable it for certain file
and buffer types like dirvish etc.
2022-11-01 18:39:11 +05:30
0c84a1d719 nvim: colors/yolokai: Remove obsolete TS highlight groups
See
https://github.com/nvim-treesitter/nvim-treesitter/issues/3572
https://github.com/nvim-treesitter/nvim-treesitter/pull/3656
2022-10-26 10:03:54 +05:30
6d7a9fe9b3 nvim: lsp: Use vim.notify to report error 2022-10-02 17:04:25 +05:30
1ae279fd57 nvim: init: Enable spellsitter
Enable spell check globally and remove file type specific settings.
Use the new treesitter powered spellsitter.
2022-10-01 09:45:24 +05:30
c626c1dac2 nvim: init: Enable British English spell language 2022-09-28 17:26:22 +05:30
43e4927c88 nvim: ftplugin: markdown: Enable spell check 2022-09-28 17:24:21 +05:30
f4ee744e85 nvim: plugins: Use vale.nvim for vale support 2022-09-28 17:14:44 +05:30
3ea83c67ba nvim: after/plugin/nvim-lint: Drop languagetool & vale
Both seem to give errors at the moment. While at it, drop the unused
flake8 args setting.
2022-09-28 17:13:37 +05:30
7c8841431a nvim: init/treesitter: Enable bundled parsers
Now that neovim bundles parsers and highlight queries for Lua, Vimscript
and C by default, enable the bundled ones.

We can drop the entries from languages enabled via nvim-treesitter.

See
https://github.com/neovim/neovim/issues/14090#issuecomment-1237820552
2022-09-18 12:57:19 +05:30
05c27960f7 nvim: lsp: Disable logging
Disable logging completely. The set_log_level call needs to be at the
top level else some log message related to startup still gets logged
if the call is done in on_attach.
2022-09-18 12:34:41 +05:30
e5352a7ac6 nvim: Update packer 2022-09-17 10:56:51 +05:30
4b18ecad6d nvim: Use ex commands as methods instead of string on vim.cmd 2022-09-17 10:56:51 +05:30
f04308f569 nvim: plugins: Make packer not fetch/pull tags
Upstream repos overwrite tags like release and then PackerSync complains
about failing to update since existing tags would be clobbered after an
update.
2022-09-16 20:39:17 +05:30
b398542a94 nvim: lsp: Minor clean up of autocmd callbacks 2022-09-13 18:16:08 +05:30
108403ca3d nvim: lsp: Drop custom range formatting function
With commit 11167ab, vim.lsp.buf.format now has a range argument
which defaults to current selection in visual mode.
2022-09-13 18:16:08 +05:30
6b9de43829 nvim: statusline: Add space after git ahead behind symbol 2022-09-05 19:04:30 +05:30
7bae888f7d nvim: plugins: Drop suda
sudoedit is appropriate for our needs.
2022-09-01 09:31:52 +05:30
9a26ef9c10 nvim: Drop nvim-lspconfig
Use the new vim.lsp.start API and LspAttach/Detach auto commands.
Drop nvim-lspconfig in the process.

LSP server specific configuration has been taken from nvim-lspconfig.
2022-08-31 12:21:28 +05:30
a18a0415b7 nvim: statusline: Do not set winbar for floating windows 2022-08-31 12:21:28 +05:30
8e8f6110e5 nvim: lsp: Fix argument ordering to on_attach for inlay hint 2022-08-29 17:35:47 +05:30
24f4e8aff1 nvim: Update packer 2022-08-23 10:00:34 +05:30
490fe4e853 nvim: plugins: Drop rust-tools & use lsp-inlayhints
We do not use any of the other features provided by rust-tools and
only ever needed the inlay hints. Now that there is a plugin for
that which also allows us to use inlay hints for other languages
use that.

There are two options
https://github.com/lvimuser/lsp-inlayhints.nvim
https://github.com/simrat39/inlay-hints.nvim

The second one is from the rust-tools author himself but we could
not get that to work.
2022-08-19 16:59:19 +05:30
74183bb5ec nvim: init: Drop unnecessary require 2022-08-19 16:59:19 +05:30
2f58beffc7 nvim: Update packer 2022-08-08 09:46:00 +05:30
1cf5377ae5 nvim: lsp: Remove obsolete flag for clangd 2022-08-06 11:41:09 +05:30
01dfb0429c nvim: lsp: range_code_action is deprecated
See PR
https://github.com/neovim/neovim/pull/19551
2022-08-03 14:24:58 +05:30
19e651780e keymappings: Fix command line mode mappings
See https://github.com/neovim/neovim/issues/14090#issuecomment-1202280881.
2022-08-03 13:12:41 +05:30
4e60a3f53e nvim: plugins: Drop vimtex
For any future LaTeX writing needs we only intend to use
markdown/pandoc.
2022-07-27 12:21:48 +05:30
8198cf7396 nvim: Update packer 2022-07-27 12:21:42 +05:30
d4edc15bd2 nvim: keymappings: Disable macro recording 2022-07-11 19:28:00 +05:30
01dddffa53 nvim: Update packer 2022-07-08 10:05:14 +05:30
35f9bead79 nvim: init: filetype.lua is now default
See
https://github.com/neovim/neovim/issues/14090#issuecomment-1177933661
2022-07-08 09:18:19 +05:30
f6465cb3a5 nvim: Update packer 2022-07-02 13:04:59 +05:30
f315c0060b nvim: statusline: Allow more width for git branch 2022-06-25 17:05:49 +05:30
d057fa0385 nvim: fugitive: Execute commands while keeping current alt file
Keep current alternate file where possible for git commands executed
via fugitive.
2022-06-19 15:48:57 +05:30
add2ceb869 nvim: statusline: Enable winbar
Use it to show full path for file. This frees up space in status line
when git branch names are long.
2022-06-08 09:51:47 +05:30
1fdb057edf nvim: Update packer 2022-06-05 15:03:49 +05:30
6be67782e6 nvim: treesitter: Add golang 2022-06-05 15:03:49 +05:30
664db0f770 nvim: after/plugin/nvim-lint: Remove flake8 as a linter for Python 2022-05-19 11:11:56 +05:30
d4f81fe865 nvim: plugin/visual-star-search: Set mark when doing backward search
While at it, drop calling set hlsearch for * and g* as hlsearch is
enabled by default and does not seem to be required.
2022-05-18 09:09:23 +05:30
f4b928bd3e nvim: after/plugin/ftplugin: Update setting of buffer local mappings 2022-05-14 13:45:21 +05:30