diff options
feat: add plugins and settings for SuperCollider
Diffstat (limited to '')
| -rw-r--r-- | flake.nix | 3 | ||||
| -rw-r--r-- | lua/config/plugins/extra.lua | 42 | 
2 files changed, 45 insertions, 0 deletions
| @@ -270,6 +270,9 @@                  oil-nvim                  yanky-nvim                  which-key-nvim + +                # SuperCollider +                scnvim                ];              };            }; diff --git a/lua/config/plugins/extra.lua b/lua/config/plugins/extra.lua index 2f7bf9c..1241f6c 100644 --- a/lua/config/plugins/extra.lua +++ b/lua/config/plugins/extra.lua @@ -108,6 +108,9 @@ return {  					{ "<leader>gh", group = "hunk" },  					{ "<leader>S", group = "surround" },  				}, + +				{ "<leader>x", group = "extra" }, +				{ "<leader>xS", group = "supercollider" },  			})  		end,  	}, @@ -122,4 +125,43 @@ return {  			{ "-", "<CMD>Oil<CR>", { desc = "Open parent directory" } },  		},  	}, +	{ +		"scnvim", +		-- NOTE: this plugin is broken when try to lazyload +		lazy = false, +		after = function(_) +			local scnvim = require("scnvim") +			local map = scnvim.map +			local map_expr = scnvim.map_expr + +			scnvim.setup({ +				keymaps = { +					["<M-CR>"] = { +						map("editor.send_block", { "i", "n" }), +						map("editor.send_selection", "x"), +					}, +					["<C-CR>"] = map("editor.send_line", { "i", "n" }), +					["<C-k>"] = map("signature.show", { "i", "n" }), + +					["<F12>"] = map("sclang.hard_stop", { "i", "n", "x" }), +				}, +			}) + +			vim.api.nvim_create_augroup("my.scnvim", { clear = true }) +			vim.api.nvim_create_autocmd("InsertEnter", { +				pattern = "*.scd", +				group = "my.scnvim", +				once = true, +				callback = function() +					-- Loading snippets to LuaSnip +					require("luasnip").add_snippets("supercollider", require("scnvim/utils").get_snippets()) +				end, +			}) +		end, +		keys = { +			{ "<leader>xSs", "<CMD>SCNvimStart<CR>", desc = "Start SuperCollider" }, +			{ "<leader>xSS", "<CMD>SCNvimStop<CR>", desc = "Stop SuperCollider" }, +			{ "<leader>xSr", "<CMD>SCNvimRecompile<CR>", desc = "Recompile SuperCollider sclang" }, +		}, +	},  } | 
