--- Insert text at cursor in the cmdline ---@param ins string Inserting text local function inscmdline(ins) local cmd = vim.fn.getcmdline() local pos = vim.fn.getcmdpos() local left = cmd:sub(1, pos - 1) local right = cmd:sub(pos) vim.fn.setcmdline(left .. ins .. right, pos + #ins) end vim.keymap.set("c", "t", function() inscmdline(vim.fn.expand("%:t")) end) vim.keymap.set("c", "p", function() inscmdline(vim.fn.expand("%:p")) end) vim.keymap.set("c", "pp", function() inscmdline(vim.fn.expand("%:p")) end) vim.keymap.set("c", "ph", function() inscmdline(vim.fn.expand("%:p:h")) end) vim.keymap.set("c", "h", function() inscmdline(vim.fn.expand("%:h")) end)