From f08a9f933fc673ef46ef81c5c5b726e14c279590 Mon Sep 17 00:00:00 2001 From: THEON-1 Date: Fri, 21 Nov 2025 20:14:36 +0100 Subject: [PATCH] added F6 for additional options in ftkeybinds --- lua/config/ftkeybinds.lua | 33 ++++++++++++++++++++++----------- 1 file changed, 22 insertions(+), 11 deletions(-) diff --git a/lua/config/ftkeybinds.lua b/lua/config/ftkeybinds.lua index eb93469..53d6105 100644 --- a/lua/config/ftkeybinds.lua +++ b/lua/config/ftkeybinds.lua @@ -1,17 +1,22 @@ -local function markdown() - local pandoc_process = vim.system({ - "pandoc", - vim.fn.expand("%:p"), - "-o", - vim.fn.expand("%:p:r") .. ".pdf", - "--verbose", - }) +local function markdown(options) + local options_list = {} + for opt in options:gmatch("%S+") do + table.insert(options_list, opt) + end + local cmd = vim.list_extend( + { "pandoc" }, + options_list + ) + table.insert(cmd, vim.fn.expand("%:p")) + table.insert(cmd, "-o") + table.insert(cmd, vim.fn.expand("%:p:r") .. ".pdf") + local pandoc_process = vim.system(cmd) local pandoc_result = pandoc_process:wait() vim.notify(pandoc_result.stdout, vim.log.levels.INFO); vim.notify(pandoc_result.stderr, vim.log.levels.ERROR); end -local function arduino() +local function arduino(options) local arduino_process = vim.system({ "arduino-cli", "board", @@ -54,7 +59,7 @@ local function arduino() }) end -vim.keymap.set("n", "", function() +local function run_ft_action(options) local default = { __index = function() return function() end @@ -66,6 +71,12 @@ vim.keymap.set("n", "", function() } setmetatable(fttable, default) - fttable[vim.bo.filetype]() + fttable[vim.bo.filetype](options) +end + +vim.keymap.set("n", "", function () run_ft_action("") end) + +vim.keymap.set("n", "", function() + run_ft_action(vim.fn.input("enter additional options")) end)