return { 'Vigemus/iron.nvim', branch = 'master', config = function() 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' }, }, python = { command = { 'python3' }, -- or { "ipython", "--no-autoindent" } format = require('iron.fts.common').bracketed_paste_python, }, }, -- How the repl window will be displayed -- See below for more information repl_open_cmd = require('iron.view').split.vertical('50%'), }, -- 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_paragraph = 'sp', 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 }) -- iron also has a list of commands, see :h iron-commands for all available commands end, cmd = { 'IronRepl', 'IronRestart', 'IronFocus', 'IronHide', 'IronRepl', 'IronReplHere', }, }