1
0
Fork 0

nvim: Switch from cmp to coq, dropping many other plugins
All checks were successful
Build / build-arm64-linux (push) Successful in 9m31s
Build / build-amd64-linux (push) Successful in 12m12s

This commit is contained in:
Daniel Kempkens 2023-10-03 22:31:16 +02:00
parent 9ab9b60d61
commit 803c5da18d
Signed by: daniel
SSH key fingerprint: SHA256:Ks/MyhQYcPRQiwMKLAKquWCdCPe3JXlb1WttgnAoSeM
13 changed files with 89 additions and 303 deletions

View file

@ -175,11 +175,11 @@
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1696203690,
"narHash": "sha256-774XMEL7VHSTLDYVkqrbl5GCdmkVKsjMs+KLM4N4t7k=",
"lastModified": 1696343447,
"narHash": "sha256-B2xAZKLkkeRFG5XcHHSXXcP7To9Xzr59KXeZiRf4vdQ=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "21928e6758af0a258002647d14363d5ffc85545b",
"rev": "c9afaba3dfa4085dbd2ccb38dfade5141e33d9d4",
"type": "github"
},
"original": {
@ -370,11 +370,11 @@
]
},
"locked": {
"lastModified": 1696043447,
"narHash": "sha256-VbJ1dY5pVH2fX1bS+cT2+4+BYEk4lMHRP0+udu9G6tk=",
"lastModified": 1696360011,
"narHash": "sha256-HpPv27qMuPou4acXcZ8Klm7Zt0Elv9dgDvSJaomWb9Y=",
"owner": "lnl7",
"repo": "nix-darwin",
"rev": "792c2e01347cb1b2e7ec84a1ef73453ca86537d8",
"rev": "8b6ea26d5d2e8359d06278364f41fbc4b903b28a",
"type": "github"
},
"original": {

View file

@ -65,7 +65,6 @@
(theme.setup))
;; Plugins
(set g.loaded_python_provider 0) ; Disable built-in providers
(set g.loaded_python3_provider 0)
(set g.loaded_ruby_provider 0)
(set g.loaded_node_provider 0)
(set g.loaded_perl_provider 0)

View file

@ -7,7 +7,6 @@
telescope-toggleterm (require :telescope-toggleterm)
telescope-ivy (telescope-themes.get_ivy)
telescope-dropdown (telescope-themes.get_dropdown)
noice (require :noice)
npairs (require :nvim-autopairs)
gitsigns (require :gitsigns)
repl (require :nifoc.repl)
@ -56,8 +55,8 @@
{:desc "Show Diagnostics"})
(keymap.set :n :<leader>dtp :<cmd>TSPlaygroundToggle<CR>
{:desc "Toggle Treetsitter Playground"})
(keymap.set :n :<leader>dn #(noice.cmd :telescope)
{:desc "Display Notifications"})
; (keymap.set :n :<leader>dn #(noice.cmd :telescope)
; {:desc "Display Notifications"})
;; Other Mappings
(keymap.set :n :<CR> ":nohlsearch<CR><CR>" {:silent true})
(keymap.set :i :<CR> npairs.autopairs_cr {:expr true :silent true})

View file

@ -1,71 +0,0 @@
(let [cmp (require :cmp)
luasnip (require :luasnip)
lspkind (require :lspkind)
npairs (require :nvim-autopairs.completion.cmp)]
(fn has-words-before? []
(let [(line col) (-> 0 (vim.api.nvim_win_get_cursor) (unpack))]
(if (not= col 0)
(let [line-content (vim.api.nvim_buf_get_lines 0 (- line 1) line true)
cursor-content (: (. line-content 1) :sub col col)]
(= (cursor-content:match "%s") nil))
false)))
(fn map-tab [fallback]
(if (cmp.visible) (cmp.select_next_item)
(luasnip.expand_or_jumpable) (luasnip.expand_or_jump)
(has-words-before?) (cmp.complete)
(fallback)))
(fn map-stab [fallback]
(if (cmp.visible) (cmp.select_prev_item)
(luasnip.jumpable -1) (luasnip.jump -1)
(fallback)))
(cmp.setup {:sources (cmp.config.sources [{:name :nvim_lsp}
;{:name :nvim_lsp_signature_help}
{:name :luasnip}
{:name :treesitter
:keyword_length 3}
{:name :buffer :keyword_length 3}
{:name :path}])
:mapping (cmp.mapping.preset.insert {:<C-e> (cmp.mapping {:i (cmp.mapping.abort)
:c (cmp.mapping.close)})
:<esc> (cmp.mapping {:i (cmp.mapping.abort)})
:<Tab> (cmp.mapping {:c #(if (cmp.visible)
(cmp.select_next_item {:behavior cmp.SelectBehavior.Insert})
(cmp.complete))
:i map-tab
:s map-tab})
:<S-Tab> (cmp.mapping {:c #(if (cmp.visible)
(cmp.select_prev_item {:behavior cmp.SelectBehavior.Insert})
(cmp.complete))
:i map-stab
:s map-stab})
:<C-Space> (cmp.mapping.confirm {:behavior cmp.ConfirmBehavior.Insert
:select true})
:<CR> (cmp.mapping.confirm {:select true})})
:window {:documentation (cmp.config.window.bordered)}
:completion {:keyword_length 2
:completeopt "menu,menuone,noinsert"}
:snippet {:expand (fn [args]
(luasnip.lsp_expand args.body))}
:formatting {:format (lspkind.cmp_format {:mode :symbol_text
:menu {:buffer "[Buffer]"
:cmdline "[Cmd]"
:luasnip "[LuaSnip]"
:nvim_lsp "[LSP]"
:nvim_lsp_document_symbol "[Symbol]"
:nvim_lsp_signature_help "[param]"
:nvim_lua "[Lua]"
:path "[Path]"
:treesitter "[Treesitter]"}})}})
(cmp.setup.cmdline "/"
{:sources (cmp.config.sources [{:name :nvim_lsp_document_symbol}]
[{:name :buffer}])
:mapping (cmp.mapping.preset.cmdline)})
(cmp.setup.cmdline ":"
{:sources (cmp.config.sources [{:name :path}]
[{:name :cmdline}])
:mapping (cmp.mapping.preset.cmdline)})
(cmp.event:on :confirm_done (npairs.on_confirm_done)))

View file

@ -0,0 +1,33 @@
(let [g vim.g]
(set g.coq_settings
{:auto_start :shut-up
:display {:preview {:positions {:north 2 :south 3 :west 4 :east 1}}
:pum {:kind_context [" " ""]}
:icons {:mode :short
:mappings {:Text "󰉿"
:Method "󰆧"
:Function "󰊕"
:Constructor ""
:Field "󰜢"
:Variable "󰀫"
:Class "󰠱"
:Interface ""
:Module ""
:Property "󰜢"
:Unit "󰑭"
:Value "󰎠"
:Enum ""
:Keyword "󰌋"
:Snippet ""
:Color "󰏘"
:File "󰈙"
:Reference "󰈇"
:Folder "󰉋"
:EnumMember ""
:Constant "󰏿"
:Struct "󰙅"
:Event ""
:Operator "󰆕"
:TypeParameter ""}}}
:clients {:tags.enabled false :tmux.enabled false}})
(require :coq))

View file

@ -1,6 +1,6 @@
(let [lsp (require :lspconfig)
lsp-configs (require :lspconfig.configs)
cmp (require :cmp_nvim_lsp)
coq (require :coq)
navic (require :nvim-navic)
diagnostic (require :nifoc.diagnostic)
formatting (require :nifoc.formatting)
@ -29,9 +29,8 @@
:desc "Automatic LSP setup"})
;; Servers
(vim.lsp.set_log_level :OFF)
(let [capabilities (cmp.default_capabilities)
flags {:allow_incremental_sync true :debounce_text_changes 700}
default-config {: capabilities : flags}
(let [flags {:allow_incremental_sync true :debounce_text_changes 700}
default-config (coq.lsp_ensure_capabilities {: flags})
default-servers [:bashls
:cssls
:dockerls

View file

@ -1,6 +0,0 @@
(let [luasnip (require :luasnip)
luasnip-vscode (require :luasnip.loaders.from_vscode)]
(luasnip.config.setup {:region_check_events "CursorHold,InsertEnter,InsertLeave"
:delete_check_events "TextChanged,InsertEnter"})
(luasnip-vscode.lazy_load))

View file

@ -1,6 +0,0 @@
(let [noice (require :noice)]
(noice.setup {:lsp {:override {:vim.lsp.util.convert_input_to_markdown_lines true
:vim.lsp.util.stylize_markdown true
:cmp.entry.get_documentation true}}
:presets {:lsp_doc_border true}}))

View file

@ -0,0 +1,3 @@
(let [notify (require :notify)]
(notify.setup {:stages :fade})
(set vim.notify notify))

View file

@ -13,7 +13,7 @@ in
withNodeJs = false;
withRuby = false;
withPython3 = false;
withPython3 = true;
extraLuaPackages = luaPkgs: with luaPkgs; [ jsregexp lua-toml readline ];
@ -23,6 +23,7 @@ in
tree-sitter
fd
ripgrep
universal-ctags
# LSP
fennel-ls
@ -192,6 +193,15 @@ in
telescope-toggleterm-nvim
telescope-undo-nvim
# Completion
{
plugin = coq_nvim;
config = builtins.readFile ../../config/nvim/plugins/coq.fnl;
type = "fennel";
}
coq-artifacts
# LSP
{
plugin = nvim-lspconfig;
@ -201,8 +211,6 @@ in
nvim-jdtls
lspkind-nvim
{
plugin = nvim-navic;
config = builtins.readFile ../../config/nvim/plugins/navic.fnl;
@ -229,31 +237,6 @@ in
type = "fennel";
}
# Snippets
{
plugin = LuaSnip;
config = builtins.readFile ../../config/nvim/plugins/luasnip.fnl;
type = "fennel";
}
friendly-snippets
# cmp
{
plugin = nvim-cmp;
config = builtins.readFile ../../config/nvim/plugins/cmp.fnl;
type = "fennel";
}
cmp-nvim-lsp
# cmp-nvim-lsp-signature-help
cmp_luasnip
cmp-path
cmp-buffer
cmp-treesitter
cmp-cmdline
cmp-nvim-lsp-document-symbol
# Formatting
core-nvim
@ -336,13 +319,6 @@ in
}
nvim-notify
nui-nvim
{
plugin = noice-nvim;
config = builtins.readFile ../../config/nvim/plugins/noice.fnl;
type = "fennel";
}
];
};

View file

@ -122,8 +122,8 @@ in
src = fetchFromGitHub {
owner = "nvim-treesitter";
repo = "nvim-treesitter";
rev = "32cc79b63342662f1136aebd93ba190778a45c92";
sha256 = "01vpbpggffx28mp1m061ncappcd9pngzmgavy73v51y50bf5dnk7";
rev = "812c2dd8fe838bb26cb53f0d251116468c2cae37";
sha256 = "02v2gfxlynjbrly1fzqkx8fdm2zsl96nn921kn8dwbfzqh7q9v34";
fetchSubmodules = false;
};
};
@ -140,12 +140,12 @@ in
};
rainbow-delimiters-nvim = buildVimPlugin {
pname = "rainbow-delimiters.nvim";
version = "2023-09-28";
version = "2023-10-03";
src = fetchFromGitHub {
owner = "HiPhish";
repo = "rainbow-delimiters.nvim";
rev = "ece052dbcb2b3d2980f0f9881e41277929813644";
sha256 = "05rc0mgn3jbp1aiac7531cidpc1s79qi1zhj2l7cz9353cfq0j47";
rev = "652345bd1aa333f60c9cbb1259f77155786e5514";
sha256 = "0zw1q7nj76dvvnrb539xc11pymhjbgdjd54m2z64qxbi4n5qwryr";
fetchSubmodules = false;
};
};
@ -262,17 +262,6 @@ in
fetchSubmodules = false;
};
};
lspkind-nvim = buildVimPlugin {
pname = "lspkind.nvim";
version = "2023-05-05";
src = fetchFromGitHub {
owner = "onsails";
repo = "lspkind.nvim";
rev = "57610d5ab560c073c465d6faf0c19f200cb67e6e";
sha256 = "18lpp3ng52ylp8s79qc84b4dhmy7ymgis7rjp88zghv1kndrksjb";
fetchSubmodules = false;
};
};
nvim-navic = buildVimPlugin {
pname = "nvim-navic";
version = "2023-09-18";
@ -317,124 +306,24 @@ in
fetchSubmodules = false;
};
};
LuaSnip = buildVimPlugin {
pname = "LuaSnip";
version = "2023-09-25";
coq_nvim = pkgs.vimPlugins.coq_nvim.overrideAttrs (_: {
version = "2023-09-05";
src = fetchFromGitHub {
owner = "L3MON4D3";
repo = "LuaSnip";
rev = "480b032f6708573334f4437d3f83307d143f1a72";
sha256 = "0ckysmd0612ssia9d5bvdz2p91zcfs6ak3q14aps4cn9acbzkfp6";
owner = "ms-jpq";
repo = "coq_nvim";
rev = "e7304683400a65e3f85e6973fcc2ad2a1bc811e6";
sha256 = "05jb2jarrw6amrpxalgxngdans89s18009vx4mx3l9imagn1rx5v";
fetchSubmodules = false;
};
};
friendly-snippets = buildVimPlugin {
pname = "friendly-snippets";
version = "2023-10-01";
});
coq-artifacts = buildVimPlugin {
pname = "coq.artifacts";
version = "2023-09-07";
src = fetchFromGitHub {
owner = "rafamadriz";
repo = "friendly-snippets";
rev = "43727c2ff84240e55d4069ec3e6158d74cb534b6";
sha256 = "1sjk17gn919aa84dkjfagwwjsas9zfkbrk840bjf580k8m83d9m8";
fetchSubmodules = false;
};
};
nvim-cmp = buildVimPlugin {
pname = "nvim-cmp";
version = "2023-08-26";
src = fetchFromGitHub {
owner = "hrsh7th";
repo = "nvim-cmp";
rev = "5dce1b778b85c717f6614e3f4da45e9f19f54435";
sha256 = "1yl5b680p6vhk1741riiwjnw7a4wn0nimjvcab0ij6mx3kf28rsq";
fetchSubmodules = false;
};
};
cmp-nvim-lsp = buildVimPlugin {
pname = "cmp-nvim-lsp";
version = "2023-06-23";
src = fetchFromGitHub {
owner = "hrsh7th";
repo = "cmp-nvim-lsp";
rev = "44b16d11215dce86f253ce0c30949813c0a90765";
sha256 = "1ny64ls3z9pcflsg3sd7xnd795mcfbqhyan3bk4ymxgv5jh2qkcr";
fetchSubmodules = false;
};
};
cmp-nvim-lsp-signature-help = buildVimPlugin {
pname = "cmp-nvim-lsp-signature-help";
version = "2023-02-03";
src = fetchFromGitHub {
owner = "hrsh7th";
repo = "cmp-nvim-lsp-signature-help";
rev = "3d8912ebeb56e5ae08ef0906e3a54de1c66b92f1";
sha256 = "0bkviamzpkw6yv4cyqa9pqm1g2gsvzk87v8xc4574yf86jz5hg68";
fetchSubmodules = false;
};
};
cmp_luasnip = buildVimPlugin {
pname = "cmp_luasnip";
version = "2022-10-28";
src = fetchFromGitHub {
owner = "saadparwaiz1";
repo = "cmp_luasnip";
rev = "18095520391186d634a0045dacaa346291096566";
sha256 = "0b91ap1l3nph46r7b5hcn7413yj3zhrz1jmn4xqp387ng35qz537";
fetchSubmodules = false;
};
};
cmp-path = buildVimPlugin {
pname = "cmp-path";
version = "2022-10-03";
src = fetchFromGitHub {
owner = "hrsh7th";
repo = "cmp-path";
rev = "91ff86cd9c29299a64f968ebb45846c485725f23";
sha256 = "18ixx14ibc7qrv32nj0ylxrx8w4ggg49l5vhcqd35hkp4n56j6mn";
fetchSubmodules = false;
};
};
cmp-buffer = buildVimPlugin {
pname = "cmp-buffer";
version = "2022-08-10";
src = fetchFromGitHub {
owner = "hrsh7th";
repo = "cmp-buffer";
rev = "3022dbc9166796b644a841a02de8dd1cc1d311fa";
sha256 = "1cwx8ky74633y0bmqmvq1lqzmphadnhzmhzkddl3hpb7rgn18vkl";
fetchSubmodules = false;
};
};
cmp-treesitter = buildVimPlugin {
pname = "cmp-treesitter";
version = "2023-04-06";
src = fetchFromGitHub {
owner = "ray-x";
repo = "cmp-treesitter";
rev = "389eadd48c27aa6dc0e6b992644704f026802a2e";
sha256 = "0kbxjpw7j90pgvwmx3cb47jkk01wx5q6fqr660llinqc1vmj1rsq";
fetchSubmodules = false;
};
};
cmp-cmdline = buildVimPlugin {
pname = "cmp-cmdline";
version = "2023-06-08";
src = fetchFromGitHub {
owner = "hrsh7th";
repo = "cmp-cmdline";
rev = "8ee981b4a91f536f52add291594e89fb6645e451";
sha256 = "03j79ncxnnpilx17x70my7s8vvc4w81kipraq29g4vp32dggzjsv";
fetchSubmodules = false;
};
};
cmp-nvim-lsp-document-symbol = buildVimPlugin {
pname = "cmp-nvim-lsp-document-symbol";
version = "2023-04-01";
src = fetchFromGitHub {
owner = "hrsh7th";
repo = "cmp-nvim-lsp-document-symbol";
rev = "f0f53f704c08ea501f9d222b23491b0d354644b0";
sha256 = "1zcplbb2kkq3f9mmy6zfgscdiccqiwkjr4d91qqjxp80yi1v9z4j";
owner = "ms-jpq";
repo = "coq.artifacts";
rev = "469c27eb84a91fe2721b6c0af57703ffa1e785e9";
sha256 = "0v902lf7l0590nif3g45c5ad0s1wr9v7bz0g733aji9hh3fcxl8i";
fetchSubmodules = false;
};
};
@ -572,23 +461,12 @@ in
};
gitsigns-nvim = buildVimPlugin {
pname = "gitsigns.nvim";
version = "2023-10-02";
version = "2023-10-03";
src = fetchFromGitHub {
owner = "lewis6991";
repo = "gitsigns.nvim";
rev = "b14b9fba7d085ed8c11392aa51e575de84822bb1";
sha256 = "0mw9fb9mgvh6hfc18n871c3kbdwhyms0jxpj07glxhxb3qrw34yg";
fetchSubmodules = false;
};
};
nui-nvim = buildVimPlugin {
pname = "nui.nvim";
version = "2023-09-06";
src = fetchFromGitHub {
owner = "MunifTanjim";
repo = "nui.nvim";
rev = "c8de23342caf8d50b15d6b28368d36a56a69d76f";
sha256 = "0na7mi192alj1pyskdyivn12a0nmcmzy79kmqxyz8r1cijgb33q2";
rev = "2272cf9f0c092e908f892f5b075e6cc2a8d3d07d";
sha256 = "1dxcd2h7gahpsdgabbknjw568bdd3fxsydwynvz67qjz6xss90b3";
fetchSubmodules = false;
};
};
@ -603,15 +481,4 @@ in
fetchSubmodules = false;
};
};
noice-nvim = buildVimPlugin {
pname = "noice.nvim";
version = "2023-09-25";
src = fetchFromGitHub {
owner = "folke";
repo = "noice.nvim";
rev = "396f9146529130904e07c45e90ecdbfa607534f3";
sha256 = "0n7z491mg9wlr9vhpzanly9ywykbjavv04qk1f5msj5i5r613jh9";
fetchSubmodules = false;
};
};
}

View file

@ -29,26 +29,17 @@
# LSP
- src: neovim/nvim-lspconfig
- src: mfussenegger/nvim-jdtls
- src: onsails/lspkind.nvim
- src: SmiteshP/nvim-navic
- src: RRethy/vim-illuminate
# Linter
- src: mfussenegger/nvim-lint
# Comments
- src: numtostr/comment.nvim
# Snippets
- src: L3MON4D3/LuaSnip
- src: rafamadriz/friendly-snippets
# cmp
- src: hrsh7th/nvim-cmp
- src: hrsh7th/cmp-nvim-lsp
- src: hrsh7th/cmp-nvim-lsp-signature-help
- src: saadparwaiz1/cmp_luasnip
- src: hrsh7th/cmp-path
- src: hrsh7th/cmp-buffer
- src: ray-x/cmp-treesitter
- src: hrsh7th/cmp-cmdline
- src: hrsh7th/cmp-nvim-lsp-document-symbol
# Completion
- src: ms-jpq/coq_nvim
branch: coq
- src: ms-jpq/coq.artifacts
branch: artifacts
# Formatting
- src: niuiic/core.nvim
- src: niuiic/format.nvim
@ -66,6 +57,4 @@
- src: akinsho/toggleterm.nvim
- src: axieax/urlview.nvim
- src: lewis6991/gitsigns.nvim
- src: MunifTanjim/nui.nvim
- src: rcarriga/nvim-notify
- src: folke/noice.nvim

View file

@ -90,6 +90,10 @@ for plugin in "${plugin_array[@]}"; do
# echo "${name} = pkgs.vimPlugins.nvim-treesitter.overrideAttrs (_: {" >>"$nix_new_file"
# close_block="});"
# ;;
coq_nvim)
echo "${name} = pkgs.vimPlugins.coq_nvim.overrideAttrs (_: {" >>"$nix_new_file"
close_block="});"
;;
*)
{
echo "${name} = buildVimPlugin {"