From daa671c6a528e037539d5b2ac689db8605ea61bc Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Sat, 25 Oct 2025 00:42:28 +0200 Subject: [PATCH 01/20] feat: add custom super key icon, mac symbol for mods keys and icon for function keys --- .../modules/cheatsheet/CheatsheetKeybinds.qml | 46 +++++-- .../quickshell/ii/modules/common/Config.qml | 10 ++ .../ii/modules/settings/AdvancedConfig.qml | 115 ++++++++++++++++++ 3 files changed, 163 insertions(+), 8 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml index 0cf6d40c8..521522530 100644 --- a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml +++ b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml @@ -14,18 +14,48 @@ Item { property real padding: 4 implicitWidth: row.implicitWidth + padding * 2 implicitHeight: row.implicitHeight + padding * 2 - + property list superMap: [ + "󰖳", "󰌽", "󰘳", "", "󰨡", "", "", + "󰣇", "", "", "", "", " ", "", "󱄛" + ] property var keyBlacklist: ["Super_L"] property var keySubstitutions: ({ - "Super": "󰖳", - "mouse_up": "Scroll ↓", // ikr, weird - "mouse_down": "Scroll ↑", // trust me bro - "mouse:272": "LMB", - "mouse:273": "RMB", + "Super": superMap[Config.options.appearance.keybinds.superKey], + "Ctrl": Config.options.appearance.keybinds.useMacSymbol ? "󰘴" : "Ctrl", + "Alt": Config.options.appearance.keybinds.useMacSymbol ? "󰘵" : "Alt", + "Shift": Config.options.appearance.keybinds.useMacSymbol ? "󰘶" : "Shift", + "Space": Config.options.appearance.keybinds.useMacSymbol ? "󱁐" : "Space", + "Tab": Config.options.appearance.keybinds.useMacSymbol ? "" : "Tab", + "Equal": Config.options.appearance.keybinds.useMacSymbol ? "󰇼" : "Equal", + "Minus": Config.options.appearance.keybinds.useMacSymbol ? "" : "Minus", + "Print": Config.options.appearance.keybinds.useMacSymbol ? "" : "Print", + "Delete": Config.options.appearance.keybinds.useMacSymbol ? "󰭜" : "Delete", + "Return": Config.options.appearance.keybinds.useMacSymbol ? "󰌑" : "Enter", + "Period": Config.options.appearance.keybinds.useMacSymbol ? "." : "Period", + + // Function keys + "Escape": Config.options.appearance.keybinds.useFnSymbol ? "󱊷" : "Escape", + "F1": Config.options.appearance.keybinds.useFnSymbol ? "󱊫" : "F1", + "F2": Config.options.appearance.keybinds.useFnSymbol ? "󱊬" : "F2", + "F3": Config.options.appearance.keybinds.useFnSymbol ? "󱊭" : "F3", + "F4": Config.options.appearance.keybinds.useFnSymbol ? "󱊮" : "F4", + "F5": Config.options.appearance.keybinds.useFnSymbol ? "󱊯" : "F5", + "F6": Config.options.appearance.keybinds.useFnSymbol ? "󱊰" : "F6", + "F7": Config.options.appearance.keybinds.useFnSymbol ? "󱊱" : "F7", + "F8": Config.options.appearance.keybinds.useFnSymbol ? "󱊲" : "F8", + "F9": Config.options.appearance.keybinds.useFnSymbol ? "󱊳" : "F9", + "F10": Config.options.appearance.keybinds.useFnSymbol ? "󱊴" : "F10", + "F11": Config.options.appearance.keybinds.useFnSymbol ? "󱊵" : "F11", + "F12": Config.options.appearance.keybinds.useFnSymbol ? "󱊶" : "F12", + + // Mouse keys + "mouse_up": Config.options.appearance.keybinds.useMouseSymbol ? "󱕐" : "Scroll ↓", // ikr, weird + "mouse_down": Config.options.appearance.keybinds.useMouseSymbol ? "󱕑" : "Scroll ↑", // trust me bro + "mouse:272": Config.options.appearance.keybinds.useMouseSymbol ? "L󰍽" : "LMB", + "mouse:273": Config.options.appearance.keybinds.useMouseSymbol ? "R󰍽" : "RMB", "mouse:275": "MouseBack", "Slash": "/", "Hash": "#", - "Return": "Enter", // "Shift": "", }) @@ -149,4 +179,4 @@ Item { } } -} \ No newline at end of file +} diff --git a/dots/.config/quickshell/ii/modules/common/Config.qml b/dots/.config/quickshell/ii/modules/common/Config.qml index 39c0ef131..dd4e1bc74 100644 --- a/dots/.config/quickshell/ii/modules/common/Config.qml +++ b/dots/.config/quickshell/ii/modules/common/Config.qml @@ -123,6 +123,16 @@ Singleton { property JsonObject palette: JsonObject { property string type: "auto" // Allowed: auto, scheme-content, scheme-expressive, scheme-fidelity, scheme-fruit-salad, scheme-monochrome, scheme-neutral, scheme-rainbow, scheme-tonal-spot } + property JsonObject keybinds: JsonObject { + // Use a nerdfont to see the icons + // 0: 󰖳 | 1: 󰌽 | 2: 󰘳 | 3:  | 4: 󰨡 + // 5:  | 6:  | 7: 󰣇 | 8:  | 9:  + // 10:  | 11:  | 12:  | 13:  | 14: 󱄛 + property int superKey: 0 + property bool useMacSymbol: false + property bool useMouseSymbol: false + property bool useFnSymbol: false + } } property JsonObject audio: JsonObject { diff --git a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml index 811cf7ca6..4dc71faa2 100644 --- a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml @@ -90,4 +90,119 @@ ContentPage { } } + ContentSection { + icon: "keyboard" + title: Translation.tr("Keybinds Cheatsheet") + + ContentSubsection { + title: Translation.tr("Super Key Symbol") + ConfigSelectionArray { + currentValue: Config.options.appearance.keybinds.superKey + onSelected: newValue => { + Config.options.appearance.keybinds.superKey = newValue; + } + // Use a nerdfont to see the icons + // 0: 󰖳 | 1: 󰌽 | 2: 󰘳 | 3:  | 4: 󰨡 + // 5:  | 6:  | 7: 󰣇 | 8:  | 9:  + // 10:  | 11:  | 12:  | 13:  | 14: 󱄛 + options: [ + { + displayName: "󰖳", + icon: "", + value: 0 + }, + { + displayName: "", + icon: "", + value: 3 + }, + { + displayName: "󰨡", + icon: "", + value: 4 + }, + { + displayName: "", + icon: "", + value: 5 + }, + { + displayName: "󰣇", + icon: "", + value: 7 + }, + { + displayName: "", + icon: "", + value: 12 + }, + { + displayName: "", + icon: "", + value: 13 + }, + { + displayName: "", + icon: "", + value: 11 + }, + { + displayName: "", + icon: "", + value: 10 + }, + { + displayName: "", + icon: "", + value: 8 + }, + { + displayName: "󱄛", + icon: "", + value: 14 + }, + { + displayName: "", + icon: "", + value: 9 + }, + { + displayName: "", + icon: "", + value: 6 + }, + { + displayName: "󰘳", + icon: "", + value: 2 + }, + ] + } + } + + ConfigSwitch { + buttonIcon: "󰘵" + text: Translation.tr("Use macOS-like symbols for mods keys") + checked: Config.options.appearance.keybinds.useMacSymbol + onCheckedChanged: { + Config.options.appearance.keybinds.useMacSymbol = checked; + } + } + ConfigSwitch { + buttonIcon: "󱊶" + text: Translation.tr("Use symbols for function keys") + checked: Config.options.appearance.keybinds.useFnSymbol + onCheckedChanged: { + Config.options.appearance.keybinds.useFnSymbol = checked; + } + } + ConfigSwitch { + buttonIcon: "󰍽" + text: Translation.tr("Use symbols for mouse") + checked: Config.options.appearance.keybinds.s + onCheckedChanged: { + Config.options.appearance.keybinds.useMouseSymbol = checked; + } + } + } } From 3da64f6bc51f227870e9a20d9f8460f4c23e814e Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Sat, 25 Oct 2025 00:59:42 +0200 Subject: [PATCH 02/20] fix useMouseSymbol boolean typo --- dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml index 4dc71faa2..f126cc0d8 100644 --- a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml @@ -199,7 +199,7 @@ ContentPage { ConfigSwitch { buttonIcon: "󰍽" text: Translation.tr("Use symbols for mouse") - checked: Config.options.appearance.keybinds.s + checked: Config.options.appearance.keybinds.useMouseSymbol onCheckedChanged: { Config.options.appearance.keybinds.useMouseSymbol = checked; } From 8c125cccb1036ea523e8f843c4ae0dbc5cb9f6df Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Sat, 25 Oct 2025 01:45:42 +0200 Subject: [PATCH 03/20] add other symbols --- .../quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml index 521522530..8d2d058ea 100644 --- a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml +++ b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml @@ -53,6 +53,8 @@ Item { "mouse_down": Config.options.appearance.keybinds.useMouseSymbol ? "󱕑" : "Scroll ↑", // trust me bro "mouse:272": Config.options.appearance.keybinds.useMouseSymbol ? "L󰍽" : "LMB", "mouse:273": Config.options.appearance.keybinds.useMouseSymbol ? "R󰍽" : "RMB", + "Scroll ↑/↓": Config.options.appearance.keybinds.useMouseSymbol ? "󱕒" : "Scroll ↑/↓", + "Page_↑/↓": Config.options.appearance.keybinds.useMouseSymbol ? "Page " : "Page_↑/↓", "mouse:275": "MouseBack", "Slash": "/", "Hash": "#", From 533156e0d0d31ebe703490449fd2f66c7753142d Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Sat, 25 Oct 2025 04:22:01 +0200 Subject: [PATCH 04/20] cheatsheet add font size setting and macos like shortcut --- .../modules/cheatsheet/CheatsheetKeybinds.qml | 20 +++++- .../quickshell/ii/modules/common/Config.qml | 5 ++ .../ii/modules/common/widgets/KeyboardKey.qml | 3 +- .../ii/modules/settings/AdvancedConfig.qml | 66 ++++++++++++++----- 4 files changed, 75 insertions(+), 19 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml index 8d2d058ea..64d695547 100644 --- a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml +++ b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml @@ -106,6 +106,17 @@ Item { var result = []; for (var i = 0; i < keybindSection.modelData.keybinds.length; i++) { const keybind = keybindSection.modelData.keybinds[i]; + + if (Config.options.appearance.keybinds.useMacLikeShortcut) { + + for (var j = 0; j < keybind.mods.length; j++) { + keybind.mods[j] = keySubstitutions[keybind.mods[j]] || keybind.mods[j]; + } + keybind.mods = [keybind.mods.join(' ') ] + keybind.mods[0] += !keyBlacklist.includes(keybind.key) && keybind.mods[0].length ? ' ' : '' + keybind.mods[0] += !keyBlacklist.includes(keybind.key) ? (keySubstitutions[keybind.key] || keybind.key) : '' + } + result.push({ "type": "keys", "mods": keybind.mods, @@ -137,17 +148,19 @@ Item { delegate: KeyboardKey { required property var modelData key: keySubstitutions[modelData] || modelData + pixelSize: Config.options.appearance.keybinds.pixelSize.key } } StyledText { id: keybindPlus - visible: !keyBlacklist.includes(modelData.key) && modelData.mods.length > 0 + visible: !Config.options.appearance.keybinds.useMacLikeShortcut && !keyBlacklist.includes(modelData.key) && modelData.mods.length > 0 text: "+" } KeyboardKey { id: keybindKey - visible: !keyBlacklist.includes(modelData.key) + visible: !Config.options.appearance.keybinds.useMacLikeShortcut && !keyBlacklist.includes(modelData.key) key: keySubstitutions[modelData.key] || modelData.key + pixelSize: Config.options.appearance.keybinds.pixelSize.key color: Appearance.colors.colOnLayer0 } } @@ -163,7 +176,8 @@ Item { StyledText { id: commentText anchors.centerIn: parent - font.pixelSize: Appearance.font.pixelSize.smaller + // font.pixelSize: Appearance.font.pixelSize.smaller + font.pixelSize: Config.options.appearance.keybinds.pixelSize.comment text: modelData.comment } } diff --git a/dots/.config/quickshell/ii/modules/common/Config.qml b/dots/.config/quickshell/ii/modules/common/Config.qml index dd4e1bc74..11526c81b 100644 --- a/dots/.config/quickshell/ii/modules/common/Config.qml +++ b/dots/.config/quickshell/ii/modules/common/Config.qml @@ -130,8 +130,13 @@ Singleton { // 10:  | 11:  | 12:  | 13:  | 14: 󱄛 property int superKey: 0 property bool useMacSymbol: false + property bool useMacLikeShortcut: false property bool useMouseSymbol: false property bool useFnSymbol: false + property JsonObject pixelSize: JsonObject { + property int key: Appearance.font.pixelSize.smaller + property int comment: Appareance.font.pixelSize.smaller + } } } diff --git a/dots/.config/quickshell/ii/modules/common/widgets/KeyboardKey.qml b/dots/.config/quickshell/ii/modules/common/widgets/KeyboardKey.qml index 14c75c62d..c769554ec 100644 --- a/dots/.config/quickshell/ii/modules/common/widgets/KeyboardKey.qml +++ b/dots/.config/quickshell/ii/modules/common/widgets/KeyboardKey.qml @@ -11,6 +11,7 @@ Rectangle { property real extraBottomBorderWidth: 2 property color borderColor: Appearance.colors.colOnLayer0 property real borderRadius: 5 + property int pixelSize: Appearance.font.pixelSize.smallie property color keyColor: Appearance.m3colors.m3surfaceContainerLow implicitWidth: keyFace.implicitWidth + borderWidth * 2 implicitHeight: keyFace.implicitHeight + borderWidth * 2 + extraBottomBorderWidth @@ -35,7 +36,7 @@ Rectangle { id: keyText anchors.centerIn: parent font.family: Appearance.font.family.monospace - font.pixelSize: Appearance.font.pixelSize.smaller + font.pixelSize: pixelSize text: key } } diff --git a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml index f126cc0d8..103d5b8f2 100644 --- a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml @@ -1,6 +1,10 @@ import QtQuick +import Quickshell +import Quickshell.Io +import QtQuick.Layouts import qs.services import qs.modules.common +import qs.modules.common.functions import qs.modules.common.widgets ContentPage { @@ -90,6 +94,8 @@ ContentPage { } } + + ContentSection { icon: "keyboard" title: Translation.tr("Keybinds Cheatsheet") @@ -108,72 +114,58 @@ ContentPage { options: [ { displayName: "󰖳", - icon: "", value: 0 }, { displayName: "", - icon: "", value: 3 }, { displayName: "󰨡", - icon: "", value: 4 }, { displayName: "", - icon: "", value: 5 }, { displayName: "󰣇", - icon: "", value: 7 }, { displayName: "", - icon: "", value: 12 }, { displayName: "", - icon: "", value: 13 }, { displayName: "", - icon: "", value: 11 }, { displayName: "", - icon: "", value: 10 }, { displayName: "", - icon: "", value: 8 }, { displayName: "󱄛", - icon: "", value: 14 }, { - displayName: "", - icon: "", + displayName: "", value: 9 }, { displayName: "", - icon: "", value: 6 }, { displayName: "󰘳", - icon: "", value: 2 }, ] @@ -187,7 +179,11 @@ ContentPage { onCheckedChanged: { Config.options.appearance.keybinds.useMacSymbol = checked; } + StyledToolTip { + text: Translation.tr("macOS-style symbols, e.g. 󰘴 for Ctrl, 󰘵 for Alt, 󰘶 for Shift, etc") + } } + ConfigSwitch { buttonIcon: "󱊶" text: Translation.tr("Use symbols for function keys") @@ -195,6 +191,9 @@ ContentPage { onCheckedChanged: { Config.options.appearance.keybinds.useFnSymbol = checked; } + StyledToolTip { + text: Translation.tr("Show 󱊷 instead of Escape, 󱊫 for F1, etc to 󱊶 for F12") + } } ConfigSwitch { buttonIcon: "󰍽" @@ -203,6 +202,43 @@ ContentPage { onCheckedChanged: { Config.options.appearance.keybinds.useMouseSymbol = checked; } + StyledToolTip { + text: Translation.tr("Replace 󱕐 for \"Scroll ↓\", 󱕑 \"Scroll ↑\", L󰍽 \"LMB\", R󰍽 \"RMB\", 󱕒 \"Scroll ↑/↓\" and Page  for \"Page_↑/↓\"") + } + } + ConfigSwitch { + buttonIcon: "" + text: Translation.tr("Use macOS shortcut layout") + checked: Config.options.appearance.keybinds.useMacLikeShortcut + onCheckedChanged: { + Config.options.appearance.keybinds.useMacLikeShortcut = checked; + } + StyledToolTip { + text: Translation.tr("Show mods and key in the same keycap, look better with symbols") + } + + } + + ConfigSpinBox { + // text: Translation.tr("Keycap") + text: Translation.tr("Key font size") + value: Config.options.appearance.keybinds.pixelSize.key + from: Appearance.font.pixelSize.smallest + to: Appearance.font.pixelSize.large + stepSize: 1 + onValueChanged: { + Config.options.appearance.keybinds.pixelSize.key = value; + } + } + ConfigSpinBox { + text: Translation.tr("Comment font size") + value: Config.options.appearance.commentbinds.pixelSize.comment + from: Appearance.font.pixelSize.smallest + to: Appearance.font.pixelSize.large + stepSize: 1 + onValueChanged: { + Config.options.appearance.commentbinds.pixelSize.comment = value; + } } } } From 69fc9d9b3516ea44143ea7674c5235a68109dd04 Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Sat, 25 Oct 2025 17:00:01 +0200 Subject: [PATCH 05/20] fix comment pixelSize key --- .../.config/quickshell/ii/modules/settings/AdvancedConfig.qml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml index 103d5b8f2..912bb13f4 100644 --- a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml @@ -232,12 +232,12 @@ ContentPage { } ConfigSpinBox { text: Translation.tr("Comment font size") - value: Config.options.appearance.commentbinds.pixelSize.comment + value: Config.options.appearance.keybinds.pixelSize.comment from: Appearance.font.pixelSize.smallest to: Appearance.font.pixelSize.large stepSize: 1 onValueChanged: { - Config.options.appearance.commentbinds.pixelSize.comment = value; + Config.options.appearance.keybinds.pixelSize.comment = value; } } } From fc17f23533e952194b8a9d504f1ce4a07aa0a740 Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Sat, 25 Oct 2025 17:06:08 +0200 Subject: [PATCH 06/20] fix typo --- dots/.config/quickshell/ii/modules/common/Config.qml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/common/Config.qml b/dots/.config/quickshell/ii/modules/common/Config.qml index 11526c81b..38e47dd6b 100644 --- a/dots/.config/quickshell/ii/modules/common/Config.qml +++ b/dots/.config/quickshell/ii/modules/common/Config.qml @@ -135,8 +135,7 @@ Singleton { property bool useFnSymbol: false property JsonObject pixelSize: JsonObject { property int key: Appearance.font.pixelSize.smaller - property int comment: Appareance.font.pixelSize.smaller - } + property int comment: Appearance.font.pixelSize.smaller } } } From 90cc63e57aedafa7d9740afb35b072a9fd74830b Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Sun, 26 Oct 2025 14:58:28 +0100 Subject: [PATCH 07/20] checkbox on tooltip --- .../quickshell/ii/modules/settings/AdvancedConfig.qml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml index 912bb13f4..966e832aa 100644 --- a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml @@ -214,14 +214,14 @@ ContentPage { Config.options.appearance.keybinds.useMacLikeShortcut = checked; } StyledToolTip { - text: Translation.tr("Show mods and key in the same keycap, look better with symbols") + text: Translation.tr("Display modifiers and keys in a single keycap (e.g., \"Ctrl A\" instead of \"Ctrl + A\" or \"󰘴 A\" instead of \"󰘴 + A\")") } } ConfigSpinBox { // text: Translation.tr("Keycap") - text: Translation.tr("Key font size") + text: Translation.tr("Keybind font size") value: Config.options.appearance.keybinds.pixelSize.key from: Appearance.font.pixelSize.smallest to: Appearance.font.pixelSize.large @@ -231,7 +231,7 @@ ContentPage { } } ConfigSpinBox { - text: Translation.tr("Comment font size") + text: Translation.tr("Description font size") value: Config.options.appearance.keybinds.pixelSize.comment from: Appearance.font.pixelSize.smallest to: Appearance.font.pixelSize.large From c61da40f703304e934f65a608f70462d58b28c7e Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Tue, 28 Oct 2025 10:28:15 +0100 Subject: [PATCH 08/20] new symbol map --- .../modules/cheatsheet/CheatsheetKeybinds.qml | 84 +++++++++++-------- .../ii/modules/settings/AdvancedConfig.qml | 4 +- 2 files changed, 51 insertions(+), 37 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml index 64d695547..d7b7b056b 100644 --- a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml +++ b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml @@ -15,51 +15,65 @@ Item { implicitWidth: row.implicitWidth + padding * 2 implicitHeight: row.implicitHeight + padding * 2 property list superMap: [ - "󰖳", "󰌽", "󰘳", "", "󰨡", "", "", + "󰖳", "󰌽", "⌘", "", "󰨡", "", "", "󰣇", "", "", "", "", " ", "", "󱄛" ] + property var macSymbolMap: ({ + "Ctrl": "󰘴" , + "Alt": "󰘵" , + "Shift": "󰘶" , + "Space": "󱁐" , + "Tab": "↹" , + "Equal": "󰇼" , + "Minus": "" , + "Print": "" , + "BackSpace": "󰭜" , + "Delete": "⌦" , + "Return": "󰌑" , + "Period": "." , + "Escape": "⎋" + }) + property var functionSymbolMap: ({ + "F1": "󱊫", + "F2": "󱊬", + "F3": "󱊭", + "F4": "󱊮", + "F5": "󱊯", + "F6": "󱊰", + "F7": "󱊱", + "F8": "󱊲", + "F9": "󱊳", + "F10": "󱊴", + "F11": "󱊵", + "F12": "󱊶", + }) + + property var mouseSymbolMap: ({ + "mouse_up": "󱕐" , + "mouse_down": "󱕑", + "mouse:272": "L󰍽", + "mouse:273": "R󰍽", + "Scroll ↑/↓": "󱕒", + "Page_↑/↓": "⇞/⇟", + }) + property var keyBlacklist: ["Super_L"] property var keySubstitutions: ({ "Super": superMap[Config.options.appearance.keybinds.superKey], - "Ctrl": Config.options.appearance.keybinds.useMacSymbol ? "󰘴" : "Ctrl", - "Alt": Config.options.appearance.keybinds.useMacSymbol ? "󰘵" : "Alt", - "Shift": Config.options.appearance.keybinds.useMacSymbol ? "󰘶" : "Shift", - "Space": Config.options.appearance.keybinds.useMacSymbol ? "󱁐" : "Space", - "Tab": Config.options.appearance.keybinds.useMacSymbol ? "" : "Tab", - "Equal": Config.options.appearance.keybinds.useMacSymbol ? "󰇼" : "Equal", - "Minus": Config.options.appearance.keybinds.useMacSymbol ? "" : "Minus", - "Print": Config.options.appearance.keybinds.useMacSymbol ? "" : "Print", - "Delete": Config.options.appearance.keybinds.useMacSymbol ? "󰭜" : "Delete", - "Return": Config.options.appearance.keybinds.useMacSymbol ? "󰌑" : "Enter", - "Period": Config.options.appearance.keybinds.useMacSymbol ? "." : "Period", - - // Function keys - "Escape": Config.options.appearance.keybinds.useFnSymbol ? "󱊷" : "Escape", - "F1": Config.options.appearance.keybinds.useFnSymbol ? "󱊫" : "F1", - "F2": Config.options.appearance.keybinds.useFnSymbol ? "󱊬" : "F2", - "F3": Config.options.appearance.keybinds.useFnSymbol ? "󱊭" : "F3", - "F4": Config.options.appearance.keybinds.useFnSymbol ? "󱊮" : "F4", - "F5": Config.options.appearance.keybinds.useFnSymbol ? "󱊯" : "F5", - "F6": Config.options.appearance.keybinds.useFnSymbol ? "󱊰" : "F6", - "F7": Config.options.appearance.keybinds.useFnSymbol ? "󱊱" : "F7", - "F8": Config.options.appearance.keybinds.useFnSymbol ? "󱊲" : "F8", - "F9": Config.options.appearance.keybinds.useFnSymbol ? "󱊳" : "F9", - "F10": Config.options.appearance.keybinds.useFnSymbol ? "󱊴" : "F10", - "F11": Config.options.appearance.keybinds.useFnSymbol ? "󱊵" : "F11", - "F12": Config.options.appearance.keybinds.useFnSymbol ? "󱊶" : "F12", - // Mouse keys - "mouse_up": Config.options.appearance.keybinds.useMouseSymbol ? "󱕐" : "Scroll ↓", // ikr, weird - "mouse_down": Config.options.appearance.keybinds.useMouseSymbol ? "󱕑" : "Scroll ↑", // trust me bro - "mouse:272": Config.options.appearance.keybinds.useMouseSymbol ? "L󰍽" : "LMB", - "mouse:273": Config.options.appearance.keybinds.useMouseSymbol ? "R󰍽" : "RMB", - "Scroll ↑/↓": Config.options.appearance.keybinds.useMouseSymbol ? "󱕒" : "Scroll ↑/↓", - "Page_↑/↓": Config.options.appearance.keybinds.useMouseSymbol ? "Page " : "Page_↑/↓", + "mouse_up": "Scroll ↓", // ikr, weird + "mouse_down": "Scroll ↑", // trust me bro + "mouse:272": "LMB", + "mouse:273": "RMB", "mouse:275": "MouseBack", "Slash": "/", "Hash": "#", // "Shift": "", - }) + }, + Config.options.appearance.keybinds.useMacSymbol ? macSymbolMap : {}, + Config.options.appearance.keybinds.useFnSymbol ? functionSymbolMap : {}, + Config.options.appearance.keybinds.useMouseSymbol ? mouseSymbolMap : {}, + ) Row { // Keybind columns id: row diff --git a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml index 966e832aa..bc05cf3fe 100644 --- a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml @@ -192,7 +192,7 @@ ContentPage { Config.options.appearance.keybinds.useFnSymbol = checked; } StyledToolTip { - text: Translation.tr("Show 󱊷 instead of Escape, 󱊫 for F1, etc to 󱊶 for F12") + text: Translation.tr("Show functions keys as symbols, e.g. 󱊫 for F1, 󱊶 for F12") } } ConfigSwitch { @@ -203,7 +203,7 @@ ContentPage { Config.options.appearance.keybinds.useMouseSymbol = checked; } StyledToolTip { - text: Translation.tr("Replace 󱕐 for \"Scroll ↓\", 󱕑 \"Scroll ↑\", L󰍽 \"LMB\", R󰍽 \"RMB\", 󱕒 \"Scroll ↑/↓\" and Page  for \"Page_↑/↓\"") + text: Translation.tr("Replace 󱕐 for \"Scroll ↓\", 󱕑 \"Scroll ↑\", L󰍽 \"LMB\", R󰍽 \"RMB\", 󱕒 \"Scroll ↑/↓\" and ⇞/⇟ for \"Page_↑/↓\"") } } ConfigSwitch { From 367b1b9499e2f5e6081cf52ff7e18882fd259fcd Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Tue, 28 Oct 2025 10:30:37 +0100 Subject: [PATCH 09/20] fix keySubstitutions --- .../quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml index d7b7b056b..9b7444156 100644 --- a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml +++ b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml @@ -58,7 +58,7 @@ Item { }) property var keyBlacklist: ["Super_L"] - property var keySubstitutions: ({ + property var keySubstitutions: Object.assign({ "Super": superMap[Config.options.appearance.keybinds.superKey], // Mouse keys "mouse_up": "Scroll ↓", // ikr, weird From 886e16a1cff624536442692500d55c9677ac4d93 Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Tue, 28 Oct 2025 10:37:32 +0100 Subject: [PATCH 10/20] add comment and bring back some value --- .../quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml index 9b7444156..d2eb9d922 100644 --- a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml +++ b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml @@ -14,6 +14,8 @@ Item { property real padding: 4 implicitWidth: row.implicitWidth + padding * 2 implicitHeight: row.implicitHeight + padding * 2 + // Excellent symbol explaination and source : + // http://xahlee.info/comp/unicode_computing_symbols.html property list superMap: [ "󰖳", "󰌽", "⌘", "", "󰨡", "", "", "󰣇", "", "", "", "", " ", "", "󱄛" @@ -68,6 +70,7 @@ Item { "mouse:275": "MouseBack", "Slash": "/", "Hash": "#", + "Return": "Enter", // "Shift": "", }, Config.options.appearance.keybinds.useMacSymbol ? macSymbolMap : {}, From fc479c358268864e55c9f80e424a85b75ec00049 Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Tue, 28 Oct 2025 10:41:43 +0100 Subject: [PATCH 11/20] clean some values --- .../quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml | 3 +-- .../quickshell/ii/modules/common/widgets/KeyboardKey.qml | 2 +- .../quickshell/ii/modules/settings/AdvancedConfig.qml | 5 ----- 3 files changed, 2 insertions(+), 8 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml index d2eb9d922..8f26aa2c7 100644 --- a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml +++ b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml @@ -193,8 +193,7 @@ Item { StyledText { id: commentText anchors.centerIn: parent - // font.pixelSize: Appearance.font.pixelSize.smaller - font.pixelSize: Config.options.appearance.keybinds.pixelSize.comment + font.pixelSize: Config.options.appearance.keybinds.pixelSize.comment || Appearance.font.pixelSize.smaller text: modelData.comment } } diff --git a/dots/.config/quickshell/ii/modules/common/widgets/KeyboardKey.qml b/dots/.config/quickshell/ii/modules/common/widgets/KeyboardKey.qml index c769554ec..f620a3e3f 100644 --- a/dots/.config/quickshell/ii/modules/common/widgets/KeyboardKey.qml +++ b/dots/.config/quickshell/ii/modules/common/widgets/KeyboardKey.qml @@ -11,7 +11,7 @@ Rectangle { property real extraBottomBorderWidth: 2 property color borderColor: Appearance.colors.colOnLayer0 property real borderRadius: 5 - property int pixelSize: Appearance.font.pixelSize.smallie + property int pixelSize: Appearance.font.pixelSize.smaller property color keyColor: Appearance.m3colors.m3surfaceContainerLow implicitWidth: keyFace.implicitWidth + borderWidth * 2 implicitHeight: keyFace.implicitHeight + borderWidth * 2 + extraBottomBorderWidth diff --git a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml index bc05cf3fe..e118358b9 100644 --- a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml @@ -1,10 +1,6 @@ import QtQuick -import Quickshell -import Quickshell.Io -import QtQuick.Layouts import qs.services import qs.modules.common -import qs.modules.common.functions import qs.modules.common.widgets ContentPage { @@ -220,7 +216,6 @@ ContentPage { } ConfigSpinBox { - // text: Translation.tr("Keycap") text: Translation.tr("Keybind font size") value: Config.options.appearance.keybinds.pixelSize.key from: Appearance.font.pixelSize.smallest From af64052e33b2e591434841d1e16f7e7853968cb8 Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Wed, 29 Oct 2025 10:29:34 +0100 Subject: [PATCH 12/20] remove super directly override --- .../quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml index 8f26aa2c7..127fbbbbc 100644 --- a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml +++ b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml @@ -61,8 +61,7 @@ Item { property var keyBlacklist: ["Super_L"] property var keySubstitutions: Object.assign({ - "Super": superMap[Config.options.appearance.keybinds.superKey], - // Mouse keys + "Super": "󰖳", "mouse_up": "Scroll ↓", // ikr, weird "mouse_down": "Scroll ↑", // trust me bro "mouse:272": "LMB", @@ -73,6 +72,9 @@ Item { "Return": "Enter", // "Shift": "", }, + Config.options.appearance.keybinds.superKey > 0 ? { + "Super": superMap[Config.options.appearance.keybinds.superKey], + }: {}, Config.options.appearance.keybinds.useMacSymbol ? macSymbolMap : {}, Config.options.appearance.keybinds.useFnSymbol ? functionSymbolMap : {}, Config.options.appearance.keybinds.useMouseSymbol ? mouseSymbolMap : {}, From 79df7bbeefa417829384d1b643c3d0f39e6c7031 Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Thu, 30 Oct 2025 17:00:31 +0100 Subject: [PATCH 13/20] add google (assistant, chrome, android) keys --- .../ii/modules/cheatsheet/CheatsheetKeybinds.qml | 3 ++- .../ii/modules/settings/AdvancedConfig.qml | 14 ++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml index 127fbbbbc..4740b4975 100644 --- a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml +++ b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml @@ -18,7 +18,8 @@ Item { // http://xahlee.info/comp/unicode_computing_symbols.html property list superMap: [ "󰖳", "󰌽", "⌘", "", "󰨡", "", "", - "󰣇", "", "", "", "", " ", "", "󱄛" + "󰣇", "", "", "", "", " ", "", + "󱄛", "󰀲", "󰟍", "" ] property var macSymbolMap: ({ "Ctrl": "󰘴" , diff --git a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml index e118358b9..4c9218edc 100644 --- a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml @@ -107,6 +107,7 @@ ContentPage { // 0: 󰖳 | 1: 󰌽 | 2: 󰘳 | 3:  | 4: 󰨡 // 5:  | 6:  | 7: 󰣇 | 8:  | 9:  // 10:  | 11:  | 12:  | 13:  | 14: 󱄛 + // 15: 󰀲 | 16: 󰟍 | 17:  | options: [ { displayName: "󰖳", @@ -164,6 +165,19 @@ ContentPage { displayName: "󰘳", value: 2 }, + { + displayName: "󰀲", + value: 15 + }, + { + displayName: "󰟍", + value: 16 + }, + { + displayName: "", + value: 17 + }, + ] } } From a0332cb0df936370d55b5f0c4f32845354b08c4b Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Thu, 30 Oct 2025 17:26:30 +0100 Subject: [PATCH 14/20] add reference to nerdfonts symbol cheat sheet --- .../quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml | 1 + 1 file changed, 1 insertion(+) diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml index 4740b4975..57a16ec0b 100644 --- a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml +++ b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml @@ -16,6 +16,7 @@ Item { implicitHeight: row.implicitHeight + padding * 2 // Excellent symbol explaination and source : // http://xahlee.info/comp/unicode_computing_symbols.html + // https://www.nerdfonts.com/cheat-sheet property list superMap: [ "󰖳", "󰌽", "⌘", "", "󰨡", "", "", "󰣇", "", "", "", "", " ", "", From aeb1955947dfe64a0731ff91d652435f3f479e2e Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Thu, 30 Oct 2025 22:12:25 +0100 Subject: [PATCH 15/20] end-4 feedback --- .../modules/cheatsheet/CheatsheetKeybinds.qml | 6 +- .../quickshell/ii/modules/common/Config.qml | 5 +- .../ii/modules/settings/AdvancedConfig.qml | 158 ----------------- .../ii/modules/settings/InterfaceConfig.qml | 159 ++++++++++++++++++ 4 files changed, 165 insertions(+), 163 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml index 57a16ec0b..80208df5e 100644 --- a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml +++ b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml @@ -169,7 +169,7 @@ Item { delegate: KeyboardKey { required property var modelData key: keySubstitutions[modelData] || modelData - pixelSize: Config.options.appearance.keybinds.pixelSize.key + pixelSize: Config.options.appearance.keybinds.fontSize.key } } StyledText { @@ -181,7 +181,7 @@ Item { id: keybindKey visible: !Config.options.appearance.keybinds.useMacLikeShortcut && !keyBlacklist.includes(modelData.key) key: keySubstitutions[modelData.key] || modelData.key - pixelSize: Config.options.appearance.keybinds.pixelSize.key + pixelSize: Config.options.appearance.keybinds.fontSize.key color: Appearance.colors.colOnLayer0 } } @@ -197,7 +197,7 @@ Item { StyledText { id: commentText anchors.centerIn: parent - font.pixelSize: Config.options.appearance.keybinds.pixelSize.comment || Appearance.font.pixelSize.smaller + font.pixelSize: Config.options.appearance.keybinds.fontSize.comment || Appearance.font.pixelSize.smaller text: modelData.comment } } diff --git a/dots/.config/quickshell/ii/modules/common/Config.qml b/dots/.config/quickshell/ii/modules/common/Config.qml index 38e47dd6b..6ae8d25f8 100644 --- a/dots/.config/quickshell/ii/modules/common/Config.qml +++ b/dots/.config/quickshell/ii/modules/common/Config.qml @@ -133,9 +133,10 @@ Singleton { property bool useMacLikeShortcut: false property bool useMouseSymbol: false property bool useFnSymbol: false - property JsonObject pixelSize: JsonObject { + property JsonObject fontSize: JsonObject { property int key: Appearance.font.pixelSize.smaller - property int comment: Appearance.font.pixelSize.smaller } + property int comment: Appearance.font.pixelSize.smaller + } } } diff --git a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml index 4c9218edc..7d51dbe12 100644 --- a/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/AdvancedConfig.qml @@ -92,162 +92,4 @@ ContentPage { - ContentSection { - icon: "keyboard" - title: Translation.tr("Keybinds Cheatsheet") - - ContentSubsection { - title: Translation.tr("Super Key Symbol") - ConfigSelectionArray { - currentValue: Config.options.appearance.keybinds.superKey - onSelected: newValue => { - Config.options.appearance.keybinds.superKey = newValue; - } - // Use a nerdfont to see the icons - // 0: 󰖳 | 1: 󰌽 | 2: 󰘳 | 3:  | 4: 󰨡 - // 5:  | 6:  | 7: 󰣇 | 8:  | 9:  - // 10:  | 11:  | 12:  | 13:  | 14: 󱄛 - // 15: 󰀲 | 16: 󰟍 | 17:  | - options: [ - { - displayName: "󰖳", - value: 0 - }, - { - displayName: "", - value: 3 - }, - { - displayName: "󰨡", - value: 4 - }, - { - displayName: "", - value: 5 - }, - { - displayName: "󰣇", - value: 7 - }, - { - displayName: "", - value: 12 - }, - { - displayName: "", - value: 13 - }, - { - displayName: "", - value: 11 - }, - { - displayName: "", - value: 10 - }, - { - displayName: "", - value: 8 - }, - { - displayName: "󱄛", - value: 14 - }, - { - displayName: "", - value: 9 - }, - { - displayName: "", - value: 6 - }, - { - displayName: "󰘳", - value: 2 - }, - { - displayName: "󰀲", - value: 15 - }, - { - displayName: "󰟍", - value: 16 - }, - { - displayName: "", - value: 17 - }, - - ] - } - } - - ConfigSwitch { - buttonIcon: "󰘵" - text: Translation.tr("Use macOS-like symbols for mods keys") - checked: Config.options.appearance.keybinds.useMacSymbol - onCheckedChanged: { - Config.options.appearance.keybinds.useMacSymbol = checked; - } - StyledToolTip { - text: Translation.tr("macOS-style symbols, e.g. 󰘴 for Ctrl, 󰘵 for Alt, 󰘶 for Shift, etc") - } - } - - ConfigSwitch { - buttonIcon: "󱊶" - text: Translation.tr("Use symbols for function keys") - checked: Config.options.appearance.keybinds.useFnSymbol - onCheckedChanged: { - Config.options.appearance.keybinds.useFnSymbol = checked; - } - StyledToolTip { - text: Translation.tr("Show functions keys as symbols, e.g. 󱊫 for F1, 󱊶 for F12") - } - } - ConfigSwitch { - buttonIcon: "󰍽" - text: Translation.tr("Use symbols for mouse") - checked: Config.options.appearance.keybinds.useMouseSymbol - onCheckedChanged: { - Config.options.appearance.keybinds.useMouseSymbol = checked; - } - StyledToolTip { - text: Translation.tr("Replace 󱕐 for \"Scroll ↓\", 󱕑 \"Scroll ↑\", L󰍽 \"LMB\", R󰍽 \"RMB\", 󱕒 \"Scroll ↑/↓\" and ⇞/⇟ for \"Page_↑/↓\"") - } - } - ConfigSwitch { - buttonIcon: "" - text: Translation.tr("Use macOS shortcut layout") - checked: Config.options.appearance.keybinds.useMacLikeShortcut - onCheckedChanged: { - Config.options.appearance.keybinds.useMacLikeShortcut = checked; - } - StyledToolTip { - text: Translation.tr("Display modifiers and keys in a single keycap (e.g., \"Ctrl A\" instead of \"Ctrl + A\" or \"󰘴 A\" instead of \"󰘴 + A\")") - } - - } - - ConfigSpinBox { - text: Translation.tr("Keybind font size") - value: Config.options.appearance.keybinds.pixelSize.key - from: Appearance.font.pixelSize.smallest - to: Appearance.font.pixelSize.large - stepSize: 1 - onValueChanged: { - Config.options.appearance.keybinds.pixelSize.key = value; - } - } - ConfigSpinBox { - text: Translation.tr("Description font size") - value: Config.options.appearance.keybinds.pixelSize.comment - from: Appearance.font.pixelSize.smallest - to: Appearance.font.pixelSize.large - stepSize: 1 - onValueChanged: { - Config.options.appearance.keybinds.pixelSize.comment = value; - } - } - } } diff --git a/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml b/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml index 13a909cbb..79b01bf95 100644 --- a/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml @@ -1012,4 +1012,163 @@ ContentPage { } } } + + ContentSection { + icon: "keyboard" + title: Translation.tr("Cheatsheet") + + ContentSubsection { + title: Translation.tr("Super Key Symbol") + ConfigSelectionArray { + currentValue: Config.options.appearance.keybinds.superKey + onSelected: newValue => { + Config.options.appearance.keybinds.superKey = newValue; + } + // Use a nerdfont to see the icons + // 0: 󰖳 | 1: 󰌽 | 2: 󰘳 | 3:  | 4: 󰨡 + // 5:  | 6:  | 7: 󰣇 | 8:  | 9:  + // 10:  | 11:  | 12:  | 13:  | 14: 󱄛 + // 15: 󰀲 | 16: 󰟍 | 17:  | + options: [ + { + displayName: "󰖳", + value: 0 + }, + { + displayName: "", + value: 3 + }, + { + displayName: "󰨡", + value: 4 + }, + { + displayName: "", + value: 5 + }, + { + displayName: "󰣇", + value: 7 + }, + { + displayName: "", + value: 12 + }, + { + displayName: "", + value: 13 + }, + { + displayName: "", + value: 11 + }, + { + displayName: "", + value: 10 + }, + { + displayName: "", + value: 8 + }, + { + displayName: "󱄛", + value: 14 + }, + { + displayName: "", + value: 9 + }, + { + displayName: "", + value: 6 + }, + { + displayName: "󰘳", + value: 2 + }, + { + displayName: "󰀲", + value: 15 + }, + { + displayName: "󰟍", + value: 16 + }, + { + displayName: "", + value: 17 + }, + + ] + } + } + + ConfigSwitch { + buttonIcon: "󰘵" + text: Translation.tr("Use macOS-like symbols for mods keys") + checked: Config.options.appearance.keybinds.useMacSymbol + onCheckedChanged: { + Config.options.appearance.keybinds.useMacSymbol = checked; + } + StyledToolTip { + text: Translation.tr("macOS-style symbols, e.g. 󰘴 for Ctrl, 󰘵 for Alt, 󰘶 for Shift, etc") + } + } + + ConfigSwitch { + buttonIcon: "󱊶" + text: Translation.tr("Use symbols for function keys") + checked: Config.options.appearance.keybinds.useFnSymbol + onCheckedChanged: { + Config.options.appearance.keybinds.useFnSymbol = checked; + } + StyledToolTip { + text: Translation.tr("Show functions keys as symbols, e.g. 󱊫 for F1, 󱊶 for F12") + } + } + ConfigSwitch { + buttonIcon: "󰍽" + text: Translation.tr("Use symbols for mouse") + checked: Config.options.appearance.keybinds.useMouseSymbol + onCheckedChanged: { + Config.options.appearance.keybinds.useMouseSymbol = checked; + } + StyledToolTip { + text: Translation.tr("Replace 󱕐 for \"Scroll ↓\", 󱕑 \"Scroll ↑\", L󰍽 \"LMB\", R󰍽 \"RMB\", 󱕒 \"Scroll ↑/↓\" and ⇞/⇟ for \"Page_↑/↓\"") + } + } + ConfigSwitch { + buttonIcon: "" + text: Translation.tr("Use macOS shortcut layout") + checked: Config.options.appearance.keybinds.useMacLikeShortcut + onCheckedChanged: { + Config.options.appearance.keybinds.useMacLikeShortcut = checked; + } + StyledToolTip { + text: Translation.tr("Display modifiers and keys in a single keycap (e.g., \"Ctrl A\" instead of \"Ctrl + A\" or \"󰘴 A\" instead of \"󰘴 + A\")") + } + + } + + ConfigSpinBox { + text: Translation.tr("Keybind font size") + value: Config.options.appearance.keybinds.fontSize.key + from: Appearance.font.pixelSize.smallest + to: Appearance.font.pixelSize.large + stepSize: 1 + onValueChanged: { + Config.options.appearance.keybinds.fontSize.key = value; + } + } + ConfigSpinBox { + text: Translation.tr("Description font size") + value: Config.options.appearance.keybinds.fontSize.comment + from: Appearance.font.pixelSize.smallest + to: Appearance.font.pixelSize.large + stepSize: 1 + onValueChanged: { + Config.options.appearance.keybinds.fontSize.comment = value; + } + } + } } From 0c2916705753605d2b935832b0fcad49afe93dd5 Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Sun, 2 Nov 2025 17:23:31 +0100 Subject: [PATCH 16/20] try something for the nyx-4 feedback --- .../modules/cheatsheet/CheatsheetKeybinds.qml | 37 ++++---- .../quickshell/ii/modules/common/Config.qml | 2 +- .../ii/modules/settings/InterfaceConfig.qml | 84 ++----------------- 3 files changed, 26 insertions(+), 97 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml index 80208df5e..d47acc9a0 100644 --- a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml +++ b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml @@ -17,25 +17,20 @@ Item { // Excellent symbol explaination and source : // http://xahlee.info/comp/unicode_computing_symbols.html // https://www.nerdfonts.com/cheat-sheet - property list superMap: [ - "󰖳", "󰌽", "⌘", "", "󰨡", "", "", - "󰣇", "", "", "", "", " ", "", - "󱄛", "󰀲", "󰟍", "" - ] property var macSymbolMap: ({ - "Ctrl": "󰘴" , - "Alt": "󰘵" , - "Shift": "󰘶" , - "Space": "󱁐" , - "Tab": "↹" , - "Equal": "󰇼" , - "Minus": "" , - "Print": "" , - "BackSpace": "󰭜" , - "Delete": "⌦" , - "Return": "󰌑" , - "Period": "." , - "Escape": "⎋" + "Ctrl": "󰘴", + "Alt": "󰘵", + "Shift": "󰘶", + "Space": "󱁐", + "Tab": "↹", + "Equal": "󰇼", + "Minus": "", + "Print": "", + "BackSpace": "󰭜", + "Delete": "⌦", + "Return": "󰌑", + "Period": ".", + "Escape": "⎋" }) property var functionSymbolMap: ({ "F1": "󱊫", @@ -53,7 +48,7 @@ Item { }) property var mouseSymbolMap: ({ - "mouse_up": "󱕐" , + "mouse_up": "󱕐", "mouse_down": "󱕑", "mouse:272": "L󰍽", "mouse:273": "R󰍽", @@ -74,8 +69,8 @@ Item { "Return": "Enter", // "Shift": "", }, - Config.options.appearance.keybinds.superKey > 0 ? { - "Super": superMap[Config.options.appearance.keybinds.superKey], + !!Config.options.appearance.keybinds.superKey ? { + "Super": Config.options.appearance.keybinds.superKey, }: {}, Config.options.appearance.keybinds.useMacSymbol ? macSymbolMap : {}, Config.options.appearance.keybinds.useFnSymbol ? functionSymbolMap : {}, diff --git a/dots/.config/quickshell/ii/modules/common/Config.qml b/dots/.config/quickshell/ii/modules/common/Config.qml index 6ae8d25f8..c4af0a850 100644 --- a/dots/.config/quickshell/ii/modules/common/Config.qml +++ b/dots/.config/quickshell/ii/modules/common/Config.qml @@ -128,7 +128,7 @@ Singleton { // 0: 󰖳 | 1: 󰌽 | 2: 󰘳 | 3:  | 4: 󰨡 // 5:  | 6:  | 7: 󰣇 | 8:  | 9:  // 10:  | 11:  | 12:  | 13:  | 14: 󱄛 - property int superKey: 0 + property string superKey: "󰖳" property bool useMacSymbol: false property bool useMacLikeShortcut: false property bool useMouseSymbol: false diff --git a/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml b/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml index 79b01bf95..b1d51063b 100644 --- a/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml @@ -1019,87 +1019,21 @@ ContentPage { ContentSubsection { title: Translation.tr("Super Key Symbol") + tooltip: Translation.tr("Choose a symbol from this list or edit config.json and add your own nerd symbol in appearance.keybinds.superKey.") ConfigSelectionArray { currentValue: Config.options.appearance.keybinds.superKey onSelected: newValue => { Config.options.appearance.keybinds.superKey = newValue; } // Use a nerdfont to see the icons - // 0: 󰖳 | 1: 󰌽 | 2: 󰘳 | 3:  | 4: 󰨡 - // 5:  | 6:  | 7: 󰣇 | 8:  | 9:  - // 10:  | 11:  | 12:  | 13:  | 14: 󱄛 - // 15: 󰀲 | 16: 󰟍 | 17:  | - options: [ - { - displayName: "󰖳", - value: 0 - }, - { - displayName: "", - value: 3 - }, - { - displayName: "󰨡", - value: 4 - }, - { - displayName: "", - value: 5 - }, - { - displayName: "󰣇", - value: 7 - }, - { - displayName: "", - value: 12 - }, - { - displayName: "", - value: 13 - }, - { - displayName: "", - value: 11 - }, - { - displayName: "", - value: 10 - }, - { - displayName: "", - value: 8 - }, - { - displayName: "󱄛", - value: 14 - }, - { - displayName: "", - value: 9 - }, - { - displayName: "", - value: 6 - }, - { - displayName: "󰘳", - value: 2 - }, - { - displayName: "󰀲", - value: 15 - }, - { - displayName: "󰟍", - value: 16 - }, - { - displayName: "", - value: 17 - }, - - ] + options: ([ + "󰖳", "", "󰨡", "", "󰌽", "󰣇", "", "", "", + "", "", "󱄛", "", "", "⌘", "󰀲", "󰟍", "" + ]).map(icon => { return { + displayName: icon, + value: icon + } + }) } } From a28945f3eceff58a7eca4b3d298561789fc13540 Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Tue, 4 Nov 2025 17:51:16 +0100 Subject: [PATCH 17/20] fix: remove warning unqualified access --- .../quickshell/ii/modules/common/widgets/KeyboardKey.qml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/common/widgets/KeyboardKey.qml b/dots/.config/quickshell/ii/modules/common/widgets/KeyboardKey.qml index f620a3e3f..cdb287aca 100644 --- a/dots/.config/quickshell/ii/modules/common/widgets/KeyboardKey.qml +++ b/dots/.config/quickshell/ii/modules/common/widgets/KeyboardKey.qml @@ -11,7 +11,7 @@ Rectangle { property real extraBottomBorderWidth: 2 property color borderColor: Appearance.colors.colOnLayer0 property real borderRadius: 5 - property int pixelSize: Appearance.font.pixelSize.smaller + property real pixelSize: Appearance.font.pixelSize.smaller property color keyColor: Appearance.m3colors.m3surfaceContainerLow implicitWidth: keyFace.implicitWidth + borderWidth * 2 implicitHeight: keyFace.implicitHeight + borderWidth * 2 + extraBottomBorderWidth @@ -36,7 +36,7 @@ Rectangle { id: keyText anchors.centerIn: parent font.family: Appearance.font.family.monospace - font.pixelSize: pixelSize + font.pixelSize: root.pixelSize text: key } } From ede86dc7a73a1fc91c8487aff4f18eaca99b7cdf Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Tue, 4 Nov 2025 20:55:34 +0100 Subject: [PATCH 18/20] fix(cheatsheet): change config keys --- .../modules/cheatsheet/CheatsheetKeybinds.qml | 22 +-- .../quickshell/ii/modules/common/Config.qml | 31 +-- .../ii/modules/settings/InterfaceConfig.qml | 184 +++++++++--------- 3 files changed, 119 insertions(+), 118 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml index a7c32fa13..3a78e86ce 100644 --- a/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml +++ b/dots/.config/quickshell/ii/modules/cheatsheet/CheatsheetKeybinds.qml @@ -69,12 +69,12 @@ Item { "Return": "Enter", // "Shift": "", }, - !!Config.options.appearance.keybinds.superKey ? { - "Super": Config.options.appearance.keybinds.superKey, + !!Config.options.cheatsheet.superKey ? { + "Super": Config.options.cheatsheet.superKey, }: {}, - Config.options.appearance.keybinds.useMacSymbol ? macSymbolMap : {}, - Config.options.appearance.keybinds.useFnSymbol ? functionSymbolMap : {}, - Config.options.appearance.keybinds.useMouseSymbol ? mouseSymbolMap : {}, + Config.options.cheatsheet.useMacSymbol ? macSymbolMap : {}, + Config.options.cheatsheet.useFnSymbol ? functionSymbolMap : {}, + Config.options.cheatsheet.useMouseSymbol ? mouseSymbolMap : {}, ) Row { // Keybind columns @@ -126,7 +126,7 @@ Item { for (var i = 0; i < keybindSection.modelData.keybinds.length; i++) { const keybind = keybindSection.modelData.keybinds[i]; - if (Config.options.appearance.keybinds.useMacLikeShortcut) { + if (!Config.options.cheatsheet.splitButtons) { for (var j = 0; j < keybind.mods.length; j++) { keybind.mods[j] = keySubstitutions[keybind.mods[j]] || keybind.mods[j]; @@ -167,19 +167,19 @@ Item { delegate: KeyboardKey { required property var modelData key: keySubstitutions[modelData] || modelData - pixelSize: Config.options.appearance.keybinds.fontSize.key + pixelSize: Config.options.cheatsheet.fontSize.key } } StyledText { id: keybindPlus - visible: !Config.options.appearance.keybinds.useMacLikeShortcut && !keyBlacklist.includes(modelData.key) && modelData.mods.length > 0 + visible: Config.options.cheatsheet.splitButtons && !keyBlacklist.includes(modelData.key) && modelData.mods.length > 0 text: "+" } KeyboardKey { id: keybindKey - visible: !Config.options.appearance.keybinds.useMacLikeShortcut && !keyBlacklist.includes(modelData.key) + visible: Config.options.cheatsheet.splitButtons && !keyBlacklist.includes(modelData.key) key: keySubstitutions[modelData.key] || modelData.key - pixelSize: Config.options.appearance.keybinds.fontSize.key + pixelSize: Config.options.cheatsheet.fontSize.key color: Appearance.colors.colOnLayer0 } } @@ -195,7 +195,7 @@ Item { StyledText { id: commentText anchors.centerIn: parent - font.pixelSize: Config.options.appearance.keybinds.fontSize.comment || Appearance.font.pixelSize.smaller + font.pixelSize: Config.options.cheatsheet.fontSize.comment || Appearance.font.pixelSize.smaller text: modelData.comment } } diff --git a/dots/.config/quickshell/ii/modules/common/Config.qml b/dots/.config/quickshell/ii/modules/common/Config.qml index 766033e47..15b143c8c 100644 --- a/dots/.config/quickshell/ii/modules/common/Config.qml +++ b/dots/.config/quickshell/ii/modules/common/Config.qml @@ -123,21 +123,6 @@ Singleton { property JsonObject palette: JsonObject { property string type: "auto" // Allowed: auto, scheme-content, scheme-expressive, scheme-fidelity, scheme-fruit-salad, scheme-monochrome, scheme-neutral, scheme-rainbow, scheme-tonal-spot } - property JsonObject keybinds: JsonObject { - // Use a nerdfont to see the icons - // 0: 󰖳 | 1: 󰌽 | 2: 󰘳 | 3:  | 4: 󰨡 - // 5:  | 6:  | 7: 󰣇 | 8:  | 9:  - // 10:  | 11:  | 12:  | 13:  | 14: 󱄛 - property string superKey: "󰖳" - property bool useMacSymbol: false - property bool useMacLikeShortcut: false - property bool useMouseSymbol: false - property bool useFnSymbol: false - property JsonObject fontSize: JsonObject { - property int key: Appearance.font.pixelSize.smaller - property int comment: Appearance.font.pixelSize.smaller - } - } } property JsonObject audio: JsonObject { @@ -274,6 +259,22 @@ Singleton { property int suspend: 3 } + property JsonObject cheatsheet: JsonObject { + // Use a nerdfont to see the icons + // 0: 󰖳 | 1: 󰌽 | 2: 󰘳 | 3:  | 4: 󰨡 + // 5:  | 6:  | 7: 󰣇 | 8:  | 9:  + // 10:  | 11:  | 12:  | 13:  | 14: 󱄛 + property string superKey: "󰖳" + property bool useMacSymbol: false + property bool splitButtons: true + property bool useMouseSymbol: false + property bool useFnSymbol: false + property JsonObject fontSize: JsonObject { + property int key: Appearance.font.pixelSize.smaller + property int comment: Appearance.font.pixelSize.smaller + } + } + property JsonObject conflictKiller: JsonObject { property bool autoKillNotificationDaemons: false property bool autoKillTrays: false diff --git a/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml b/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml index 90aa11030..431b8f2ea 100644 --- a/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml @@ -402,6 +402,98 @@ ContentPage { } } + ContentSection { + icon: "keyboard" + title: Translation.tr("Cheat sheet") + + ContentSubsection { + title: Translation.tr("Super key symbol") + tooltip: Translation.tr("Choose a symbol from this list or edit config.json and add your own nerd symbol in cheatsheet.superKey.") + ConfigSelectionArray { + currentValue: Config.options.cheatsheet.superKey + onSelected: newValue => { + Config.options.cheatsheet.superKey = newValue; + } + // Use a nerdfont to see the icons + options: ([ + "󰖳", "", "󰨡", "", "󰌽", "󰣇", "", "", "", + "", "", "󱄛", "", "", "⌘", "󰀲", "󰟍", "" + ]).map(icon => { return { + displayName: icon, + value: icon + } + }) + } + } + + ConfigSwitch { + buttonIcon: "󰘵" + text: Translation.tr("Use macOS-like symbols for mods keys") + checked: Config.options.cheatsheet.useMacSymbol + onCheckedChanged: { + Config.options.cheatsheet.useMacSymbol = checked; + } + StyledToolTip { + text: Translation.tr("e.g. 󰘴 for Ctrl, 󰘵 for Alt, 󰘶 for Shift, etc") + } + } + + ConfigSwitch { + buttonIcon: "󱊶" + text: Translation.tr("Use symbols for function keys") + checked: Config.options.cheatsheet.useFnSymbol + onCheckedChanged: { + Config.options.cheatsheet.useFnSymbol = checked; + } + StyledToolTip { + text: Translation.tr("e.g. 󱊫 for F1, 󱊶 for F12") + } + } + ConfigSwitch { + buttonIcon: "󰍽" + text: Translation.tr("Use symbols for mouse") + checked: Config.options.cheatsheet.useMouseSymbol + onCheckedChanged: { + Config.options.cheatsheet.useMouseSymbol = checked; + } + StyledToolTip { + text: Translation.tr("Replace 󱕐 for \"Scroll ↓\", 󱕑 \"Scroll ↑\", L󰍽 \"LMB\", R󰍽 \"RMB\", 󱕒 \"Scroll ↑/↓\" and ⇞/⇟ for \"Page_↑/↓\"") + } + } + ConfigSwitch { + buttonIcon: "highlight_keyboard_focus" + text: Translation.tr("Split Buttons") + checked: Config.options.cheatsheet.splitButtons + onCheckedChanged: { + Config.options.cheatsheet.splitButtons = checked; + } + StyledToolTip { + text: Translation.tr("Display modifiers and keys in multiple keycap (e.g., \"Ctrl + A\" instead of \"Ctrl A\" or \"󰘴 + A\" instead of \"󰘴 A\")") + } + + } + + ConfigSpinBox { + text: Translation.tr("Keybind font size") + value: Config.options.cheatsheet.fontSize.key + from: 8 + to: 30 + stepSize: 1 + onValueChanged: { + Config.options.cheatsheet.fontSize.key = value; + } + } + ConfigSpinBox { + text: Translation.tr("Description font size") + value: Config.options.cheatsheet.fontSize.comment + from: 8 + to: 30 + stepSize: 1 + onValueChanged: { + Config.options.cheatsheet.fontSize.comment = value; + } + } + } ContentSection { icon: "point_scan" title: Translation.tr("Crosshair overlay") @@ -1021,96 +1113,4 @@ ContentPage { } } - ContentSection { - icon: "keyboard" - title: Translation.tr("Cheatsheet") - - ContentSubsection { - title: Translation.tr("Super Key Symbol") - tooltip: Translation.tr("Choose a symbol from this list or edit config.json and add your own nerd symbol in appearance.keybinds.superKey.") - ConfigSelectionArray { - currentValue: Config.options.appearance.keybinds.superKey - onSelected: newValue => { - Config.options.appearance.keybinds.superKey = newValue; - } - // Use a nerdfont to see the icons - options: ([ - "󰖳", "", "󰨡", "", "󰌽", "󰣇", "", "", "", - "", "", "󱄛", "", "", "⌘", "󰀲", "󰟍", "" - ]).map(icon => { return { - displayName: icon, - value: icon - } - }) - } - } - - ConfigSwitch { - buttonIcon: "󰘵" - text: Translation.tr("Use macOS-like symbols for mods keys") - checked: Config.options.appearance.keybinds.useMacSymbol - onCheckedChanged: { - Config.options.appearance.keybinds.useMacSymbol = checked; - } - StyledToolTip { - text: Translation.tr("macOS-style symbols, e.g. 󰘴 for Ctrl, 󰘵 for Alt, 󰘶 for Shift, etc") - } - } - - ConfigSwitch { - buttonIcon: "󱊶" - text: Translation.tr("Use symbols for function keys") - checked: Config.options.appearance.keybinds.useFnSymbol - onCheckedChanged: { - Config.options.appearance.keybinds.useFnSymbol = checked; - } - StyledToolTip { - text: Translation.tr("Show functions keys as symbols, e.g. 󱊫 for F1, 󱊶 for F12") - } - } - ConfigSwitch { - buttonIcon: "󰍽" - text: Translation.tr("Use symbols for mouse") - checked: Config.options.appearance.keybinds.useMouseSymbol - onCheckedChanged: { - Config.options.appearance.keybinds.useMouseSymbol = checked; - } - StyledToolTip { - text: Translation.tr("Replace 󱕐 for \"Scroll ↓\", 󱕑 \"Scroll ↑\", L󰍽 \"LMB\", R󰍽 \"RMB\", 󱕒 \"Scroll ↑/↓\" and ⇞/⇟ for \"Page_↑/↓\"") - } - } - ConfigSwitch { - buttonIcon: "" - text: Translation.tr("Use macOS shortcut layout") - checked: Config.options.appearance.keybinds.useMacLikeShortcut - onCheckedChanged: { - Config.options.appearance.keybinds.useMacLikeShortcut = checked; - } - StyledToolTip { - text: Translation.tr("Display modifiers and keys in a single keycap (e.g., \"Ctrl A\" instead of \"Ctrl + A\" or \"󰘴 A\" instead of \"󰘴 + A\")") - } - - } - - ConfigSpinBox { - text: Translation.tr("Keybind font size") - value: Config.options.appearance.keybinds.fontSize.key - from: Appearance.font.pixelSize.smallest - to: Appearance.font.pixelSize.large - stepSize: 1 - onValueChanged: { - Config.options.appearance.keybinds.fontSize.key = value; - } - } - ConfigSpinBox { - text: Translation.tr("Description font size") - value: Config.options.appearance.keybinds.fontSize.comment - from: Appearance.font.pixelSize.smallest - to: Appearance.font.pixelSize.large - stepSize: 1 - onValueChanged: { - Config.options.appearance.keybinds.fontSize.comment = value; - } - } - } } From a0131e5bf83cc4533f54afcde62f81800ba2e3bf Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Thu, 6 Nov 2025 12:33:29 +0100 Subject: [PATCH 19/20] fix: use end-4 copy in InterfaceConfig --- .../quickshell/ii/modules/settings/InterfaceConfig.qml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml b/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml index 22a67f6fd..8e4aab5ab 100644 --- a/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml @@ -408,7 +408,7 @@ ContentPage { ContentSubsection { title: Translation.tr("Super key symbol") - tooltip: Translation.tr("Choose a symbol from this list or edit config.json and add your own nerd symbol in cheatsheet.superKey.") + tooltip: Translation.tr("You can also manually edit cheatsheet.superKey") ConfigSelectionArray { currentValue: Config.options.cheatsheet.superKey onSelected: newValue => { @@ -462,7 +462,7 @@ ContentPage { } ConfigSwitch { buttonIcon: "highlight_keyboard_focus" - text: Translation.tr("Split Buttons") + text: Translation.tr("Split buttons") checked: Config.options.cheatsheet.splitButtons onCheckedChanged: { Config.options.cheatsheet.splitButtons = checked; From b06a7ce58e44228e1178f0bf28ff35a478aa587a Mon Sep 17 00:00:00 2001 From: Madjid Taha Date: Fri, 7 Nov 2025 02:42:51 +0100 Subject: [PATCH 20/20] fix merge --- .../ii/modules/settings/InterfaceConfig.qml | 434 ------------------ 1 file changed, 434 deletions(-) diff --git a/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml b/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml index 8e4aab5ab..c57406a7f 100644 --- a/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml +++ b/dots/.config/quickshell/ii/modules/settings/InterfaceConfig.qml @@ -7,401 +7,6 @@ import qs.modules.common.widgets ContentPage { forceWidth: true - ContentSection { - icon: "wallpaper" - title: Translation.tr("Background") - - ConfigSwitch { - buttonIcon: "nest_clock_farsight_analog" - text: Translation.tr("Show clock") - checked: Config.options.background.clock.show - onCheckedChanged: { - Config.options.background.clock.show = checked; - } - } - - - ConfigSpinBox { - icon: "loupe" - text: Translation.tr("Scale (%)") - value: Config.options.background.clock.scale * 100 - from: 1 - to: 200 - stepSize: 2 - onValueChanged: { - Config.options.background.clock.scale = value / 100; - } - } - - ContentSubsection { - title: Translation.tr("Clock style") - ConfigSelectionArray { - currentValue: Config.options.background.clock.style - onSelected: newValue => { - Config.options.background.clock.style = newValue; - } - options: [ - { - displayName: Translation.tr("Simple digital"), - icon: "timer_10", - value: "digital" - }, - { - displayName: Translation.tr("Material cookie"), - icon: "cookie", - value: "cookie" - } - ] - } - } - - ContentSubsection { - visible: Config.options.background.clock.style === "digital" - title: Translation.tr("Digital clock settings") - - ConfigSwitch { - buttonIcon: "animation" - text: Translation.tr("Animate time change") - checked: Config.options.background.clock.digital.animateChange - onCheckedChanged: { - Config.options.background.clock.digital.animateChange = checked; - } - } - } - - ContentSubsection { - visible: Config.options.background.clock.style === "cookie" - title: Translation.tr("Cookie clock settings") - - ConfigSwitch { - buttonIcon: "wand_stars" - text: Translation.tr("Auto styling with Gemini") - checked: Config.options.background.clock.cookie.aiStyling - onCheckedChanged: { - Config.options.background.clock.cookie.aiStyling = checked; - } - StyledToolTip { - text: Translation.tr("Uses Gemini to categorize the wallpaper then picks a preset based on it.\nYou'll need to set Gemini API key on the left sidebar first.\nImages are downscaled for performance, but just to be safe,\ndo not select wallpapers with sensitive information.") - } - } - - ConfigSwitch { - buttonIcon: "airwave" - text: Translation.tr("Use old sine wave cookie implementation") - checked: Config.options.background.clock.cookie.useSineCookie - onCheckedChanged: { - Config.options.background.clock.cookie.useSineCookie = checked; - } - StyledToolTip { - text: "Looks a bit softer and more consistent with different number of sides,\nbut has less impressive morphing" - } - } - - ConfigSpinBox { - icon: "add_triangle" - text: Translation.tr("Sides") - value: Config.options.background.clock.cookie.sides - from: 0 - to: 40 - stepSize: 1 - onValueChanged: { - Config.options.background.clock.cookie.sides = value; - } - } - - ConfigSwitch { - buttonIcon: "autoplay" - text: Translation.tr("Constantly rotate") - checked: Config.options.background.clock.cookie.constantlyRotate - onCheckedChanged: { - Config.options.background.clock.cookie.constantlyRotate = checked; - } - StyledToolTip { - text: "Makes the clock always rotate. This is extremely expensive\n(expect 50% usage on Intel UHD Graphics) and thus impractical." - } - } - - ConfigRow { - - ConfigSwitch { - enabled: Config.options.background.clock.style === "cookie" && Config.options.background.clock.cookie.dialNumberStyle === "dots" || Config.options.background.clock.cookie.dialNumberStyle === "full" - buttonIcon: "brightness_7" - text: Translation.tr("Hour marks") - checked: Config.options.background.clock.cookie.hourMarks - onEnabledChanged: { - checked = Config.options.background.clock.cookie.hourMarks; - } - onCheckedChanged: { - Config.options.background.clock.cookie.hourMarks = checked; - } - StyledToolTip { - text: "Can only be turned on using the 'Dots' or 'Full' dial style for aesthetic reasons" - } - } - - ConfigSwitch { - enabled: Config.options.background.clock.style === "cookie" && Config.options.background.clock.cookie.dialNumberStyle !== "numbers" - buttonIcon: "timer_10" - text: Translation.tr("Digits in the middle") - checked: Config.options.background.clock.cookie.timeIndicators - onEnabledChanged: { - checked = Config.options.background.clock.cookie.timeIndicators; - } - onCheckedChanged: { - Config.options.background.clock.cookie.timeIndicators = checked; - } - StyledToolTip { - text: "Can't be turned on when using 'Numbers' dial style for aesthetic reasons" - } - } - } - } - - ContentSubsection { - visible: Config.options.background.clock.style === "cookie" - title: Translation.tr("Dial style") - ConfigSelectionArray { - currentValue: Config.options.background.clock.cookie.dialNumberStyle - onSelected: newValue => { - Config.options.background.clock.cookie.dialNumberStyle = newValue; - if (newValue !== "dots" && newValue !== "full") { - Config.options.background.clock.cookie.hourMarks = false; - } - if (newValue === "numbers") { - Config.options.background.clock.cookie.timeIndicators = false; - } - } - options: [ - { - displayName: "", - icon: "block", - value: "none" - }, - { - displayName: Translation.tr("Dots"), - icon: "graph_6", - value: "dots" - }, - { - displayName: Translation.tr("Full"), - icon: "history_toggle_off", - value: "full" - }, - { - displayName: Translation.tr("Numbers"), - icon: "counter_1", - value: "numbers" - } - ] - } - } - - ContentSubsection { - visible: Config.options.background.clock.style === "cookie" - title: Translation.tr("Hour hand") - ConfigSelectionArray { - currentValue: Config.options.background.clock.cookie.hourHandStyle - onSelected: newValue => { - Config.options.background.clock.cookie.hourHandStyle = newValue; - } - options: [ - { - displayName: "", - icon: "block", - value: "hide" - }, - { - displayName: Translation.tr("Classic"), - icon: "radio", - value: "classic" - }, - { - displayName: Translation.tr("Hollow"), - icon: "circle", - value: "hollow" - }, - { - displayName: Translation.tr("Fill"), - icon: "eraser_size_5", - value: "fill" - }, - ] - } - } - - ContentSubsection { - visible: Config.options.background.clock.style === "cookie" - title: Translation.tr("Minute hand") - - ConfigSelectionArray { - currentValue: Config.options.background.clock.cookie.minuteHandStyle - onSelected: newValue => { - Config.options.background.clock.cookie.minuteHandStyle = newValue; - } - options: [ - { - displayName: "", - icon: "block", - value: "hide" - }, - { - displayName: Translation.tr("Classic"), - icon: "radio", - value: "classic" - }, - { - displayName: Translation.tr("Thin"), - icon: "line_end", - value: "thin" - }, - { - displayName: Translation.tr("Medium"), - icon: "eraser_size_2", - value: "medium" - }, - { - displayName: Translation.tr("Bold"), - icon: "eraser_size_4", - value: "bold" - }, - ] - } - } - - ContentSubsection { - visible: Config.options.background.clock.style === "cookie" - title: Translation.tr("Second hand") - - ConfigSelectionArray { - currentValue: Config.options.background.clock.cookie.secondHandStyle - onSelected: newValue => { - Config.options.background.clock.cookie.secondHandStyle = newValue; - } - options: [ - { - displayName: "", - icon: "block", - value: "hide" - }, - { - displayName: Translation.tr("Classic"), - icon: "radio", - value: "classic" - }, - { - displayName: Translation.tr("Line"), - icon: "line_end", - value: "line" - }, - { - displayName: Translation.tr("Dot"), - icon: "adjust", - value: "dot" - }, - ] - } - } - - ContentSubsection { - visible: Config.options.background.clock.style === "cookie" - title: Translation.tr("Date style") - - ConfigSelectionArray { - currentValue: Config.options.background.clock.cookie.dateStyle - onSelected: newValue => { - Config.options.background.clock.cookie.dateStyle = newValue; - } - options: [ - { - displayName: "", - icon: "block", - value: "hide" - }, - { - displayName: Translation.tr("Bubble"), - icon: "bubble_chart", - value: "bubble" - }, - { - displayName: Translation.tr("Border"), - icon: "rotate_right", - value: "border" - }, - { - displayName: Translation.tr("Rect"), - icon: "rectangle", - value: "rect" - } - ] - } - } - - ContentSubsection { - title: Translation.tr("Quote settings") - ConfigSwitch { - buttonIcon: "format_quote" - text: Translation.tr("Show quote") - checked: Config.options.background.showQuote - onCheckedChanged: { - Config.options.background.showQuote = checked; - } - } - MaterialTextArea { - Layout.fillWidth: true - placeholderText: Translation.tr("Quote") - text: Config.options.background.quote - wrapMode: TextEdit.Wrap - onTextChanged: { - Config.options.background.quote = text; - } - } - } - - ContentSubsection { - title: Translation.tr("Wallpaper parallax") - - ConfigSwitch { - buttonIcon: "unfold_more_double" - text: Translation.tr("Vertical") - checked: Config.options.background.parallax.vertical - onCheckedChanged: { - Config.options.background.parallax.vertical = checked; - } - } - - ConfigRow { - uniform: true - ConfigSwitch { - buttonIcon: "counter_1" - text: Translation.tr("Depends on workspace") - checked: Config.options.background.parallax.enableWorkspace - onCheckedChanged: { - Config.options.background.parallax.enableWorkspace = checked; - } - } - ConfigSwitch { - buttonIcon: "side_navigation" - text: Translation.tr("Depends on sidebars") - checked: Config.options.background.parallax.enableSidebar - onCheckedChanged: { - Config.options.background.parallax.enableSidebar = checked; - } - } - } - ConfigSpinBox { - icon: "loupe" - text: Translation.tr("Preferred wallpaper zoom (%)") - value: Config.options.background.parallax.workspaceZoom * 100 - from: 100 - to: 150 - stepSize: 1 - onValueChanged: { - Config.options.background.parallax.workspaceZoom = value / 100; - } - } - } - } - ContentSection { icon: "keyboard" title: Translation.tr("Cheat sheet") @@ -494,45 +99,6 @@ ContentPage { } } } - ContentSection { - icon: "point_scan" - title: Translation.tr("Crosshair overlay") - - MaterialTextArea { - Layout.fillWidth: true - placeholderText: Translation.tr("Crosshair code (in Valorant's format)") - text: Config.options.crosshair.code - wrapMode: TextEdit.Wrap - onTextChanged: { - Config.options.crosshair.code = text; - } - } - - RowLayout { - StyledText { - Layout.leftMargin: 10 - color: Appearance.colors.colSubtext - font.pixelSize: Appearance.font.pixelSize.smallie - text: Translation.tr("Press Super+G to toggle appearance") - } - Item { - Layout.fillWidth: true - } - RippleButtonWithIcon { - id: editorButton - buttonRadius: Appearance.rounding.full - materialIcon: "open_in_new" - mainText: Translation.tr("Open editor") - onClicked: { - Qt.openUrlExternally(`https://www.vcrdb.net/builder?c=${Config.options.crosshair.code}`); - } - StyledToolTip { - text: "www.vcrdb.net" - } - } - } - } - ContentSection { icon: "call_to_action" title: Translation.tr("Dock")