From d7e405283fd8829d5f5a905948b32fd174c814ea Mon Sep 17 00:00:00 2001 From: Florian Teich Date: Mon, 24 Nov 2025 19:39:21 +0100 Subject: [PATCH] addingiron --- init.lua | 1 + lazy-lock.json | 1 + lua/kickstart/plugins/iron.lua | 51 ++++++++++++++++++++++++++++++++++ 3 files changed, 53 insertions(+) create mode 100644 lua/kickstart/plugins/iron.lua diff --git a/init.lua b/init.lua index db34dcae..584d0cf6 100644 --- a/init.lua +++ b/init.lua @@ -1074,6 +1074,7 @@ require('lazy').setup({ -- require 'kickstart.plugins.lint', -- require 'kickstart.plugins.autopairs', require 'kickstart.plugins.neo-tree', + require 'kickstart.plugins.iron', -- require 'kickstart.plugins.gitsigns', -- adds gitsigns recommend keymaps -- Scala language support diff --git a/lazy-lock.json b/lazy-lock.json index fdb46020..316651b1 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -7,6 +7,7 @@ "fidget.nvim": { "branch": "main", "commit": "e32b672d8fd343f9d6a76944fedb8c61d7d8111a" }, "gitsigns.nvim": { "branch": "main", "commit": "cdafc320f03f2572c40ab93a4eecb733d4016d07" }, "guess-indent.nvim": { "branch": "main", "commit": "84a4987ff36798c2fc1169cbaff67960aed9776f" }, + "iron.nvim": { "branch": "master", "commit": "746414e67adcd3ad2ad5dbe6262543b55ac3f3cd" }, "lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" }, "lazydev.nvim": { "branch": "main", "commit": "5231c62aa83c2f8dc8e7ba957aa77098cda1257d" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "7d527c76c43f46294de9c19d39c5a86317809b4b" }, diff --git a/lua/kickstart/plugins/iron.lua b/lua/kickstart/plugins/iron.lua new file mode 100644 index 00000000..ba2d75ac --- /dev/null +++ b/lua/kickstart/plugins/iron.lua @@ -0,0 +1,51 @@ +return { + "Vigemus/iron.nvim", + config = function() + local iron = require("iron.core") + local view = require("iron.view") + local common = require("iron.fts.common") + + iron.setup({ + config = { + scratch_repl = true, + -- How the repl window will be displayed + repl_open_cmd = view.bottom(40), + -- Choose your preferred REPL for each language: + repl_definition = { + sh = { + command = {"zsh"} + }, + python = { + command = {"python3"}, + format = common.bracketed_paste_python, + }, + }, + }, + + keymaps = { + send_motion = "rs", + visual_send = "rs", + send_file = "rf", + send_line = "rl", + send_mark = "rm", + mark_motion = "rm", + mark_visual = "rm", + remove_mark = "rd", + cr = "r", + interrupt = "r", + exit = "rq", + clear = "rc", + }, + + highlight = { italic = true }, + ignore_blank_lines = true, + }) + + -- Optional: automatically open the REPL on first send + vim.keymap.set("n", "ro", function() + local ft = vim.bo.filetype + require("iron.core").repl_for(ft) + require("iron.core").focus_on(ft) + end) + end, +}