vim.b.slime_cell_delimiter = vim.b.slime_cell_delimiter or "## ----" local assign_action = function() if vim.bo.filetype ~= "r" then return end local ok, r_edit = pcall(require, "r.edit") if not ok then return end if MiniTrailspace and MiniTrailspace.trim then MiniTrailspace.trim() end r_edit.assign() end vim.api.nvim_buf_create_user_command(0, "RAssign", assign_action, { desc = "Trim trailing space and insert <-" }) -- Settings vim.bo.comments = [[:#',:####,:###,:##,:#]] -- Keymaps -- Note: These use mappings provided by R.nvim vim.keymap.set("n", "", "RDSendLine", { buffer = true }) vim.keymap.set("v", "", "RSendSelection", { buffer = true }) -- Assignment operator (--) vim.keymap.set("i", "--", "lua MiniTrailspace.trim()RInsertAssign", { buffer = true, noremap = true }) -- Pipe operator (;;) vim.keymap.set("i", ";;", "lua MiniTrailspace.trim()RInsertPipe", { buffer = true, noremap = true }) -- MiniClue / WhichKey hints local r_clues = { { mode = "n", keys = "a", desc = "+batch" }, { mode = "n", keys = "b", desc = "+between/debug" }, { mode = "n", keys = "c", desc = "+substitute" }, { mode = "n", keys = "f", desc = "+functions" }, { mode = "n", keys = "i", desc = "+install" }, { mode = "n", keys = "k", desc = "+knit" }, { mode = "n", keys = "p", desc = "+paragraph" }, { mode = "n", keys = "r", desc = "+regular" }, { mode = "n", keys = "s", desc = "+selection" }, { mode = "n", keys = "t", desc = "+dput" }, { mode = "n", keys = "u", desc = "+undebug" }, } vim.b.miniclue_config = { clues = { r_clues, }, triggers = { { mode = "n", keys = "", desc = "+R" }, }, }