Commit graph

1154 commits

Author SHA1 Message Date
Sanchayan Maity ea588b0556
nvim: after/plugin/mini: Drop use of align module 2023-07-06 16:57:38 +05:30
Sanchayan Maity f349a32582
nvim: treesitter: Bash, markdown & python are included upstream 2023-07-03 17:23:25 +05:30
Sanchayan Maity 81508aa84b
nvim: after/plugin/mini: Add a key mapping for removing white space 2023-07-03 17:22:20 +05:30
Sanchayan Maity d159850db2
nvim: lsp: inlay_hint() has been moved to vim.lsp 2023-07-01 09:14:26 +05:30
Sanchayan Maity 9c9dc6a6b8
nvim: after/plugin/mini: Use jump2d for f, F, t, T motions
mini.jump module does not give multiple hints when moving on the
same line like hop use to. Use the jump2d module to achieve this
functionality. This makes it easy to jump forward or backward on
the same line with just one hop instead of having to press f/F
multiple times which is just annoying and stupid.
2023-06-29 19:32:05 +05:30
Sanchayan Maity 0265000a4f
nvim: lsp/statusline: Add support for LSP progress
Use the same timer loop for updating LSP progress in status line
which we use for updating git ahead, behind status.
2023-06-24 15:30:22 +05:30
Sanchayan Maity c1e4b234fb
nvim: statusline: vim.loop has been renamed to vim.uv 2023-06-22 17:16:23 +05:30
Sanchayan Maity 9d8130d160
nvim: lsp: Minor clean up
Define functions in a consistent way through out. We like the pattern
`local function_name = function()` instead of `local function_name()`
for defining functions.
2023-06-22 12:21:42 +05:30
Sanchayan Maity 31c9213c0a
nvim: lsp: Add support for inlay hints
Make sure to disable inlay hints by default. It seems to be quite
bug ridden at the moment. However, we add a key mapping to toggle
inlay hints.
2023-06-22 12:19:30 +05:30
Sanchayan Maity 12a925d203
nvim: colors/yolokai: Add highlight for LSP inlay hints 2023-06-22 11:38:39 +05:30
Sanchayan Maity 8f05d13b11
nvim: plugins: Drop inlayhints
Drop lsp-inlayhints now that upstream merged support for inlay hints.

https://github.com/neovim/neovim/pull/23984
https://github.com/neovim/neovim/pull/24071
2023-06-20 16:58:13 +05:30
Sanchayan Maity d3775127f8
nvim: treesitter: Register haskell parser in ftplugin
4468c8b made PureScript use Haskell for treesitter queries. However,
setting them up globally sometimes seems to result in Haskell files
getting identified as PureScript and triggering a PureScript LSP
server attach. At least that's what the behaviour seems like.

To prevent this, register the usage of Haskell treesitter queries
in ftplugin viz. when PureScript file type is detected.
2023-06-20 16:58:13 +05:30
Sanchayan Maity 6f78a23ab3
nvim: after/ftplugin/haskell: Update tags on file save 2023-06-20 16:58:12 +05:30
Sanchayan Maity 99531be4ad
Revert "nvim: keymappings: Drop all key mappings for tags"
This reverts commit 3657612dbb.

We want to use fast-tags with Haskell.
2023-06-20 16:58:12 +05:30
Sanchayan Maity 89dd0df8a1
nvim: plugins: Drop vim-husk
There has not been any update to the plugin in 8 years. Just drop
it from the plugin list and incorporate it directly in our config.
2023-06-19 13:09:15 +05:30
Sanchayan Maity 551ca63dfa
nvim: Update paq 2023-06-19 11:38:43 +05:30
Sanchayan Maity c398856dd4
nvim: compiler: Drop custom compiler files
Now that we use LSP everywhere these are not required any more.
2023-06-16 12:59:37 +05:30
Sanchayan Maity e9f10fa776
nvim: after/ftplugin: haskell: Set makeprg 2023-06-16 12:59:37 +05:30
Sanchayan Maity 5a1883fb2d
nvim: after/ftplugin/cabal: Set comment string 2023-06-10 13:30:04 +05:30
Sanchayan Maity b6243f2a9a
Revert "nvim: plugin: Add a simple whitespace plugin"
This reverts commit 891fae907b.

Now that we have mini.trailspace enabled by default, drop this
whitespace plugin.
2023-06-07 14:14:56 +05:30
Sanchayan Maity 4468c8b0c1
nvim: treesitter: Make PureScript use Haskell parser and queries
Turns out that the Haskell treesitter implementation can be used
for PureScript as well.

This is exactly what Helix does.
https://github.com/helix-editor/helix/pull/4242/files
2023-06-07 13:47:44 +05:30
Sanchayan Maity d5a70895a5
nvim: plugins: Drop purescript-vim for PureScript syntax highlighting
This reverts 587d76d.
2023-06-07 13:46:40 +05:30
Sanchayan Maity cf85dfa8ee
nvim: ftdetect/purescript: Detect purs files as purescript 2023-06-07 13:44:23 +05:30
Sanchayan Maity f1f9058f06
nvim: plugins: nvim-pqf moved to GitHub 2023-06-07 12:43:32 +05:30
Sanchayan Maity e758ef0a08
nvim: after/ftplugin: Disable mini trailspace
Now we enable trailspace module from mini, disable it for file types
where we do not want trailing space to be highlighted.
2023-06-07 12:43:15 +05:30
Sanchayan Maity 3fd01ac9e6
nvim: colors/yolokai: Add highlights for mini.nvim 2023-06-07 12:43:15 +05:30
Sanchayan Maity 29c657b395
nvim: Use modules from mini.nvim
We drop Comment, hop & vim-surround in favour of modules from mini.
This change is triggered by the fact that hop's author has decided
to not maintain it any more. There is also pounce but mini seems
simple and we can also use other modules it provides.
2023-06-07 12:42:40 +05:30
Sanchayan Maity 6cb83ef74d
nvim: treesitter: Disable additional vim regex highlighting
With this set to true, neovim will run `:h syntax` and tree-sitter
at the same time. Using this option may slow down one's editor and
one may see some duplicate highlights. Disable it.
2023-06-02 13:44:11 +05:30
Sanchayan Maity 909cbef796
nvim: colors/yolokai: Add highlights for diff treesitter
Found the solution from this issue
https://github.com/the-mikedavis/tree-sitter-diff/issues/5
2023-06-02 13:44:11 +05:30
Sanchayan Maity 49f88776ea
nvim: treesitter: Enable diff 2023-06-02 13:10:28 +05:30
Sanchayan Maity 8d2b94856c
nvim: after/ftplugin/scheme: Drop use of racket lang server for scheme 2023-05-31 10:29:38 +05:30
Sanchayan Maity 5674bbdc06
nvim: lsp: Add support for reloading Cargo workspace
While at it, refactor the custom setup and clean up for clients in
a single function.
2023-05-25 13:41:58 +05:30
Sanchayan Maity 269382b363
nvim: lsp-utils: Set capabilities
We missed setting this and it gives an error like below when using
HLS and rust-analyzer.

```bash
LSP[rust-analyzer]: Error SERVER_REQUEST_HANDLER_ERROR: "/usr/local/share/nvim/runtime/lua/vim/lsp/_watchfiles.lua:199: attempt to index field 'capabilities' (a nil value)"
```
2023-05-25 13:41:58 +05:30
Sanchayan Maity c844fe5874
nvim: after/plugin/nvim-lint: Enable actionlint
Run actionlint on save for GitHub Action workflow yaml files.
2023-05-18 15:37:41 +05:30
Sanchayan Maity 245855e5ff
nvim: plugin/session: Do not load session if Quickfix list is loaded
This is required if we want to use git-jump or do anything with `nvim -q`.
2023-05-15 20:45:48 +05:30
Sanchayan Maity 42601f6214
nvim: after/plugin/easyalign: Allow aligning on ' 2023-05-09 16:19:06 +05:30
Sanchayan Maity 1546762662
nvim: after/plugin/fzf-lua: Always parse globs in grep 2023-05-08 18:06:18 +05:30
Sanchayan Maity f8267b23b0
nvim: after/plugin/gitlinker: Add gitea web hosts we work with 2023-05-06 18:20:19 +05:30
Sanchayan Maity 3987cb202b
nvim: lsp: Update completion kind symbols
This broke due to an update with the nerd-fonts package.

See related
https://www.reddit.com/r/archlinux/comments/1358gvh/switch_from_ttfnerdfontssymbols2048emmono_broke/
https://github.com/ryanoasis/nerd-fonts/issues/1190

Stole one or two icons from
https://github.com/onsails/lspkind.nvim/pull/64

and the rest fixed by nerdfix.
https://github.com/loichyan/nerdfix
2023-05-03 11:19:57 +05:30
Sanchayan Maity eafc975e35
nvim: plugin: Add a simple session management plugin 2023-05-02 16:33:52 +05:30
Sanchayan Maity 7271c9b030
nvim: plugins: Remove auto-session
Recent changes to auto-session which got added with session lens
support are just plain annoying. It adds telescope support which
broke session loading as we do not use telescope. It has started
creating session files which we do not want and there seems to be
no setting to disable them or at least if there is it is not at
all obvious from the documentation. Just nuke this nonsense.
2023-05-01 11:30:28 +05:30
Sanchayan Maity 95cb836e8d
nvim: after/ftplugin/cabal: Add cabalfmt plugin
Since we reverted cabal-fmt support via HLS in the previous commit
add the cabalfmt plugin. Just add it to our own ftplugin instead of
adding via the plugin list.
2023-04-25 16:28:02 +05:30
Sanchayan Maity 5bba0b1789
Revert "nvim: after/ftplugin/cabal: Enable HLS on cabal files"
This reverts commit 34a5bbdacb.

HLS complains a lot (forgot the error) when trying to edit cabal files
making it almost unusable. It was nice to not require a separate plugin
for formatting cabal files, but, since this is not usable, disable it.
2023-04-25 16:28:02 +05:30
Sanchayan Maity 9c4bdb5644
nvim: init: Drop textobj-word-column setting
We dropped the plugin in c800b66, so remove the left behind setting.
2023-04-22 13:05:52 +05:30
Sanchayan Maity 39900dd9a7
nvim: after/ftplugin/purescript: Add PureScript LSP support 2023-04-22 13:05:51 +05:30
Sanchayan Maity 27e6af32b9
nvim: plugins: Add syntax highlighting for PureScript 2023-04-21 18:47:15 +05:30
Sanchayan Maity a039a58dd2
nvim: colors/yolokai: Convert all tabs to spaces 2023-04-12 11:20:39 +05:30
Sanchayan Maity fe7ca593ae
nvim: lsp: Enable semantic token highlighting
This effectively reverts commit 0c9e0eb.
2023-04-12 11:14:42 +05:30
Sanchayan Maity 4c409188be
nvim: colors/yolokai: Add semantic highlight groups
For more information, see
https://www.reddit.com/r/neovim/comments/12gvms4/this_is_why_your_higlights_look_different_in_90/
https://github.com/Iron-E/nvim-highlite/blob/master-v3/colors/highlite.lua

Changes are taken from the above two sources.
2023-04-12 11:14:42 +05:30
Sanchayan Maity 7ca6a1c1b8
nvim: after/ftplugin/rust: Remove format on save
Formatting on save tends to go completely wrong sometimes for some
reason. Just remove it.
2023-03-21 17:22:52 +05:30