From 76cb7597c164b8ffe0f5e532f506633a0d8fd33d Mon Sep 17 00:00:00 2001 From: andrzej Date: Wed, 15 May 2024 17:29:05 +0200 Subject: [PATCH] write keybind script in lua --- scripts/keybindings.lua | 51 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100755 scripts/keybindings.lua diff --git a/scripts/keybindings.lua b/scripts/keybindings.lua new file mode 100755 index 0000000..9318e36 --- /dev/null +++ b/scripts/keybindings.lua @@ -0,0 +1,51 @@ +#!/usr/bin/env lua + +local bindings = { + { + '"Toggle terminal transparency"', + '"${HOME}/scripts/toggle-term-transparency.sh"', + "\"['dead_acute']\"", + }, + { '"Toggle bg"', '"${HOME}/scripts/switch-bg.sh t"', "\"['ccedilla']\"" }, +} +local custom_list = '"[' +for i, _ in pairs(bindings) do + custom_list = custom_list .. "'custom" .. (i - 1) .. "'," +end +custom_list = custom_list:sub(1, custom_list:len() - 1) .. ']"' +print(custom_list) +os.execute("gsettings set org.cinnamon.desktop.keybindings custom-list " .. custom_list) +local gset = function(index, name, command, binding) + print( + "Setting keybinding custom" + .. index + .. ", with name " + .. name + .. ", command " + .. command + .. ", and binding " + .. binding + .. "." + ) + local cmd = "gsettings set org.cinnamon.desktop.keybindings.custom-keybinding:/org/cinnamon/desktop/keybindings/custom-keybindings/custom" + .. index + .. "/ name " + .. name + print(cmd) + os.execute(cmd) + cmd = "gsettings set org.cinnamon.desktop.keybindings.custom-keybinding:/org/cinnamon/desktop/keybindings/custom-keybindings/custom" + .. index + .. "/ command " + .. command + print(cmd) + os.execute(cmd) + cmd = "gsettings set org.cinnamon.desktop.keybindings.custom-keybinding:/org/cinnamon/desktop/keybindings/custom-keybindings/custom" + .. index + .. "/ binding " + .. binding + print(cmd) + os.execute(cmd) +end +for i, binding in pairs(bindings) do + gset(i - 1, binding[1], binding[2], binding[3]) +end