diff --git a/neovim/nvim.nix b/neovim/nvim.nix index 78796804..a6eeb64c 100644 --- a/neovim/nvim.nix +++ b/neovim/nvim.nix @@ -541,6 +541,53 @@ in rec { pcall(vim.cmd'%!${pkgs.sleek}/bin/sleek') end, {}) + + local iron = require("iron.core") + iron.setup({ + config = { + -- Whether a repl should be discarded or not + scratch_repl = true, + -- Your repl definitions come here + repl_definition = { + sh = { + -- Can be a table or a function that + -- returns a table (see below) + command = {"zsh"} + }, + sqlite = { + + } + }, + -- How the repl window will be displayed + -- See below for more information + repl_open_cmd = require('iron.view').right(40), + }, + -- Iron doesn't set keymaps by default anymore. + -- You can set them here or manually add keymaps to the functions in iron.core + keymaps = { + send_motion = "sc", + visual_send = "sc", + send_file = "sf", + send_line = "sl", + send_until_cursor = "su", + send_mark = "sm", + mark_motion = "mc", + mark_visual = "mc", + remove_mark = "md", + cr = "s", + interrupt = "s", + exit = "sq", + clear = "cl", + }, + -- If the highlight is on, you can change how it looks + -- For the available options, check nvim_set_hl + highlight = { + italic = true + }, + ignore_blank_lines = true, -- ignore blank lines when sending visual select lines + }) + + ''; package = pkgs.neovim-nightly; opts = { @@ -609,6 +656,8 @@ in rec { nvim_context_vt nvim-devdocs + iron-nvim + pkgs.tree-sitter-grammars.tree-sitter-just pkgs.tree-sitter-grammars.tree-sitter-nu ];