From 16b0d77075016388622aae95302b8de24eee2e1f Mon Sep 17 00:00:00 2001 From: end-4 <97237370+end-4@users.noreply.github.com> Date: Mon, 25 Dec 2023 18:16:14 +0700 Subject: [PATCH] Initial commit --- .config/ags/assets/openai-logomark.svg | 1 + .config/ags/config.js | 64 + .config/ags/data/keybinds.js | 135 + .config/ags/data/keyboardlayouts.js | 114 + .config/ags/data/languages.js | 62 + .config/ags/data/quicklaunches.js | 14 + .config/ags/data/quotes.js | 14 + .config/ags/data/sourceviewtheme.xml | 106 + .config/ags/imports.js | 39 + .config/ags/lib/actioncenter.js | 245 ++ .config/ags/lib/animatedcircularprogress.js | 104 + .config/ags/lib/calendarlayout.js | 87 + .config/ags/lib/configwidgets.js | 61 + .config/ags/lib/cursorhover.js | 99 + .config/ags/lib/doublerevealer.js | 24 + .config/ags/lib/materialicon.js | 7 + .config/ags/lib/md2pango.js | 255 ++ .config/ags/lib/navigationindicator.js | 72 + .config/ags/lib/notification.js | 325 +++ .config/ags/lib/popupwindow.js | 27 + .config/ags/lib/roundedcorner.js | 50 + .config/ags/lib/separator.js | 5 + .config/ags/lib/statusicons.js | 223 ++ .config/ags/scripts/README.md | 3 + .../scripts/color_generation/applycolor.sh | 156 ++ .../ags/scripts/color_generation/colorgen.sh | 61 + .../generate_colors_material.py | 118 + .../color_generation/pywal_to_material.scss | 57 + .../specials/_material_badapple.scss | 30 + .../scripts/color_generation/switchcolor.sh | 11 + .../scripts/color_generation/switchwall.sh | 29 + .config/ags/scripts/record-script.sh | 22 + .config/ags/scripts/templates/foot/foot.ini | 156 ++ .../ags/scripts/templates/fuzzel/fuzzel.ini | 21 + .../scripts/templates/gradience/preset.json | 139 ++ .../templates/gradience/preset_template.json | 139 ++ .../ags/scripts/templates/gtklock/main.scss | 89 + .../ags/scripts/templates/gtklock/style.css | 102 + .../ags/scripts/templates/hypr/colors.conf | 43 + .config/ags/scss/_bar.scss | 489 ++++ .config/ags/scss/_cheatsheet.scss | 52 + .config/ags/scss/_colors.scss | 128 + .config/ags/scss/_common.scss | 129 + .config/ags/scss/_desktopbackground.scss | 89 + .config/ags/scss/_dock.scss | 30 + .config/ags/scss/_lib_classes.scss | 442 ++++ .config/ags/scss/_lib_mixins.scss | 205 ++ .config/ags/scss/_material.scss | 29 + .config/ags/scss/_music.scss | 152 ++ .config/ags/scss/_musicmaterial.scss | 1 + .config/ags/scss/_musicwal.scss | 1 + .config/ags/scss/_notifications.scss | 152 ++ .config/ags/scss/_osd.scss | 116 + .config/ags/scss/_osk.scss | 112 + .config/ags/scss/_overview.scss | 135 + .config/ags/scss/_session.scss | 36 + .config/ags/scss/_sidebars.scss | 690 ++++++ .config/ags/scss/_wal.scss | 8 + .config/ags/scss/main.scss | 34 + .config/ags/services/brightness.js | 58 + .config/ags/services/chatgpt.js | 261 ++ .config/ags/services/indicator.js | 40 + .config/ags/services/messages.js | 58 + .config/ags/services/todo.js | 86 + .config/ags/style.css | 2165 +++++++++++++++++ .config/ags/variables.js | 7 + .config/ags/widgets/bar/leftspace.js | 100 + .config/ags/widgets/bar/main.js | 53 + .config/ags/widgets/bar/music.js | 82 + .config/ags/widgets/bar/rightspace.js | 59 + .config/ags/widgets/bar/system.js | 149 ++ .config/ags/widgets/bar/tray.js | 66 + .config/ags/widgets/bar/workspaces.js | 100 + .config/ags/widgets/cheatsheet/keybinds.js | 60 + .config/ags/widgets/cheatsheet/main.js | 90 + .../ags/widgets/desktopbackground/graph.js | 83 + .config/ags/widgets/desktopbackground/main.js | 27 + .../ags/widgets/desktopbackground/system.js | 151 ++ .../desktopbackground/timeandlaunches.js | 69 + .config/ags/widgets/dock/dock.js | 264 ++ .config/ags/widgets/dock/main.js | 11 + .config/ags/widgets/indicators/colorscheme.js | 58 + .../ags/widgets/indicators/indicatorvalues.js | 76 + .config/ags/widgets/indicators/main.js | 30 + .../ags/widgets/indicators/musiccontrols.js | 373 +++ .../widgets/indicators/notificationpopups.js | 82 + .config/ags/widgets/onscreenkeyboard/main.js | 10 + .../onscreenkeyboard/onscreenkeyboard.js | 175 ++ .config/ags/widgets/overview/actions.js | 31 + .config/ags/widgets/overview/main.js | 18 + .config/ags/widgets/overview/miscfunctions.js | 136 ++ .config/ags/widgets/overview/overview.js | 520 ++++ .config/ags/widgets/overview/searchbuttons.js | 172 ++ .config/ags/widgets/overview/searchitem.js | 69 + .config/ags/widgets/screencorners/main.js | 36 + .config/ags/widgets/session/main.js | 14 + .config/ags/widgets/session/sessionscreen.js | 142 ++ .config/ags/widgets/sideleft/apis/chatgpt.js | 237 ++ .../sideleft/apis/chatgpt_chatmessage.js | 291 +++ .config/ags/widgets/sideleft/apiwidgets.js | 88 + .config/ags/widgets/sideleft/main.js | 11 + .config/ags/widgets/sideleft/module.js | 29 + .config/ags/widgets/sideleft/quickscripts.js | 12 + .config/ags/widgets/sideleft/sideleft.js | 109 + .config/ags/widgets/sideleft/toolbox.js | 16 + .config/ags/widgets/sideright/calendar.js | 204 ++ .config/ags/widgets/sideright/main.js | 11 + .../ags/widgets/sideright/notificationlist.js | 117 + .config/ags/widgets/sideright/quicktoggles.js | 194 ++ .config/ags/widgets/sideright/sideright.js | 109 + .config/ags/widgets/sideright/todolist.js | 276 +++ .config/fish/completions/fisher.fish | 7 + .config/fish/config.fish | 20 + .config/fish/fish_plugins | 1 + .config/fish/fish_variables | 34 + .config/fish/functions/fisher.fish | 240 ++ .config/fish/tokyonight_day.fish | 36 + .config/fish/tokyonight_moon.fish | 36 + .config/fish/tokyonight_night.fish | 36 + .config/fish/tokyonight_storm.fish | 36 + .config/fontconfig/conf.d | 9 + .config/foot/foot.ini | 156 ++ .config/fuzzel/fuzzel.ini | 21 + .config/gtklock/config.ini | 3 + .config/gtklock/style.css | 68 + .config/hypr/colors.conf | 24 + .config/hypr/colors_default.conf | 4 + .config/hypr/env.conf | 9 + .config/hypr/execs.conf | 28 + .config/hypr/hyprland.conf | 251 ++ .config/hypr/keybinds.conf | 202 ++ .config/hypr/plugins.conf | 0 .config/hypr/shaders/bluefilter.frag | 20 + .../hypr/shaders/chromatic_abberation.frag | 24 + .config/hypr/shaders/crt.frag | 511 ++++ .config/hypr/shaders/drugs.frag | 42 + .config/hypr/shaders/extradark.frag | 21 + .config/hypr/shaders/solarized.frag | 41 + .config/mpv/mpv.conf | 1 + .config/starship.toml | 96 + .config/swaylock/config | 1 + .config/wlogout/layout | 36 + .config/wlogout/noise.png | Bin 0 -> 134825 bytes .config/wlogout/style.css | 27 + .gitattributes | 2 + .github/ISSUE_TEMPLATE/issue.md | 14 + .gitignore | 1 + .local/bin/Hyprland-wrapped | 18 + .local/bin/record-script-fullscreen.sh | 10 + .local/bin/record-script.sh | 10 + .local/bin/rubyshot | 6 + .local/bin/switchrice.sh | 14 + CONTRIBUTING.md | 4 + .../Cached Theme.pak | Bin 0 -> 674 bytes .../images/icon128.png | Bin 0 -> 17891 bytes .../images/icon16.png | Bin 0 -> 5788 bytes .../images/icon48.png | Bin 0 -> 12534 bytes .../manifest.json | 35 + .../EverForest-Dark-B/Cached Theme.pak | Bin 0 -> 674 bytes .../EverForest-Dark-B/images/icon128.png | Bin 0 -> 17891 bytes .../EverForest-Dark-B/images/icon16.png | Bin 0 -> 5788 bytes .../EverForest-Dark-B/images/icon48.png | Bin 0 -> 12534 bytes .../EverForest-Dark-B/manifest.json | 35 + Import Manually/chromethemes/README.md | 4 + .../chromethemes/TokyoNight/Cached Theme.pak | Bin 0 -> 674 bytes .../TokyoNight/images/icon128.png | Bin 0 -> 17891 bytes .../chromethemes/TokyoNight/images/icon16.png | Bin 0 -> 5788 bytes .../chromethemes/TokyoNight/images/icon48.png | Bin 0 -> 12534 bytes .../chromethemes/TokyoNight/manifest.json | 35 + .../scripts (add to path)/fuzzel-emoji | 1869 ++++++++++++++ .../scripts (add to path)/rubyshot | 6 + LICENSE | 674 +++++ README.md | 89 + YOU_SHOULD_NOT_USE_THIS_BRANCH.sh | 2 + 174 files changed, 18893 insertions(+) create mode 100644 .config/ags/assets/openai-logomark.svg create mode 100644 .config/ags/config.js create mode 100644 .config/ags/data/keybinds.js create mode 100644 .config/ags/data/keyboardlayouts.js create mode 100644 .config/ags/data/languages.js create mode 100644 .config/ags/data/quicklaunches.js create mode 100644 .config/ags/data/quotes.js create mode 100644 .config/ags/data/sourceviewtheme.xml create mode 100644 .config/ags/imports.js create mode 100644 .config/ags/lib/actioncenter.js create mode 100644 .config/ags/lib/animatedcircularprogress.js create mode 100644 .config/ags/lib/calendarlayout.js create mode 100644 .config/ags/lib/configwidgets.js create mode 100644 .config/ags/lib/cursorhover.js create mode 100644 .config/ags/lib/doublerevealer.js create mode 100644 .config/ags/lib/materialicon.js create mode 100644 .config/ags/lib/md2pango.js create mode 100644 .config/ags/lib/navigationindicator.js create mode 100644 .config/ags/lib/notification.js create mode 100644 .config/ags/lib/popupwindow.js create mode 100644 .config/ags/lib/roundedcorner.js create mode 100644 .config/ags/lib/separator.js create mode 100644 .config/ags/lib/statusicons.js create mode 100755 .config/ags/scripts/README.md create mode 100755 .config/ags/scripts/color_generation/applycolor.sh create mode 100755 .config/ags/scripts/color_generation/colorgen.sh create mode 100755 .config/ags/scripts/color_generation/generate_colors_material.py create mode 100755 .config/ags/scripts/color_generation/pywal_to_material.scss create mode 100755 .config/ags/scripts/color_generation/specials/_material_badapple.scss create mode 100755 .config/ags/scripts/color_generation/switchcolor.sh create mode 100755 .config/ags/scripts/color_generation/switchwall.sh create mode 100755 .config/ags/scripts/record-script.sh create mode 100755 .config/ags/scripts/templates/foot/foot.ini create mode 100755 .config/ags/scripts/templates/fuzzel/fuzzel.ini create mode 100644 .config/ags/scripts/templates/gradience/preset.json create mode 100644 .config/ags/scripts/templates/gradience/preset_template.json create mode 100755 .config/ags/scripts/templates/gtklock/main.scss create mode 100755 .config/ags/scripts/templates/gtklock/style.css create mode 100755 .config/ags/scripts/templates/hypr/colors.conf create mode 100644 .config/ags/scss/_bar.scss create mode 100644 .config/ags/scss/_cheatsheet.scss create mode 100755 .config/ags/scss/_colors.scss create mode 100644 .config/ags/scss/_common.scss create mode 100644 .config/ags/scss/_desktopbackground.scss create mode 100755 .config/ags/scss/_dock.scss create mode 100644 .config/ags/scss/_lib_classes.scss create mode 100644 .config/ags/scss/_lib_mixins.scss create mode 100755 .config/ags/scss/_material.scss create mode 100644 .config/ags/scss/_music.scss create mode 100755 .config/ags/scss/_musicmaterial.scss create mode 100644 .config/ags/scss/_musicwal.scss create mode 100644 .config/ags/scss/_notifications.scss create mode 100644 .config/ags/scss/_osd.scss create mode 100644 .config/ags/scss/_osk.scss create mode 100644 .config/ags/scss/_overview.scss create mode 100644 .config/ags/scss/_session.scss create mode 100644 .config/ags/scss/_sidebars.scss create mode 100644 .config/ags/scss/_wal.scss create mode 100644 .config/ags/scss/main.scss create mode 100644 .config/ags/services/brightness.js create mode 100644 .config/ags/services/chatgpt.js create mode 100644 .config/ags/services/indicator.js create mode 100644 .config/ags/services/messages.js create mode 100644 .config/ags/services/todo.js create mode 100644 .config/ags/style.css create mode 100644 .config/ags/variables.js create mode 100644 .config/ags/widgets/bar/leftspace.js create mode 100644 .config/ags/widgets/bar/main.js create mode 100644 .config/ags/widgets/bar/music.js create mode 100644 .config/ags/widgets/bar/rightspace.js create mode 100644 .config/ags/widgets/bar/system.js create mode 100644 .config/ags/widgets/bar/tray.js create mode 100644 .config/ags/widgets/bar/workspaces.js create mode 100644 .config/ags/widgets/cheatsheet/keybinds.js create mode 100644 .config/ags/widgets/cheatsheet/main.js create mode 100644 .config/ags/widgets/desktopbackground/graph.js create mode 100644 .config/ags/widgets/desktopbackground/main.js create mode 100644 .config/ags/widgets/desktopbackground/system.js create mode 100644 .config/ags/widgets/desktopbackground/timeandlaunches.js create mode 100644 .config/ags/widgets/dock/dock.js create mode 100644 .config/ags/widgets/dock/main.js create mode 100644 .config/ags/widgets/indicators/colorscheme.js create mode 100644 .config/ags/widgets/indicators/indicatorvalues.js create mode 100644 .config/ags/widgets/indicators/main.js create mode 100644 .config/ags/widgets/indicators/musiccontrols.js create mode 100644 .config/ags/widgets/indicators/notificationpopups.js create mode 100644 .config/ags/widgets/onscreenkeyboard/main.js create mode 100644 .config/ags/widgets/onscreenkeyboard/onscreenkeyboard.js create mode 100644 .config/ags/widgets/overview/actions.js create mode 100644 .config/ags/widgets/overview/main.js create mode 100644 .config/ags/widgets/overview/miscfunctions.js create mode 100644 .config/ags/widgets/overview/overview.js create mode 100644 .config/ags/widgets/overview/searchbuttons.js create mode 100644 .config/ags/widgets/overview/searchitem.js create mode 100644 .config/ags/widgets/screencorners/main.js create mode 100644 .config/ags/widgets/session/main.js create mode 100644 .config/ags/widgets/session/sessionscreen.js create mode 100644 .config/ags/widgets/sideleft/apis/chatgpt.js create mode 100644 .config/ags/widgets/sideleft/apis/chatgpt_chatmessage.js create mode 100644 .config/ags/widgets/sideleft/apiwidgets.js create mode 100644 .config/ags/widgets/sideleft/main.js create mode 100644 .config/ags/widgets/sideleft/module.js create mode 100644 .config/ags/widgets/sideleft/quickscripts.js create mode 100644 .config/ags/widgets/sideleft/sideleft.js create mode 100644 .config/ags/widgets/sideleft/toolbox.js create mode 100644 .config/ags/widgets/sideright/calendar.js create mode 100644 .config/ags/widgets/sideright/main.js create mode 100644 .config/ags/widgets/sideright/notificationlist.js create mode 100644 .config/ags/widgets/sideright/quicktoggles.js create mode 100644 .config/ags/widgets/sideright/sideright.js create mode 100644 .config/ags/widgets/sideright/todolist.js create mode 100755 .config/fish/completions/fisher.fish create mode 100755 .config/fish/config.fish create mode 100755 .config/fish/fish_plugins create mode 100755 .config/fish/fish_variables create mode 100755 .config/fish/functions/fisher.fish create mode 100644 .config/fish/tokyonight_day.fish create mode 100644 .config/fish/tokyonight_moon.fish create mode 100644 .config/fish/tokyonight_night.fish create mode 100644 .config/fish/tokyonight_storm.fish create mode 100644 .config/fontconfig/conf.d create mode 100755 .config/foot/foot.ini create mode 100755 .config/fuzzel/fuzzel.ini create mode 100755 .config/gtklock/config.ini create mode 100755 .config/gtklock/style.css create mode 100755 .config/hypr/colors.conf create mode 100755 .config/hypr/colors_default.conf create mode 100755 .config/hypr/env.conf create mode 100755 .config/hypr/execs.conf create mode 100755 .config/hypr/hyprland.conf create mode 100755 .config/hypr/keybinds.conf create mode 100755 .config/hypr/plugins.conf create mode 100755 .config/hypr/shaders/bluefilter.frag create mode 100755 .config/hypr/shaders/chromatic_abberation.frag create mode 100755 .config/hypr/shaders/crt.frag create mode 100755 .config/hypr/shaders/drugs.frag create mode 100755 .config/hypr/shaders/extradark.frag create mode 100755 .config/hypr/shaders/solarized.frag create mode 100644 .config/mpv/mpv.conf create mode 100755 .config/starship.toml create mode 100644 .config/swaylock/config create mode 100755 .config/wlogout/layout create mode 100755 .config/wlogout/noise.png create mode 100755 .config/wlogout/style.css create mode 100644 .gitattributes create mode 100644 .github/ISSUE_TEMPLATE/issue.md create mode 100644 .gitignore create mode 100755 .local/bin/Hyprland-wrapped create mode 100755 .local/bin/record-script-fullscreen.sh create mode 100755 .local/bin/record-script.sh create mode 100755 .local/bin/rubyshot create mode 100755 .local/bin/switchrice.sh create mode 100644 CONTRIBUTING.md create mode 100755 Import Manually/chromethemes/Chrome-catppuccin-mocha-Colorful/Cached Theme.pak create mode 100755 Import Manually/chromethemes/Chrome-catppuccin-mocha-Colorful/images/icon128.png create mode 100755 Import Manually/chromethemes/Chrome-catppuccin-mocha-Colorful/images/icon16.png create mode 100755 Import Manually/chromethemes/Chrome-catppuccin-mocha-Colorful/images/icon48.png create mode 100755 Import Manually/chromethemes/Chrome-catppuccin-mocha-Colorful/manifest.json create mode 100755 Import Manually/chromethemes/EverForest-Dark-B/Cached Theme.pak create mode 100755 Import Manually/chromethemes/EverForest-Dark-B/images/icon128.png create mode 100755 Import Manually/chromethemes/EverForest-Dark-B/images/icon16.png create mode 100755 Import Manually/chromethemes/EverForest-Dark-B/images/icon48.png create mode 100755 Import Manually/chromethemes/EverForest-Dark-B/manifest.json create mode 100644 Import Manually/chromethemes/README.md create mode 100755 Import Manually/chromethemes/TokyoNight/Cached Theme.pak create mode 100755 Import Manually/chromethemes/TokyoNight/images/icon128.png create mode 100755 Import Manually/chromethemes/TokyoNight/images/icon16.png create mode 100755 Import Manually/chromethemes/TokyoNight/images/icon48.png create mode 100755 Import Manually/chromethemes/TokyoNight/manifest.json create mode 100755 Import Manually/scripts (add to path)/fuzzel-emoji create mode 100755 Import Manually/scripts (add to path)/rubyshot create mode 100755 LICENSE create mode 100755 README.md create mode 100755 YOU_SHOULD_NOT_USE_THIS_BRANCH.sh diff --git a/.config/ags/assets/openai-logomark.svg b/.config/ags/assets/openai-logomark.svg new file mode 100644 index 000000000..e04db75a5 --- /dev/null +++ b/.config/ags/assets/openai-logomark.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/.config/ags/config.js b/.config/ags/config.js new file mode 100644 index 000000000..d5614b7d0 --- /dev/null +++ b/.config/ags/config.js @@ -0,0 +1,64 @@ +"strict mode"; +// Import +import { App, Utils } from './imports.js'; +import { firstRunWelcome } from './services/messages.js'; +// Widgets +import Bar from './widgets/bar/main.js'; +import Cheatsheet from './widgets/cheatsheet/main.js'; +import DesktopBackground from './widgets/desktopbackground/main.js'; +import Dock from './widgets/dock/main.js'; +import { CornerTopleft, CornerTopright, CornerBottomleft, CornerBottomright } from './widgets/screencorners/main.js'; +import Indicator from './widgets/indicators/main.js'; +import Osk from './widgets/onscreenkeyboard/main.js'; +import Overview from './widgets/overview/main.js'; +import Session from './widgets/session/main.js'; +import SideLeft from './widgets/sideleft/main.js'; +import SideRight from './widgets/sideright/main.js'; + +// Longer than actual anim time (see styles) to make sure widgets animate fully +const CLOSE_ANIM_TIME = 210; + +// Init cache and check first run +Utils.exec(`bash -c 'mkdir -p ~/.cache/ags/user/colorschemes'`); + +// SCSS compilation +Utils.exec(`bash -c 'echo "" > ${App.configDir}/scss/_musicwal.scss'`); // reset music styles +Utils.exec(`bash -c 'echo "" > ${App.configDir}/scss/_musicmaterial.scss'`); // reset music styles +Utils.exec(`sassc ${App.configDir}/scss/main.scss ${App.configDir}/style.css`); +App.resetCss(); +App.applyCss(`${App.configDir}/style.css`); + +// Config object +export default { + css: `${App.configDir}/style.css`, + stackTraceOnError: true, + closeWindowDelay: { // For animations + 'sideright': CLOSE_ANIM_TIME, + 'sideleft': CLOSE_ANIM_TIME, + 'osk': CLOSE_ANIM_TIME, + }, + windows: [ + // Bar() is below + CornerTopleft(), + CornerTopright(), + CornerBottomleft(), + CornerBottomright(), + DesktopBackground(), + Dock(), // Buggy + Overview(), + Indicator(), + Cheatsheet(), + SideLeft(), + SideRight(), + Osk(), // On-screen keyboard + Session(), // Power menu, if that's what you like to call it + ], +}; + +// We don't want context menus of the bar's tray go under the rounded corner below, +// So bar is returned after 1ms, making it get spawned after the corner +// And having an Utils.timeout in that window array just gives an error +// Not having it in default export is fine since we don't need to toggle it +Bar(); + +// uwu \ No newline at end of file diff --git a/.config/ags/data/keybinds.js b/.config/ags/data/keybinds.js new file mode 100644 index 000000000..8d0eeb0ae --- /dev/null +++ b/.config/ags/data/keybinds.js @@ -0,0 +1,135 @@ +export const keybindList = [[ + { + "icon": "pin_drop", + "name": "Workspaces: navigation", + "binds": [ + { "keys": ["", "+", "#"], "action": "Go to workspace #" }, + { "keys": ["", "+", "S"], "action": "Toggle special workspace" }, + { "keys": ["", "+", "(Scroll ↑↓)"], "action": "Go to workspace -1/+1" }, + { "keys": ["Ctrl", "", "+", "←"], "action": "Go to workspace on the left" }, + { "keys": ["Ctrl", "", "+", "→"], "action": "Go to workspace on the right" }, + { "keys": ["", "+", "PageUp"], "action": "Go to workspace on the left" }, + { "keys": ["", "+", "PageDown"], "action": "Go to workspace on the right" } + ], + "appeartick": 1 + }, + { + "icon": "overview_key", + "name": "Workspaces: management", + "binds": [ + { "keys": ["", "Alt", "+", "#"], "action": "Move window to workspace #" }, + { "keys": ["", "Alt", "+", "S"], "action": "Move window to special workspace" }, + { "keys": ["", "Alt", "+", "PageUp"], "action": "Move window to workspace on the left" }, + { "keys": ["", "Alt", "+", "PageDown"], "action": "Move window to workspace on the right" } + ], + "appeartick": 1 + }, + { + "icon": "move_group", + "name": "Windows", + "binds": [ + { "keys": ["", "+", "←↑→↓"], "action": "Focus window in direction" }, + { "keys": ["", "Shift", "+", "←↑→↓"], "action": "Swap window in direction" }, + { "keys": ["", "+", ";"], "action": "Split ratio -" }, + { "keys": ["", "+", "'"], "action": "Split ratio +" }, + { "keys": ["", "+", "Lmb"], "action": "Move window" }, + { "keys": ["", "+", "Mmb"], "action": "Move window" }, + { "keys": ["", "+", "Rmb"], "action": "Resize window" }, + { "keys": ["", "+", "F"], "action": "Fullscreen" }, + { "keys": ["", "Alt", "+", "F"], "action": "Fake fullscreen" } + ], + "appeartick": 1 + } +], +[ + { + "icon": "widgets", + "name": "Widgets (AGS)", + "binds": [ + { "keys": ["", "OR", "", "+", "Tab"], "action": "Toggle overview/launcher" }, + { "keys": ["Ctrl", "", "+", "R"], "action": "Restart AGS" }, + { "keys": ["", "+", "/"], "action": "Toggle this cheatsheet" }, + { "keys": ["", "+", "N"], "action": "Toggle system sidebar" }, + { "keys": ["", "+", "B", "OR", "", "+", "O"], "action": "Toggle utilities sidebar" }, + { "keys": ["", "+", "K"], "action": "Toggle virtual keyboard" }, + { "keys": ["Ctrl", "Alt", "+", "Del"], "action": "Power/Session menu" }, + + { "keys": ["Esc"], "action": "Exit a window" }, + { "keys": ["rightCtrl"], "action": "Dismiss/close sidebar" }, + + { "keys": ["Ctrl", "", "+", "T"], "action": "Change wallpaper+colorscheme" }, + + // { "keys": ["", "+", "B"], "action": "Toggle left sidebar" }, + // { "keys": ["", "+", "N"], "action": "Toggle right sidebar" }, + // { "keys": ["", "+", "G"], "action": "Toggle volume mixer" }, + // { "keys": ["", "+", "M"], "action": "Toggle useless audio visualizer" }, + // { "keys": ["(right)Ctrl"], "action": "Dismiss notification & close menus" } + ], + "appeartick": 2 + }, + { + "icon": "construction", + "name": "Utilities", + "binds": [ + { "keys": ["PrtSc"], "action": "Screenshot >> clipboard" }, + { "keys": ["", "Shift", "+", "S"], "action": "Screen snip >> clipboard" }, + { "keys": ["", "Shift", "+", "T"], "action": "Image to text >> clipboard" }, + { "keys": ["", "Shift", "+", "C"], "action": "Color picker" }, + { "keys": ["", "Alt", "+", "R"], "action": "Record region" }, + { "keys": ["Ctrl", "Alt", "+", "R"], "action": "Record region with sound" }, + { "keys": ["", "Shift", "Alt", "+", "R"], "action": "Record screen with sound" } + ], + "appeartick": 2 + }, + // { + // "icon": "edit", + // "name": "Edit mode", + // "binds": [ + // { "keys": ["Esc"], "action": "Exit Edit mode" }, + // { "keys": ["#"], "action": "Go to to workspace #" }, + // { "keys": ["Alt", "+", "#"], "action": "Dump windows to workspace #" }, + // { "keys": ["Shift", "+", "#"], "action": "Swap windows with workspace #" }, + // { "keys": ["Lmb"], "action": "Move window" }, + // { "keys": ["Mmb"], "action": "Move window" }, + // { "keys": ["Rmb"], "action": "Resize window" } + // ], + // "appeartick": 2 + // } +], +[ + { + "icon": "apps", + "name": "Apps", + "binds": [ + { "keys": ["", "+", "T"], "action": "Launch terminal: foot" }, + { "keys": ["", "+", "W"], "action": "Launch browser: Firefox" }, + { "keys": ["", "+", "C"], "action": "Launch editor: vscode" }, + { "keys": ["", "+", "X"], "action": "Launch editor: GNOME Text Editor" }, + { "keys": ["", "+", "I"], "action": "Launch settings: GNOME Control center" } + ], + "appeartick": 3 + }, + { + "icon": "keyboard", + "name": "Typing", + "binds": [ + { "keys": ["", "+", "V"], "action": "Clipboard history >> clipboard" }, + { "keys": ["", "+", "."], "action": "Emoji picker >> clipboard" }, + ], + "appeartick": 3 + }, + { + "icon": "terminal", + "name": "Launcher actions", + "binds": [ + { "keys": [">raw"], "action": "Toggle mouse acceleration" }, + { "keys": [">img"], "action": "Select wallpaper and generate colorscheme" }, + { "keys": [">light"], "action": "Switch to light theme" }, + { "keys": [">dark"], "action": "Switch to dark theme" }, + { "keys": [">badapple"], "action": "Apply black n' white colorscheme" }, + { "keys": [">color"], "action": "Pick acccent color" }, + { "keys": [">todo"], "action": "Type something after that to add a To-do item" }, + ], + "appeartick": 3 + } +]]; diff --git a/.config/ags/data/keyboardlayouts.js b/.config/ags/data/keyboardlayouts.js new file mode 100644 index 000000000..f58e378a4 --- /dev/null +++ b/.config/ags/data/keyboardlayouts.js @@ -0,0 +1,114 @@ +// We're going to use ydotool +// See /usr/include/linux/input-event-codes.h for keycodes + +export const defaultOskLayout = "qwerty_full" +export const oskLayouts = { + qwerty_full: { + name: "QWERTY - Full", + name_short: "US", + comment: "Like physical keyboard", + // A key looks like this: { k: "a", ks: "A", t: "normal" } (key, key-shift, type) + // key types are: normal, tab, caps, shift, control, fn (normal w/ half height), space, expand + // keys: [ + // [{ k: "Esc", t: "fn" }, { k: "F1", t: "fn" }, { k: "F2", t: "fn" }, { k: "F3", t: "fn" }, { k: "F4", t: "fn" }, { k: "F5", t: "fn" }, { k: "F6", t: "fn" }, { k: "F7", t: "fn" }, { k: "F8", t: "fn" }, { k: "F9", t: "fn" }, { k: "F10", t: "fn" }, { k: "F11", t: "fn" }, { k: "F12", t: "fn" }, { k: "PrtSc", t: "fn" }, { k: "Del", t: "fn" }], + // [{ k: "`", ks: "~", t: "normal" }, { k: "1", ks: "!", t: "normal" }, { k: "2", ks: "@", t: "normal" }, { k: "3", ks: "#", t: "normal" }, { k: "4", ks: "$", t: "normal" }, { k: "5", ks: "%", t: "normal" }, { k: "6", ks: "^", t: "normal" }, { k: "7", ks: "&", t: "normal" }, { k: "8", ks: "*", t: "normal" }, { k: "9", ks: "(", t: "normal" }, { k: "0", ks: ")", t: "normal" }, { k: "-", ks: "_", t: "normal" }, { k: "=", ks: "+", t: "normal" }, { k: "Backspace", t: "shift" }], + // [{ k: "Tab", t: "tab" }, { k: "q", ks: "Q", t: "normal" }, { k: "w", ks: "W", t: "normal" }, { k: "e", ks: "E", t: "normal" }, { k: "r", ks: "R", t: "normal" }, { k: "t", ks: "T", t: "normal" }, { k: "y", ks: "Y", t: "normal" }, { k: "u", ks: "U", t: "normal" }, { k: "i", ks: "I", t: "normal" }, { k: "o", ks: "O", t: "normal" }, { k: "p", ks: "P", t: "normal" }, { k: "[", ks: "{", t: "normal" }, { k: "]", ks: "}", t: "normal" }, { k: "\\", ks: "|", t: "expand" }], + // [{ k: "Caps", t: "caps" }, { k: "a", ks: "A", t: "normal" }, { k: "s", ks: "S", t: "normal" }, { k: "d", ks: "D", t: "normal" }, { k: "f", ks: "F", t: "normal" }, { k: "g", ks: "G", t: "normal" }, { k: "h", ks: "H", t: "normal" }, { k: "j", ks: "J", t: "normal" }, { k: "k", ks: "K", t: "normal" }, { k: "l", ks: "L", t: "normal" }, { k: ";", ks: ":", t: "normal" }, { k: "'", ks: '"', t: "normal" }, { k: "Enter", t: "expand" }], + // [{ k: "Shift", t: "shift" }, { k: "z", ks: "Z", t: "normal" }, { k: "x", ks: "X", t: "normal" }, { k: "c", ks: "C", t: "normal" }, { k: "v", ks: "V", t: "normal" }, { k: "b", ks: "B", t: "normal" }, { k: "n", ks: "N", t: "normal" }, { k: "m", ks: "M", t: "normal" }, { k: ",", ks: "<", t: "normal" }, { k: ".", ks: ">", t: "normal" }, { k: "/", ks: "?", t: "normal" }, { k: "Shift", t: "expand" }], + // [{ k: "Ctrl", t: "control" }, { k: "Fn", t: "normal" }, { k: "Win", t: "normal" }, { k: "Alt", t: "normal" }, { k: "Space", t: "space" }, { k: "Alt", t: "normal" }, { k: "Menu", t: "normal" }, { k: "Ctrl", t: "control" }] + // ] + // A normal key looks like this: {label: "a", labelShift: "A", shape: "normal", keycode: 30, type: "normal"} + // A modkey looks like this: {label: "Ctrl", shape: "control", keycode: 29, type: "modkey"} + // key types are: normal, tab, caps, shift, control, fn (normal w/ half height), space, expand + keys: [ + [ + { keytype: "normal", label: "Esc", shape: "fn", keycode: 1 }, + { keytype: "normal", label: "F1", shape: "fn", keycode: 59 }, + { keytype: "normal", label: "F2", shape: "fn", keycode: 60 }, + { keytype: "normal", label: "F3", shape: "fn", keycode: 61 }, + { keytype: "normal", label: "F4", shape: "fn", keycode: 62 }, + { keytype: "normal", label: "F5", shape: "fn", keycode: 63 }, + { keytype: "normal", label: "F6", shape: "fn", keycode: 64 }, + { keytype: "normal", label: "F7", shape: "fn", keycode: 65 }, + { keytype: "normal", label: "F8", shape: "fn", keycode: 66 }, + { keytype: "normal", label: "F9", shape: "fn", keycode: 67 }, + { keytype: "normal", label: "F10", shape: "fn", keycode: 68 }, + { keytype: "normal", label: "F11", shape: "fn", keycode: 87 }, + { keytype: "normal", label: "F12", shape: "fn", keycode: 88 }, + { keytype: "normal", label: "PrtSc", shape: "fn", keycode: 99 }, + { keytype: "normal", label: "Del", shape: "fn", keycode: 111 } + ], + [ + { keytype: "normal", label: "`", labelShift: "~", shape: "normal", keycode: 41 }, + { keytype: "normal", label: "1", labelShift: "!", shape: "normal", keycode: 2 }, + { keytype: "normal", label: "2", labelShift: "@", shape: "normal", keycode: 3 }, + { keytype: "normal", label: "3", labelShift: "#", shape: "normal", keycode: 4 }, + { keytype: "normal", label: "4", labelShift: "$", shape: "normal", keycode: 5 }, + { keytype: "normal", label: "5", labelShift: "%", shape: "normal", keycode: 6 }, + { keytype: "normal", label: "6", labelShift: "^", shape: "normal", keycode: 7 }, + { keytype: "normal", label: "7", labelShift: "&", shape: "normal", keycode: 8 }, + { keytype: "normal", label: "8", labelShift: "*", shape: "normal", keycode: 9 }, + { keytype: "normal", label: "9", labelShift: "(", shape: "normal", keycode: 10 }, + { keytype: "normal", label: "0", labelShift: ")", shape: "normal", keycode: 11 }, + { keytype: "normal", label: "-", labelShift: "_", shape: "normal", keycode: 12 }, + { keytype: "normal", label: "=", labelShift: "+", shape: "normal", keycode: 13 }, + { keytype: "normal", label: "Backspace", shape: "expand", keycode: 14 } + ], + [ + { keytype: "normal", label: "Tab", shape: "tab", keycode: 15 }, + { keytype: "normal", label: "q", labelShift: "Q", shape: "normal", keycode: 16 }, + { keytype: "normal", label: "w", labelShift: "W", shape: "normal", keycode: 17 }, + { keytype: "normal", label: "e", labelShift: "E", shape: "normal", keycode: 18 }, + { keytype: "normal", label: "r", labelShift: "R", shape: "normal", keycode: 19 }, + { keytype: "normal", label: "t", labelShift: "T", shape: "normal", keycode: 20 }, + { keytype: "normal", label: "y", labelShift: "Y", shape: "normal", keycode: 21 }, + { keytype: "normal", label: "u", labelShift: "U", shape: "normal", keycode: 22 }, + { keytype: "normal", label: "i", labelShift: "I", shape: "normal", keycode: 23 }, + { keytype: "normal", label: "o", labelShift: "O", shape: "normal", keycode: 24 }, + { keytype: "normal", label: "p", labelShift: "P", shape: "normal", keycode: 25 }, + { keytype: "normal", label: "[", labelShift: "{", shape: "normal", keycode: 26 }, + { keytype: "normal", label: "]", labelShift: "}", shape: "normal", keycode: 27 }, + { keytype: "normal", label: "\\", labelShift: "|", shape: "expand", keycode: 43 } + ], + [ + { keytype: "normal", label: "Caps", shape: "caps", keycode: 58 }, + { keytype: "normal", label: "a", labelShift: "A", shape: "normal", keycode: 30 }, + { keytype: "normal", label: "s", labelShift: "S", shape: "normal", keycode: 31 }, + { keytype: "normal", label: "d", labelShift: "D", shape: "normal", keycode: 32 }, + { keytype: "normal", label: "f", labelShift: "F", shape: "normal", keycode: 33 }, + { keytype: "normal", label: "g", labelShift: "G", shape: "normal", keycode: 34 }, + { keytype: "normal", label: "h", labelShift: "H", shape: "normal", keycode: 35 }, + { keytype: "normal", label: "j", labelShift: "J", shape: "normal", keycode: 36 }, + { keytype: "normal", label: "k", labelShift: "K", shape: "normal", keycode: 37 }, + { keytype: "normal", label: "l", labelShift: "L", shape: "normal", keycode: 38 }, + { keytype: "normal", label: ";", labelShift: ":", shape: "normal", keycode: 39 }, + { keytype: "normal", label: "'", labelShift: '"', shape: "normal", keycode: 40 }, + { keytype: "normal", label: "Enter", shape: "expand", keycode: 28 } + ], + [ + { keytype: "modkey", label: "Shift", shape: "shift", keycode: 42 }, + { keytype: "normal", label: "z", labelShift: "Z", shape: "normal", keycode: 44 }, + { keytype: "normal", label: "x", labelShift: "X", shape: "normal", keycode: 45 }, + { keytype: "normal", label: "c", labelShift: "C", shape: "normal", keycode: 46 }, + { keytype: "normal", label: "v", labelShift: "V", shape: "normal", keycode: 47 }, + { keytype: "normal", label: "b", labelShift: "B", shape: "normal", keycode: 48 }, + { keytype: "normal", label: "n", labelShift: "N", shape: "normal", keycode: 49 }, + { keytype: "normal", label: "m", labelShift: "M", shape: "normal", keycode: 50 }, + { keytype: "normal", label: ",", labelShift: "<", shape: "normal", keycode: 51 }, + { keytype: "normal", label: ".", labelShift: ">", shape: "normal", keycode: 52 }, + { keytype: "normal", label: "/", labelShift: "?", shape: "normal", keycode: 53 }, + { keytype: "modkey", label: "Shift", shape: "expand", keycode: 54 } + ], + [ + { keytype: "modkey", label: "Ctrl", shape: "control", keycode: 29 }, + // { label: "Super", shape: "normal", keycode: 125 }, // dangerous + { keytype: "modkey", label: "Alt", shape: "normal", keycode: 56 }, + { keytype: "normal", label: "Space", shape: "space", keycode: 57 }, + { keytype: "modkey", label: "Alt", shape: "normal", keycode: 100 }, + // { label: "Super", shape: "normal", keycode: 126 }, // dangerous + { keytype: "normal", label: "Menu", shape: "normal", keycode: 139 }, + { keytype: "modkey", label: "Ctrl", shape: "control", keycode: 97 } + ] + ] + } +} \ No newline at end of file diff --git a/.config/ags/data/languages.js b/.config/ags/data/languages.js new file mode 100644 index 000000000..c61eedd6b --- /dev/null +++ b/.config/ags/data/languages.js @@ -0,0 +1,62 @@ +// For keyboard layout in lib/statusicons.js +// This list is not exhaustive. It just includes known/possible languages of users of my dotfiles +// Add your language here if you use multi-lang xkb input. Else, ignore +// Note that something like "French (Canada)" should go before "French" +// and "English (US)" should go before "English" +export const languages = [ + { + layout: 'us', + name: 'English (US)', + flag: '🇺🇸' + }, + { + layout: 'ru', + name: 'Russian', + flag: '🇷🇺', + }, + { + layout: 'pl', + name: 'Polish', + flag: '🇷🇵🇵🇱', + }, + { + layout: 'ro', + name: 'Romanian', + flag: '🇷🇴', + }, + { + layout: 'ca', + name: 'French (Canada)', + flag: '🇫🇷', + }, + { + layout: 'fr', + name: 'French', + flag: '🇫🇷', + }, + { + layout: 'tr', + name: 'Turkish', + flag: '🇹🇷', + }, + { + layout: 'jp', + name: 'Japanese', + flag: '🇯🇵', + }, + { + layout: 'cn', + name: 'Chinese', + flag: '🇨🇳', + }, + { + layout: 'vn', + name: 'Vietnamese', + flag: '🇻🇳', + }, + { + layout: 'undef', + name: 'Undefined', + flag: '🧐', + }, +] \ No newline at end of file diff --git a/.config/ags/data/quicklaunches.js b/.config/ags/data/quicklaunches.js new file mode 100644 index 000000000..a5a9562f1 --- /dev/null +++ b/.config/ags/data/quicklaunches.js @@ -0,0 +1,14 @@ +export const quickLaunchItems = [ + { + "name": "GitHub + Files×2", + "command": "github-desktop & nautilus --new-window & nautilus --new-window &" + }, + { + "name": "Terminal×2", + "command": "foot & foot &" + }, + { + "name": "Discord + Youtube + Github", + "command": "xdg-open 'https://discord.com/app' && xdg-open 'https://youtube.com/' && xdg-open 'https://github.com/' &" + }, +] \ No newline at end of file diff --git a/.config/ags/data/quotes.js b/.config/ags/data/quotes.js new file mode 100644 index 000000000..7cea99075 --- /dev/null +++ b/.config/ags/data/quotes.js @@ -0,0 +1,14 @@ +export const quotes = [ + { + quote: 'Nvidia, fuck you', + author: 'Linus Torvalds', + }, + { + quote: 'reproducible system? cock and vagina?', + author: 'vaxry', + }, + { + quote: "haha pointers hee hee i love pointe-\\\nProcess Vaxry exited with signal SIGSEGV", + author: 'vaxry', + } +]; diff --git a/.config/ags/data/sourceviewtheme.xml b/.config/ags/data/sourceviewtheme.xml new file mode 100644 index 000000000..cecf966b8 --- /dev/null +++ b/.config/ags/data/sourceviewtheme.xml @@ -0,0 +1,106 @@ + + + end_4 + <_description>Monokai port but very random + + + + + + + + + + + + + + + + + + + + + + +