diff --git a/home/guz-lite/apps.nix b/home/guz-lite/apps.nix index 222b850..587c77b 100644 --- a/home/guz-lite/apps.nix +++ b/home/guz-lite/apps.nix @@ -13,15 +13,8 @@ xdg.mimeApps.enable = true; xdg.mimeApps.defaultApplications = let - browser = "qutebrowser.desktop"; email = "org.mozilla.Thunderbird.desktop"; in { - "text/html" = browser; - "x-scheme-handler/http" = browser; - "x-scheme-handler/https" = browser; - "x-scheme-handler/about" = browser; - "x-scheme-handler/unknown" = browser; - "message/rfc822" = email; "x-scheme-handler/mailto" = email; "text/calendar" = email; diff --git a/home/guz-lite/browser.nix b/home/guz-lite/browser.nix index d40bcfb..6ba576a 100644 --- a/home/guz-lite/browser.nix +++ b/home/guz-lite/browser.nix @@ -1,210 +1,311 @@ { - self, - pkgs, + config, lib, + osConfig, + pkgs, + self, ... }: { imports = [ - self.homeManagerModules.qutebrowser-profiles + self.homeManagerModules.zen-browser ]; - programs.qutebrowser.enable = true; - programs.qutebrowser.keyBindings = { - normal = { - ",m" = "spawn umpv {url}"; - ",M" = "hint links spawn umpv {hint-url}"; - ";M" = "hint --rapid links spawn umpv {hint-url}"; + xdg.mimeApps.defaultApplications = with lib; + listToAttrs (map (name: { + inherit name; + value = config.programs.zen-browser.package.meta.desktopFileName; + }) [ + "application/x-extension-shtml" + "application/x-extension-xhtml" + "application/x-extension-html" + "application/x-extension-xht" + "application/x-extension-htm" + "x-scheme-handler/unknown" + "x-scheme-handler/mailto" + "x-scheme-handler/chrome" + "x-scheme-handler/about" + "x-scheme-handler/https" + "x-scheme-handler/http" + "application/xhtml+xml" + "application/json" + "text/plain" + "text/html" + ]); + + programs.zen-browser = let + locked = v: { + Value = v; + Status = "locked"; }; - }; - programs.qutebrowser.settings = with lib; { - auto_save.session = true; - confirm_quit = ["downloads"]; - - tabs.position = "left"; - - # Colors - colors.tabs.pinned.even.bg = mkForce "#181818"; - colors.tabs.pinned.odd.bg = mkForce "#181818"; - - colors.tabs.selected.even.bg = mkForce "#CDD6F4"; # Catppuccin's Text - colors.tabs.selected.odd.bg = mkForce "#CDD6F4"; # Catppuccin's Text - colors.tabs.selected.even.fg = mkForce "#111111"; - colors.tabs.selected.odd.fg = mkForce "#111111"; - - colors.tabs.pinned.selected.even.bg = mkForce "#CDD6F4"; # Catppuccin's Text - colors.tabs.pinned.selected.odd.bg = mkForce "#CDD6F4"; # Catppuccin's Text - - ## Darkmode - colors.webpage.darkmode.enabled = true; - colors.webpage.darkmode.algorithm = "lightness-cielab"; - colors.webpage.darkmode.policy.images = "never"; - - # Prevent fingerprinting - content.canvas_reading = false; - content.cookies.accept = "all"; - content.cookies.store = true; - content.geolocation = false; - content.webgl = false; - content.webrtc_ip_handling_policy = "default-public-interface-only"; - }; - programs.qutebrowser.extraConfig = '' - config.set('colors.webpage.darkmode.enabled', False, 'file://*') - config.set('colors.webpage.darkmode.enabled', False, 'http://*:*/*') - - config.set('colors.webpage.darkmode.enabled', False, 'capytal.company') - config.set('colors.webpage.darkmode.enabled', False, '*.capytal.company') - config.set('colors.webpage.darkmode.enabled', False, 'capytal.cc') - config.set('colors.webpage.darkmode.enabled', False, '*.capytal.cc') - config.set('colors.webpage.darkmode.enabled', False, 'lored.dev') - config.set('colors.webpage.darkmode.enabled', False, '*.lored.dev') - config.set('colors.webpage.darkmode.enabled', False, 'guz.one') - config.set('colors.webpage.darkmode.enabled', False, '*.guz.one') - ''; - programs.qutebrowser.searchEngines = { - DEFAULT = "https://search.brave.com/search?q={}"; - # Nix - pkg = "https://search.nixos.org/packages?query={}"; - opt = "https://search.nixos.org/options?query={}"; - lib = "https://noogle.dev/q?term={}"; - hm = "https://home-manager-options.extranix.com/?query={}"; - wiki = "https://nixos.wiki/index.php?search={}&go=Go"; - - # Wikipedia - w = "https://en.wikipedia.org/wiki/Special:Search?search={}&go=Go&ns0=1"; - wpt = "https://pt.wikipedia.org/wiki/Special:Search?search={}&go=Go&ns0=1"; - }; - programs.qutebrowser.greasemonkey = [ - # Youtube Adblocking - (pkgs.fetchurl { - url = "https://raw.githubusercontent.com/afreakk/greasemonkeyscripts/refs/heads/master/youtube_adblock.js"; - hash = "sha256-AyD9VoLJbKPfqmDEwFIEBMl//EIV/FYnZ1+ona+VU9c="; - }) - # Youtube Sponsorblock - (pkgs.fetchurl { - url = "https://raw.githubusercontent.com/afreakk/greasemonkeyscripts/refs/heads/master/youtube_sponsorblock.js"; - hash = "sha256-nwNade1oHP+w5LGUPJSgAX1+nQZli4Rhe8FFUoF5mLE="; - }) - # Reddit adblock - (pkgs.fetchurl { - url = "https://github.com/afreakk/greasemonkeyscripts/raw/refs/heads/master/reddit_adblock.js"; - hash = "sha256-KmCXL4GrZtwPLRyAvAxADpyjbdY5UFnS/XKZFKtg7tk="; - }) - # Pinterest adblock - (pkgs.writeText "pinterest_adblock.js" '' - // ==UserScript== - // @name remove ads from pinterest - // @version 1.0.0 - // @author guz - // @match *://*.pinterest.com/* - // ==/UserScript== - - const removeShit = () => { - document.querySelectorAll('[data-grid-item]:has([title="Promoted by"])').forEach((e) => e.remove()); - document.querySelectorAll('[data-grid-item]:has([data-test-id="oneTapPromotedPin"])').forEach((e) => e.remove()); - document.querySelectorAll('[data-grid-item]:has([aria-label="Product Pin"])').forEach((e) => e.remove()); - // document.querySelectorAll('[data-grid-item]:has-text(ideas you might love)').forEach((e) => e.remove()); - // document.querySelectorAll('[data-grid-item]:has-text(Seaches to try)').forEach((e) => e.remove()); - }; - (trySetInterval = () => { - window.setInterval(removeShit, 1000); - })(); - '') - # Privacy Redirector - (pkgs.substitute { - src = pkgs.fetchurl { - url = "https://github.com/dybdeskarphet/privacy-redirector/raw/refs/heads/main/privacy-redirector.user.js"; - hash = "sha256-xj36+/3coiStIxftWCJUWHokSEmr+YRLOTktbmn5TkU="; - }; - substitutions = [ - # ON-OFF (Redirection / Farside) - "--replace" - "pinterest = [true, true]" - "pinterest = [false, false]" - "--replace" - "tumblr = [true, false]" - "tumblr = [false, false]" - "--replace" - "wikipedia = [true, false]" - "wikipedia = [false, false]" - "--replace" - "youtube = [true, false]" - "youtube = [false, false]" - "--replace" - "instagram = [true, true]" - "instagram = [false, false]" - ]; - }) - # Aternos Anti-Anti-Adblock - (pkgs.fetchurl { - url = "https://gist.github.com/DvilMuck/f2b14f3f65e8f22974d781277158f82a/raw/66a0d8d9dd598fc516c3c9d9bbf6ef3f0f6a7a1e/aternosAntiAntiadblock.user.js"; - hash = "sha256-PBFCt9o22D7WAN8S6C2BnLKgG3J5zZ/mWbWspCKcm6k="; - }) - # Aternos block tracking - (pkgs.fetchurl { - url = "https://gist.github.com/DvilMuck/f2b14f3f65e8f22974d781277158f82a/raw/66a0d8d9dd598fc516c3c9d9bbf6ef3f0f6a7a1e/aternosBlockTracking.user.js"; - hash = "sha256-GDDx3gbvh28qiB3Gi61k/pdM11wJhcV7dwCRGNvq30c="; - }) - ]; - programs.qutebrowser.profiles = let - programmingSearchEngines = { - # Languages - go = "https://pkg.go.dev/search?q={}"; + settings = { + "beacon.enabled" = locked false; + "browser.startup.page" = locked 3; + "device.sensors.enabled" = locked false; + "dom.battery.enabled" = locked false; + "dom.event.clipboardevents.enabled" = locked false; + "geo.enabled" = locked false; + "media.peerconnection.enabled" = locked false; + "privacy.clearHistory.cookiesAndStorage" = locked false; + "privacy.clearHistory.siteSettings" = locked false; + "privacy.firstparty.isolate" = locked true; + "privacy.resistFingerprinting" = locked true; + "privacy.trackingprotection.enabled" = locked true; + "privacy.trackingprotection.socialtracking.enabled" = locked true; + "webgl.disabled" = true; + "zen.view.use-single-toolbar" = false; }; in { - "art" = { - settings = { - colors.tabs.selected.even.bg = "#CBA6F7"; # Catppuccin's Mauve - colors.tabs.selected.odd.bg = "#CBA6F7"; # Catppuccin's Mauve - colors.tabs.pinned.selected.even.bg = "#CBA6F7"; # Catppuccin's Mauve - colors.tabs.pinned.selected.odd.bg = "#CBA6F7"; # Catppuccin's Mauve + enable = true; + profiles."default" = { + containersForce = true; + containers = { + Personal = { + color = "purple"; + icon = "fingerprint"; + id = 1; + }; + Work = { + color = "blue"; + icon = "briefcase"; + id = 2; + }; + Shopping = { + color = "yellow"; + icon = "cart"; + id = 4; + }; + Goverment = { + color = "orange"; + icon = "dollar"; + id = 5; + }; + }; + extensions.force = true; + extensions.settings = { + "tridactyl.vim@cmcaine.co.uk".settings = { + userconfig = { + configVersion = "2.0"; + nmaps = { + "K" = "tabprev"; + "J" = "tabnext"; + }; + theme = "midnight"; + searchurls = with lib; + mapAttrs' (n: v: + nameValuePair + ( + if v?definedAliases + then elemAt v.definedAliases 0 + else n + ) + (replaceString "{searchTerms}" "" (elemAt v.urls 0).template)) + config.programs.zen-browser.profiles."default".search.engines; + }; + }; + "uBlock0@raymondhill.net".settings = { + selectedFilterLists = [ + "user-filters" + "ublock-filters" + "ublock-badware" + "ublock-privacy" + "ublock-unbreak" + "ublock-quick-fixes" + "easylist" + "easyprivacy" + "urlhaus-1" + "plowe-0" + ]; + dynamicFilteringString = '' + behind-the-scene * * noop + behind-the-scene * inline-script noop + behind-the-scene * 1p-script noop + behind-the-scene * 3p-script noop + behind-the-scene * 3p-frame noop + behind-the-scene * image noop + behind-the-scene * 3p noop + * * 3p-script block + * * 3p-frame block + capytal.cc * * noop + capytal.company * * noop + guz.one * * noop + keikos.work * * noop + lored.dev * * noop + home-manager-options.extranix.com extranix.com * noop + home-manager-options.extranix.com home-manager-options.extranix.com * noop + ''; + }; + "{ef87d84c-2127-493f-b952-5b4e744245bc}".settings = { + baseUrl = "http://127.0.0.1:5600"; + consentRequired = true; + consent = true; + hostname = osConfig.networking.hostName; + enabled = true; + browserName = "zen"; + }; + "7esoorv3@alefvanoon.anonaddy.me".settings = with builtins; fromJSON (readFile ./libredirect.json); + }; + search.default = "brave"; + search.force = true; + search.engines = { + brave = { + name = "Brave"; + urls = [{template = "https://search.brave.com/search?q={searchTerms}";}]; + }; + nix-packages = { + name = "Nix Packages"; + urls = [{template = "https://search.nixos.org/packages?query={searchTerms}";}]; + icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + definedAliases = ["@pkg"]; + }; + nix-options = { + name = "Nix Options"; + urls = [{template = "https://search.nixos.org/options?query={searchTerms}";}]; + icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + definedAliases = ["@opt"]; + }; + nix-home-manager = { + name = "Home Manager"; + urls = [{template = "https://home-manager-options.extranix.com/?query={searchTerms}";}]; + icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + definedAliases = ["@hm"]; + }; + nix-noodle = { + name = "Noodle"; + urls = [{template = "https://noogle.dev/q?term={searchTerms}";}]; + icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg"; + definedAliases = ["@lib"]; + }; + }; + settings = with builtins; + mapAttrs (n: v: + if isAttrs v + then v.Value + else v) + settings; + shortcuts = { + "key_search" = {key = "";}; + "key_search2" = {key = "";}; + "zen-workspace-forward" = { + key = "j"; + modifiers = { + control = true; + }; + action = "cmd_zenWorkspaceForward"; + }; + "zen-workspace-backward" = { + key = "k"; + modifiers = { + control = true; + }; + action = "cmd_zenWorkspaceBackward"; + }; + }; + spacesForce = true; + spaces = let + containers = config.programs.zen-browser.profiles."default".containers; + in { + "Space" = { + id = "c6de089c-410d-4206-961d-ab11f988d40a"; + position = 1000; + }; + "Work" = { + id = "cdd10fab-4fc5-494b-9041-325e5759195b"; + icon = "chrome://browser/skin/zen-icons/selectable/star-1.svg"; + container = containers."Work".id; + position = 2000; + }; + "Shopping" = { + id = "78aabdad-8aae-4fe0-8ff0-2a0c6c4ccc24"; + icon = "chrome://browser/skin/zen-icons/selectable/basket.svg"; + container = containers."Shopping".id; + position = 5000; + }; + "Goverment" = { + id = "7e83e835-caef-4b94-be0c-b6b3959d0830"; + icon = "chrome://browser/skin/zen-icons/selectable/folder.svg"; + container = containers."Goverment".id; + position = 6000; + }; }; }; - "personal" = { - settings = { - colors.tabs.selected.even.bg = "#F5E0DC"; # Catppuccin's Rosewater - colors.tabs.selected.odd.bg = "#F5E0DC"; # Catppuccin's Rosewater - colors.tabs.pinned.selected.even.bg = "#F5E0DC"; # Catppuccin's Rosewater - colors.tabs.pinned.selected.odd.bg = "#F5E0DC"; # Catppuccin's Rosewater + policies = { + AutofillAdressEnabled = true; + AutofillCreditCardEnabled = false; + EnableTrackingProtection = { + Value = true; + Locked = true; + Cryptomining = true; + Fingerprinting = true; }; - }; - "work" = { - settings = { - colors.tabs.selected.even.bg = "#74C7EC"; # Catppuccin's Sapphire - colors.tabs.selected.odd.bg = "#74C7EC"; # Catppuccin's Sapphire - colors.tabs.pinned.selected.even.bg = "#74C7EC"; # Catppuccin's Sapphire - colors.tabs.pinned.selected.odd.bg = "#74C7EC"; # Catppuccin's Sapphire + ExtensionSettings = { + "@contain-facebook" = { + install_url = "https://addons.mozilla.org/firefox/downloads/latest/facebook-container/latest.xpi"; + installation_mode = "force_installed"; + }; + "7esoorv3@alefvanoon.anonaddy.me" = { + install_url = "https://addons.mozilla.org/firefox/downloads/latest/libredirect/latest.xpi"; + installation_mode = "force_installed"; + }; + "addon@darkreader.org" = { + install_url = "https://addons.mozilla.org/firefox/downloads/latest/darkreader/latest.xpi"; + installation_mode = "force_installed"; + }; + "addon@simplelogin" = { + install_url = "https://addons.mozilla.org/firefox/downloads/latest/simplelogin/latest.xpi"; + installation_mode = "force_installed"; + }; + "deArrow@ajay.app" = { + install_url = "https://addons.mozilla.org/firefox/downloads/latest/dearrow/latest.xpi"; + installation_mode = "force_installed"; + }; + "idcac-pub@guus.ninja" = { + install_url = "https://addons.mozilla.org/firefox/downloads/latest/istilldontcareaboutcookies/latest.xpi"; + installation_mode = "force_installed"; + }; + "tridactyl.vim@cmcaine.co.uk" = { + install_url = "https://addons.mozilla.org/firefox/downloads/latest/tridactyl-vim/latest.xpi"; + installation_mode = "force_installed"; + }; + "sponsorBlocker@ajay.app" = { + install_url = "https://addons.mozilla.org/firefox/downloads/latest/sponsorblock/latest.xpi"; + installation_mode = "force_installed"; + }; + "uBlock0@raymondhill.net" = { + install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi"; + installation_mode = "force_installed"; + }; + "{74145f27-f039-47ce-a470-a662b129930a}" = { + install_url = "https://addons.mozilla.org/firefox/downloads/latest/clearurls/latest.xpi"; + installation_mode = "force_installed"; + }; + "{aecec67f-0d10-4fa7-b7c7-609a2db280cf}" = { + install_url = "https://addons.mozilla.org/firefox/downloads/latest/violentmonkey/latest.xpi"; + installation_mode = "force_installed"; + }; + "{ef87d84c-2127-493f-b952-5b4e744245bc}" = { + install_url = "https://addons.mozilla.org/firefox/downloads/latest/aw-watcher-web/latest.xpi"; + installation_mode = "force_installed"; + }; }; - searchEngines = programmingSearchEngines; + DisableAppUpdate = true; + DisableFeedbackCommands = true; + DisableFirefoxStudies = true; + DisablePocket = true; + DisableTelemetry = true; + DontCheckDefaultBrowser = true; + NoDefaultBookmarks = true; + OfferToSaveLogins = false; + Preferences = with builtins; + mapAttrs ( + n: v: + if isAttrs v + then v + else {Value = v;} + ) + settings; + ShowHomeButton = false; + WindowsSSO = false; }; - "job" = { - settings = { - confirm_quit = ["always"]; - content.webgl = true; - - colors.tabs.selected.even.bg = "#A6E2A1"; #Catppuccin's Green - colors.tabs.selected.odd.bg = "#A6E2A1"; #Catppuccin's Green - colors.tabs.pinned.selected.even.bg = "#A6E2A1"; #Catppuccin's Green - colors.tabs.pinned.selected.odd.bg = "#A6E2A1"; #Catppuccin's Green - }; - searchEngines = programmingSearchEngines; - }; - "shopping" = { - settings = { - colors.tabs.selected.even.bg = "#F9E2AF"; # Catppuccin's Yellow - colors.tabs.selected.odd.bg = "#F9E2AF"; # Catppuccin's Yellow - colors.tabs.pinned.selected.even.bg = "#F9E2AF"; # Catppuccin's Yellow - colors.tabs.pinned.selected.odd.bg = "#F9E2AF"; # Catppuccin's Yellow - }; - }; - "goverment" = { - settings = { - colors.tabs.selected.even.bg = "#A6ADC8"; # Catppuccin's Subtext 1 - colors.tabs.selected.odd.bg = "#A6ADC8"; # Catppuccin's Subtext 1 - colors.tabs.pinned.selected.even.bg = "#A6ADC8"; # Catppuccin's Subtext 1 - colors.tabs.pinned.selected.odd.bg = "#A6ADC8"; # Catppuccin's Subtext 1 - }; - }; - "facebook" = {}; }; programs.mpv.enable = true; diff --git a/home/guz-lite/libredirect.json b/home/guz-lite/libredirect.json new file mode 100644 index 0000000..64722fb --- /dev/null +++ b/home/guz-lite/libredirect.json @@ -0,0 +1,637 @@ +{ + "options": { + "youtube": { + "enabled": true, + "redirectType": "main_frame", + "frontend": "invidious", + "embedFrontend": "invidious", + "unsupportedUrls": "bypass", + "redirectOnlyInIncognito": false + }, + "invidious": ["https://inv.nadeko.net"], + "materialious": ["https://app.materialio.us"], + "piped": ["https://pipedapi-libre.kavin.rocks"], + "pipedMaterial": ["https://piped-material.xn--17b.net"], + "poketube": ["https://poketube.fun"], + "cloudtube": ["https://tube.cadence.moe"], + "lightTube": ["https://tube.kuylar.dev"], + "tuboYoutube": ["https://tubo.media"], + "viewtube": ["https://viewtube.io"], + "ytify": ["https://ytify.pp.ua"], + "youtubeMusic": { + "enabled": false, + "frontend": "invidiousMusic", + "unsupportedUrls": "bypass", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "hyperpipe": ["https://hp.ggtyler.dev"], + "invidiousMusic": [], + "twitter": { + "enabled": true, + "redirectType": "main_frame", + "unsupportedUrls": "bypass", + "frontend": "nitter", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "nitter": [ + "https://nitter.tiekoetter.com", + "https://xcancel.com", + "https://nitter.privacyredirect.com" + ], + "chatGpt": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "duckDuckGoAiChat", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "bluesky": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "skyview", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "skyview": ["https://skyview.social"], + "reddit": { + "enabled": true, + "frontend": "redlib", + "unsupportedUrls": "bypass", + "instance": "public", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "libreddit": [], + "redlib": [ + "https://safereddit.com", + "https://l.opnxng.com", + "https://redlib.thebunny.zone" + ], + "teddit": [], + "eddrit": ["https://eddrit.com"], + "tumblr": { + "enabled": false, + "redirectType": "main_frame", + "unsupportedUrls": "bypass", + "frontend": "priviblur", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "priviblur": ["https://pb.bloat.cat"], + "twitch": { + "enabled": true, + "redirectType": "main_frame", + "unsupportedUrls": "bypass", + "frontend": "safetwitch", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "safetwitch": [ + "https://safetwitch.drgns.space", + "https://twitch.seitan-ayoub.lol", + "https://safetwitch.lunar.icu", + "https://safetwitch.privacyredirect.com", + "https://safetwitch.darkness.services" + ], + "twineo": ["https://twineo.exozy.me"], + "tiktok": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "proxiTok", + "instance": "public", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "proxiTok": [ + "https://proxitok.pabloferreiro.es", + "https://proxitok.pussthecat.org", + "https://tok.habedieeh.re", + "https://tok.artemislena.eu", + "https://cringe.whatever.social", + "https://proxitok.lunar.icu", + "https://cringe.seitan-ayoub.lol", + "https://proxitok.belloworld.it" + ], + "offtiktok": ["https://www.offtiktok.com"], + "instagram": { + "enabled": false, + "frontend": "proxigram", + "unsupportedUrls": "bypass", + "instance": "public", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "proxigram": ["https://ig.opnxng.com"], + "imdb": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "libremdb", + "instance": "public", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "libremdb": [ + "https://libremdb.iket.me", + "https://libremdb.pussthecat.org", + "https://libremdb.lunar.icu", + "https://binge.whatever.social", + "https://libremdb.r4fo.com", + "https://libremdb.catsarch.com", + "https://d.opnxng.com", + "https://libremdb.ducks.party", + "https://lmdb.bloat.cat", + "https://libremdb.franklyflawless.org", + "https://libremdb-fly.fly.dev" + ], + "bilibili": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "mikuInvidious", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "mikuInvidious": [], + "pixiv": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "pixivFe", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "pixivFe": [ + "https://pixiv.perennialte.ch", + "https://pixivfe.thebunny.zone", + "https://pixivfe.darkness.services", + "https://pixivfe.ducks.party" + ], + "liteXiv": ["https://litexiv.465321.best", "https://litexiv.bloat.cat"], + "vixipy": ["https://vx.maid.zone"], + "pixivViewer": ["https://pixiv.pictures"], + "fandom": { + "enabled": true, + "unsupportedUrls": "bypass", + "instance": "public", + "frontend": "breezeWiki", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "breezeWiki": [ + "https://breezewiki.com", + "https://breezewiki.pussthecat.org", + "https://antifandom.com", + "https://bw.artemislena.eu", + "https://breeze.hostux.net", + "https://z.opnxng.com", + "https://breeze.nohost.network", + "https://breeze.mint.lgbt", + "https://breezewiki.catsarch.com", + "https://breezewiki.hyperreal.coffee", + "https://breezewiki.4o1x5.dev", + "https://fandom.reallyaweso.me", + "https://breezewiki.nadeko.net", + "https://fan.blitzw.in" + ], + "imgur": { + "enabled": true, + "redirectType": "main_frame", + "unsupportedUrls": "bypass", + "frontend": "rimgo", + "instance": "public", + "redirectOnlyInIncognito": false + }, + "rimgo": [ + "https://rimgo.pussthecat.org", + "https://ri.nadeko.net", + "https://rimgo.in.projectsegfau.lt", + "https://rimgo.us.projectsegfau.lt", + "https://rimgo.eu.projectsegfau.lt", + "https://rimgo.catsarch.com", + "https://rimgo.nohost.network", + "https://r.opnxng.com", + "https://imgur.fsky.io", + "https://rimgo.astrial.org", + "https://rimgo.canine.tools", + "https://rimgo.thebunny.zone", + "https://imgur.nerdvpn.de", + "https://rg.kuuro.net" + ], + "pinterest": { + "enabled": true, + "unsupportedUrls": "bypass", + "redirectType": "main_frame", + "frontend": "binternet", + "redirectOnlyInIncognito": false + }, + "binternet": [ + "https://bn.bloat.cat", + "https://binternet.darkness.services", + "https://binternet.revvy.de", + "https://binternet.lunar.icu", + "https://binternet.privacyredirect.com", + "https://binternet.4o1x5.dev", + "https://binternet.ducks.party", + "https://bn.opnxng.com", + "https://pin.blitzw.in", + "https://bn.kuuro.net" + ], + "painterest": ["https://pt.bloat.cat"], + "soundcloud": { + "enabled": true, + "redirectType": "main_frame", + "frontend": "soundcloak", + "unsupportedUrls": "bypass", + "redirectOnlyInIncognito": false + }, + "tuboSoundcloud": ["https://tubo.media"], + "soundcloak": [ + "https://sc.opnxng.com", + "https://sc.bloat.cat", + "https://sc.maid.zone", + "https://sc.kuuro.net", + "https://sc.tijn.dev", + "https://sc2.bloat.cat" + ], + "bandcamp": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "tent", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "tent": [ + "https://tent.sny.sh", + "https://tent.bloat.cat", + "https://tent.nbh.ax", + "https://tent.lab8.cz", + "https://tent.deep-swarm.xyz", + "https://tn.vern.cc", + "https://tn.maid.zone", + "https://tn.dc09.ru" + ], + "tekstowo": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "tekstoLibre", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "tekstoLibre": ["https://davilarek.github.io/TekstoLibre"], + "genius": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "dumb", + "instance": "public", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "dumb": [ + "https://dumb.lunar.icu", + "https://dumb.ducks.party", + "https://dumb.hyperreal.coffee", + "https://db.kuuro.net", + "https://lyr.dc09.ru" + ], + "intellectual": ["https://intellectual.insprill.net"], + "medium": { + "frontend": "scribe", + "enabled": true, + "unsupportedUrls": "bypass", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "scribe": [ + "https://scribe.rip", + "https://scribe.privacyredirect.com", + "https://scribe.r4fo.com", + "https://m.opnxng.com", + "https://scribe.nixnet.services" + ], + "libMedium": ["https://md.vern.cc"], + "small": ["https://small.bloat.cat"], + "freedium": ["https://freedium.cfd"], + "quora": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "quetre", + "instance": "public", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "quetre": [ + "https://quetre.iket.me", + "https://quetre.pussthecat.org", + "https://q.opnxng.com", + "https://quetre.lunar.icu", + "https://ask.habedieeh.re", + "https://quetre.ducks.party", + "https://quetre.drgns.space", + "https://qt.bloat.cat", + "https://quetre.franklyflawless.org", + "https://quetre.privacyredirect.com" + ], + "github": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "gothub", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "gothub": [], + "gitlab": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "laboratory", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "laboratory": ["https://lab.vern.cc"], + "stackOverflow": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "anonymousOverflow", + "instance": "public", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "anonymousOverflow": [ + "https://code.whatever.social", + "https://overflow.hostux.net", + "https://overflow.adminforge.de", + "https://overflow.lunar.icu", + "https://ao.owo.si", + "https://anonoverflow.frontendfriendly.xyz", + "https://ao.bloat.cat", + "https://anonoverflow.hyperreal.coffee", + "https://exchange.seitan-ayoub.lol" + ], + "reuters": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "neuters", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "neuters": ["https://neuters.de"], + "snopes": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "suds", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "suds": ["https://sd.vern.cc"], + "ifunny": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "unfunny", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "unfunny": ["https://uf.vern.cc"], + "tenor": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "soprano", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "soprano": ["https://sp.vern.cc"], + "knowyourmeme": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "meme", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "meme": ["https://mm.vern.cc"], + "urbanDictionary": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "ruralDictionary", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "ruralDictionary": [ + "https://ruraldictionary.franklyflawless.org", + "https://rd.thirtysix.pw", + "https://rd.bloat.cat" + ], + "goodreads": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "biblioReads", + "instance": "public", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "biblioReads": [ + "https://biblioreads.lunar.icu", + "https://biblioreads.eu.org", + "https://read.seitan-ayoub.lol", + "https://biblioreads.ducks.party", + "https://biblioreads.privacyredirect.com", + "https://br.bloat.cat", + "https://biblioreads.franklyflawless.org" + ], + "wolframAlpha": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "wolfreeAlpha", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "wolfreeAlpha": [], + "instructables": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "structables", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "structables": ["https://structables.private.coffee"], + "destructables": ["https://ds.vern.cc"], + "indestructables": ["https://indestructables.private.coffee"], + "wikipedia": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "wikiless", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "wikiless": [], + "wikimore": ["https://wikimore.private.coffee"], + "waybackMachine": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "waybackClassic", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "waybackClassic": ["https://wayback-classic.net"], + "pastebin": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "pasted", + "instance": "public", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "pasted": ["https://pasted.drakeerv.com"], + "search": { + "enabled": false, + "frontend": "searxng", + "unsupportedUrls": "bypass", + "redirectGoogle": false, + "instance": "public", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "searxng": ["https://nyc1.sx.ggtyler.dev"], + "searx": [], + "whoogle": [], + "librey": [], + "4get": ["https://4get.ca"], + "websurfx": ["https://alamin655-spacex.hf.space"], + "translate": { + "enabled": true, + "frontend": "simplyTranslate", + "unsupportedUrls": "bypass", + "instance": "public", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "simplyTranslate": [ + "https://simplytranslate.org", + "https://simplytranslate.ducks.party", + "https://st.adast.dk" + ], + "mozhi": ["https://mozhi.aryak.me"], + "libreTranslate": ["https://libretranslate.com"], + "translite": ["https://tl.bloat.cat"], + "maps": { + "redirectType": "main_frame", + "enabled": false, + "frontend": "osm", + "unsupportedUrls": "bypass", + "redirectOnlyInIncognito": false + }, + "osm": ["https://www.openstreetmap.org"], + "meet": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "jitsi", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "jitsi": [], + "sendFiles": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "send", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "send": [], + "textStorage": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "privateBin", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "privateBin": [], + "pasty": ["https://pasty.lus.pm"], + "office": { + "enabled": false, + "unsupportedUrls": "bypass", + "frontend": "cryptPad", + "redirectOnlyInIncognito": false + }, + "cryptPad": ["https://cryptpad.org"], + "ultimateGuitar": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "freetar", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "freetar": ["https://freetar.de"], + "baiduTieba": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "ratAintTieba", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "ratAintTieba": ["https://rat.fis.land"], + "threads": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "shoelace", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "shoelace": ["https://shoelace.mint.lgbt"], + "deviantArt": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "skunkyArt", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "skunkyArt": [ + "https://skunky.bloat.cat", + "https://da.opnxng.com", + "https://sa.dc09.ru", + "https://art.bloat.cat", + "https://skunkyart.lumaeris.com" + ], + "geeksForGeeks": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "nerdsForNerds", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "nerdsForNerds": ["https://nn.vern.cc"], + "ducksForDucks": ["https://ducksforducks.private.coffee"], + "coub": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "koub", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "koub": ["https://koub2.bloat.cat", "https://koub.bloat.cat"], + "chefkoch": { + "enabled": true, + "unsupportedUrls": "bypass", + "frontend": "gocook", + "redirectOnlyInIncognito": false, + "redirectType": "main_frame" + }, + "gocook": ["https://cook.adminforge.de"], + "exceptions": { + "url": [], + "regex": [] + }, + "theme": "detect", + "popupServices": [ + "youtube", + "reddit", + "translate", + "maps", + "stackOverflow", + "youtubeMusic", + "twitter", + "bluesky", + "pinterest" + ], + "fetchInstances": "github", + "redirectOnlyInIncognito": false, + "troddit": ["https://www.troddit.com"], + "ultimateTab": ["https://ultimate-tab.com"] + } +} diff --git a/home/guz/apps.nix b/home/guz/apps.nix index 8a76208..ee61ea5 100644 --- a/home/guz/apps.nix +++ b/home/guz/apps.nix @@ -35,9 +35,6 @@ # 3D modeling "net.blockbench.Blockbench" "org.blender.Blender" - - # For sites that are incompatible with qutebrowser - "io.gitlab.librewolf-community" ]; services.flatpak.overrides = { "net.blockbench.Blockbench" = {Context.sockets = ["x11"];}; diff --git a/home/guz/browser.nix b/home/guz/browser.nix index bb2d630..d6326e0 100644 --- a/home/guz/browser.nix +++ b/home/guz/browser.nix @@ -1,43 +1,53 @@ { - self, config, + lib, + osConfig, ... }: { - programs.qutebrowser.profiles = let - programmingSearchEngines = { - # Languages - go = "https://pkg.go.dev/search?q={}"; - - # Resources - mdn = "https://developer.mozilla.org/en-US/search?q={}"; - }; - in rec { - work = { - settings = { - colors.tabs.selected.even.bg = "#74C7EC"; # Catppuccin's Sapphire - colors.tabs.selected.odd.bg = "#74C7EC"; # Catppuccin's Sapphire - colors.tabs.pinned.selected.even.bg = "#74C7EC"; # Catppuccin's Sapphire - colors.tabs.pinned.selected.odd.bg = "#74C7EC"; # Catppuccin's Sapphire + programs.zen-browser = { + profiles."default" = { + containers = { + Job = { + color = "green"; + icon = "briefcase"; + id = 3; + }; + }; + # modsForce = true; + # mods = let + # store = inputs.zen-theme-store; + # in { + # "0c3d77bf-44fc-47a6-a183-39205dfa5f7e" = "${store}/themes/0c3d77bf-44fc-47a6-a183-39205dfa5f7e/theme.json"; + # "c8d9e6e6-e702-4e15-8972-3596e57cf398" = pkgs.fetchurl { + # url = "https://raw.githubusercontent.com/zen-browser/theme-store/refs/heads/main/themes/c8d9e6e6-e702-4e15-8972-3596e57cf398/theme.json"; + # hash = "sha256-v6VfUwdz01it0anDwwPcCSVufWCybue8CsPBd8X9KT0="; + # }; + # }; + spaces = let + containers = config.programs.zen-browser.profiles."default".containers; + in { + "Work2" = { + id = "1ea280f4-e428-4273-ace1-ad4f64a00cf5"; + icon = "chrome://browser/skin/zen-icons/selectable/star.svg"; + container = containers."Work".id; + position = 3000; + }; + "Work3" = { + id = "2a5a1ca3-66df-4194-8ff9-63d0abb8eaae"; + icon = "chrome://browser/skin/zen-icons/selectable/sun.svg"; + container = containers."Work".id; + position = 4000; + }; + "Job" = lib.mkIf (osConfig.context.job) { + id = "d7a663aa-3818-4ae7-b4b1-3d12a76d9c60"; + icon = "chrome://browser/skin/zen-icons/selectable/planet.svg"; + container = containers."Job".id; + position = 4500; + }; }; - searchEngines = programmingSearchEngines; - }; - work-2 = work; - work-3 = work; - work-video = work; - work-games = { - settings = work.settings; - searchEngines = - { - mod = "https://modrinth.com/mods?q={}"; - rcp = "https://modrinth.com/resourcepacks?q={}"; - dtp = "https://modrinth.com/datapacks?q={}"; - shader = "https://modrinth.com/shaders?q={}"; - modpack = "https://modrinth.com/modpacks?q={}"; - plugins = "https://modrinth.com/plugins?q={}"; - } - // work.searchEngines; }; }; + # The *state version* indicates which default # settings are in effect and will therefore help avoid breaking # program configurations. Switching to a higher state version diff --git a/modules/home-manager/zen-browser/default.nix b/modules/home-manager/zen-browser/default.nix new file mode 100644 index 0000000..64711e1 --- /dev/null +++ b/modules/home-manager/zen-browser/default.nix @@ -0,0 +1,190 @@ +{ + config, + inputs, + lib, + ... +}: +with lib; let + cfg = config.programs.zen-browser; + configDir = "${config.home.homeDirectory}/.zen"; + + # INFO: Read default shortcuts and transform them to the same attrsOf submodule structure. + defaultShortcuts = pipe (with builtins; (fromJSON (readFile ./default_shortcuts.json)).shortcuts) [ + (map (v: + nameValuePair ( + # HACK: Since some of the default shortcuts have a null ID, we create + # a ID with null + group + (key or keycode). This ID will not be used + # in the final JSON file, and is just here since Nix can't have + # multiple attributes with the same name. + if isNull v.id + then "${toString v.id}-${v.action}-${v.group}-${ + if v?key + then v.key + else v.keycode + }" + else v.id + ) + v)) + listToAttrs + ]; +in { + imports = [inputs.zen-browser.homeModules.twilight]; + options.programs.zen-browser = { + profiles = mkOption { + type = with types; + attrsOf (submodule ({...}: { + options = { + shortcutsForce = mkEnableOption ""; + shortcuts = mkOption { + type = attrsOf (submodule ({ + config, + name, + ... + }: let + default = defaultShortcuts.${name}; + in { + options = { + id = mkOption { + type = nullOr str; + default = name; + }; + key = mkOption { + type = nullOr str; + default = optionalString (config.keycode == "") default.key; + apply = v: + if isNull v + then "" + else v; + }; + keycode = mkOption { + type = nullOr str; + default = optionalString (config.key == "") default.keycode; + apply = v: + if isNull v + then "" + else v; + }; + group = mkOption { + type = enum (lib.unique (mapAttrsToList (_: s: s.group) defaultShortcuts)); + default = default.group; + }; + l10nId = mkOption { + type = enum (lib.unique (mapAttrsToList (_: s: s.l10nId) defaultShortcuts)); + default = default.l10nId; + }; + modifiers = { + control = mkEnableOption ""; + alt = mkEnableOption ""; + shift = mkEnableOption ""; + meta = mkEnableOption ""; + accel = mkEnableOption ""; + }; + action = mkOption { + type = enum (lib.unique (mapAttrsToList (_: s: s.action) defaultShortcuts)); + default = default.action; + }; + disabled = mkOption { + type = bool; + default = default.disabled; + }; + reserved = mkOption { + type = bool; + default = default.reserved; + }; + internal = mkOption { + type = bool; + default = default.internal; + }; + }; + })); + default = {}; + }; + # FIXME: Zen does not update zen-themes.css + # modsForce = mkEnableOption ""; + # mods = mkOption { + # type = attrsOf ( + # either + # path + # (submodule ({name, ...}: { + # options = { + # id = mkOption { + # type = str; + # default = name; + # }; + # name = mkOption { + # type = str; + # }; + # description = mkOption { + # type = str; + # default = ""; + # }; + # homepage = mkOption { + # type = str; + # default = ""; + # }; + # style = mkOption { + # type = str; + # }; + # readme = mkOption { + # type = str; + # default = ""; + # }; + # image = mkOption { + # type = str; + # default = ""; + # }; + # author = mkOption { + # type = str; + # default = ""; + # }; + # version = mkOption { + # type = str; + # default = ""; + # }; + # tags = mkOption { + # type = listOf str; + # default = []; + # }; + # createdAt = mkOption { + # type = str; + # default = ""; + # }; + # updatedAt = mkOption { + # type = str; + # default = ""; + # }; + # enabled = mkOption { + # type = bool; + # default = true; + # }; + # }; + # })) + # ); + # apply = with builtins; + # v: + # mapAttrs (n: v: + # if (isPath v || isStringLike v) + # then fromJSON (readFile v) + # else v) + # v; + # default = {}; + # }; + }; + })); + }; + }; + config = mkIf cfg.enable { + home.file = + concatMapAttrs (profileName: profile: { + "${configDir}/${profileName}/zen-keyboard-shortcuts.json" = mkIf (profile.shortcuts != {}) { + text = builtins.toJSON {shortcuts = mapAttrsToList (_: v: v) (defaultShortcuts // profile.shortcuts);}; + force = profile.shortcutsForce; + }; + # "${configDir}/${profileName}/zen-themes.json" = mkIf (profile.mods != {}) { + # text = builtins.toJSON profile.mods; + # force = profile.modsForce; + # }; + }) + cfg.profiles; + }; +} diff --git a/modules/home-manager/zen-browser/default_shortcuts.json b/modules/home-manager/zen-browser/default_shortcuts.json new file mode 100644 index 0000000..d15f8f1 --- /dev/null +++ b/modules/home-manager/zen-browser/default_shortcuts.json @@ -0,0 +1,2109 @@ +{ + "shortcuts": [ + { + "id": "key_wrToggleCaptureSequenceCmd", + "key": "^", + "keycode": null, + "group": "other", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "wrToggleCaptureSequenceCmd", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_wrCaptureCmd", + "key": "#", + "keycode": null, + "group": "other", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "wrCaptureCmd", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_selectLastTab", + "key": "9", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": null, + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": false + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_selectTab8", + "key": "8", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": null, + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": false + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_selectTab7", + "key": "7", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": null, + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": false + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_selectTab6", + "key": "6", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": null, + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": false + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_selectTab5", + "key": "5", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": null, + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": false + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_selectTab4", + "key": "4", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": null, + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": false + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_selectTab3", + "key": "3", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": null, + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": false + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_selectTab2", + "key": "2", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": null, + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": false + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_selectTab1", + "key": "1", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": null, + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": false + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_undoCloseWindow", + "key": "n", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": "zen-window-new-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "History:UndoCloseWindow", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_restoreLastClosedTabOrWindowOrSession", + "key": "t", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": "zen-restore-last-closed-tab-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "History:RestoreLastClosedTabOrWindowOrSession", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_quitApplication", + "key": "q", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": "zen-quit-app-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_quitApplication", + "disabled": false, + "reserved": true, + "internal": false + }, + { + "id": "key_sanitize", + "keycode": "VK_DELETE", + "group": "other", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "Tools:Sanitize", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_screenshot", + "key": "s", + "keycode": null, + "group": "mediaAndDisplay", + "l10nId": "zen-screenshot-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "Browser:Screenshot", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_privatebrowsing", + "key": "p", + "keycode": null, + "group": "navigation", + "l10nId": "zen-private-browsing-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "Tools:PrivateBrowsing", + "disabled": false, + "reserved": true, + "internal": false + }, + { + "id": "key_switchTextDirection", + "key": "x", + "keycode": null, + "group": "mediaAndDisplay", + "l10nId": "zen-bidi-switch-direction-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "cmd_switchTextDirection", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_showAllTabs", + "keycode": "VK_TAB", + "group": "other", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": null, + "key": "", + "keycode": null, + "group": "other", + "l10nId": "zen-full-zoom-reset-shortcut-alt", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_fullZoomReset", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_fullZoomReset", + "key": "0", + "keycode": null, + "group": "mediaAndDisplay", + "l10nId": "zen-full-zoom-reset-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_fullZoomReset", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": null, + "key": "", + "keycode": null, + "group": "other", + "l10nId": "zen-full-zoom-enlarge-shortcut-alt2", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_fullZoomEnlarge", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": null, + "key": "=", + "keycode": null, + "group": "other", + "l10nId": "zen-full-zoom-enlarge-shortcut-alt", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_fullZoomEnlarge", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_fullZoomEnlarge", + "key": "+", + "keycode": null, + "group": "mediaAndDisplay", + "l10nId": "zen-full-zoom-enlarge-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_fullZoomEnlarge", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": null, + "key": "", + "keycode": null, + "group": "other", + "l10nId": "zen-full-zoom-reduce-shortcut-alt-b", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_fullZoomReduce", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": null, + "key": "_", + "keycode": null, + "group": "other", + "l10nId": "zen-full-zoom-reduce-shortcut-alt-a", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_fullZoomReduce", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_fullZoomReduce", + "key": "-", + "keycode": null, + "group": "mediaAndDisplay", + "l10nId": "zen-full-zoom-reduce-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_fullZoomReduce", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_gotoHistory", + "key": "h", + "keycode": null, + "group": "navigation", + "l10nId": "zen-history-sidebar-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "toggleSidebarKb", + "key": "z", + "keycode": null, + "group": "other", + "l10nId": "zen-toggle-sidebar-shortcut", + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "viewGenaiChatSidebarKb", + "key": "x", + "keycode": null, + "group": "other", + "l10nId": "zen-ai-chatbot-sidebar-shortcut", + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_stop", + "keycode": "VK_ESCAPE", + "group": "other", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "Browser:Stop", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "viewBookmarksToolbarKb", + "key": "b", + "keycode": null, + "group": "other", + "l10nId": "zen-bookmark-show-toolbar-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "viewBookmarksSidebarKb", + "key": "b", + "keycode": null, + "group": "other", + "l10nId": "zen-bookmark-show-sidebar-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "manBookmarkKb", + "key": "o", + "keycode": null, + "group": "historyAndBookmarks", + "l10nId": "zen-bookmark-show-library-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "Browser:ShowAllBookmarks", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "bookmarkAllTabsKb", + "key": "d", + "keycode": null, + "group": "historyAndBookmarks", + "l10nId": "zen-bookmark-this-page-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "addBookmarkAsKb", + "key": "d", + "keycode": null, + "group": "historyAndBookmarks", + "l10nId": "zen-bookmark-this-page-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "Browser:AddBookmarkAs", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": null, + "keycode": "VK_F3", + "group": "other", + "l10nId": "zen-search-find-again-shortcut-prev", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": false + }, + "action": "cmd_findPrevious", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": null, + "keycode": "VK_F3", + "group": "other", + "l10nId": "zen-search-find-again-shortcut-alt", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "cmd_findAgain", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_findPrevious", + "key": "g", + "keycode": null, + "group": "searchAndFind", + "l10nId": "zen-search-find-again-shortcut-prev", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "cmd_findPrevious", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_findAgain", + "key": "g", + "keycode": null, + "group": "searchAndFind", + "l10nId": "zen-search-find-again-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_findAgain", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_find", + "key": "f", + "keycode": null, + "group": "searchAndFind", + "l10nId": "zen-find-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_find", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_viewInfo", + "key": "i", + "keycode": null, + "group": "pageOperations", + "l10nId": "zen-page-info-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "View:PageInfo", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_viewSource", + "key": "u", + "keycode": null, + "group": "pageOperations", + "l10nId": "zen-page-source-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "View:PageSource", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_aboutProcesses", + "keycode": "VK_ESCAPE", + "group": "other", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": false + }, + "action": "View:AboutProcesses", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_reload_skip_cache", + "key": "r", + "keycode": null, + "group": "navigation", + "l10nId": "zen-nav-reload-shortcut-skip-cache", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "Browser:ReloadSkipCache", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_reload", + "key": "r", + "keycode": null, + "group": "navigation", + "l10nId": "zen-nav-reload-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "Browser:Reload", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": null, + "key": "}", + "keycode": null, + "group": "other", + "l10nId": "zen-picture-in-picture-toggle-shortcut-alt", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "View:PictureInPicture", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_togglePictureInPicture", + "key": "]", + "keycode": null, + "group": "pageOperations", + "l10nId": "zen-picture-in-picture-toggle-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "View:PictureInPicture", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_toggleReaderMode", + "key": "r", + "keycode": null, + "group": "pageOperations", + "l10nId": "zen-reader-mode-toggle-shortcut-other", + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": true + }, + "action": "View:ReaderView", + "disabled": true, + "reserved": false, + "internal": false + }, + { + "id": "key_exitFullScreen", + "keycode": "VK_F11", + "group": "other", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "View:FullScreen", + "disabled": true, + "reserved": true, + "internal": false + }, + { + "id": "key_enterFullScreen", + "keycode": "VK_F11", + "group": "other", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "View:FullScreen", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": null, + "keycode": "VK_F5", + "group": "other", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "Browser:ReloadSkipCache", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "showAllHistoryKb", + "key": "h", + "keycode": null, + "group": "historyAndBookmarks", + "l10nId": "zen-history-show-all-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "Browser:ShowAllHistory", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": null, + "keycode": "VK_F5", + "group": "other", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "Browser:Reload", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "goHome", + "keycode": "VK_HOME", + "group": "navigation", + "l10nId": null, + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": false + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "goForwardKb2", + "key": "]", + "keycode": null, + "group": "navigation", + "l10nId": "zen-nav-fwd-shortcut-alt", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "Browser:Forward", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "goBackKb2", + "key": "[", + "keycode": null, + "group": "navigation", + "l10nId": "zen-nav-back-shortcut-alt", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "Browser:Back", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "goForwardKb", + "keycode": "VK_RIGHT", + "group": "navigation", + "l10nId": null, + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": false + }, + "action": "Browser:Forward", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "goBackKb", + "keycode": "VK_LEFT", + "group": "navigation", + "l10nId": null, + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": false + }, + "action": "Browser:Back", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": null, + "keycode": "VK_BACK", + "group": "other", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": false + }, + "action": "cmd_handleShiftBackspace", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": null, + "keycode": "VK_BACK", + "group": "other", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "cmd_handleBackspace", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_selectAll", + "key": "a", + "keycode": null, + "group": "other", + "l10nId": "zen-text-action-select-all-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": true + }, + { + "id": "key_delete", + "keycode": "VK_DELETE", + "group": "other", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "cmd_delete", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_paste", + "key": "v", + "keycode": null, + "group": "other", + "l10nId": "zen-text-action-paste-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": true + }, + { + "id": "key_copy", + "key": "c", + "keycode": null, + "group": "other", + "l10nId": "zen-text-action-copy-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": true + }, + { + "id": "key_cut", + "key": "x", + "keycode": null, + "group": "other", + "l10nId": "zen-text-action-cut-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": true + }, + { + "id": "key_redo", + "key": "z", + "keycode": null, + "group": "other", + "l10nId": "zen-text-action-undo-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": true + }, + { + "id": "key_undo", + "key": "z", + "keycode": null, + "group": "other", + "l10nId": "zen-text-action-undo-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": true + }, + { + "id": "key_toggleMute", + "key": "m", + "keycode": null, + "group": "mediaAndDisplay", + "l10nId": "zen-mute-toggle-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_toggleMute", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_closeWindow", + "key": "w", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": "zen-close-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "cmd_closeWindow", + "disabled": false, + "reserved": true, + "internal": false + }, + { + "id": "key_close", + "key": "w", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": "zen-close-tab-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_close", + "disabled": false, + "reserved": true, + "internal": false + }, + { + "id": "printKb", + "key": "p", + "keycode": null, + "group": "pageOperations", + "l10nId": "zen-print-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_print", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_savePage", + "key": "s", + "keycode": null, + "group": "pageOperations", + "l10nId": "zen-save-page-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "Browser:SavePage", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "openFileKb", + "key": "o", + "keycode": null, + "group": "other", + "l10nId": "zen-file-open-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "Browser:OpenFile", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_openAddons", + "key": "a", + "keycode": null, + "group": "other", + "l10nId": "zen-addons-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "Tools:Addons", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_openDownloads", + "key": "y", + "keycode": null, + "group": "other", + "l10nId": "zen-downloads-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "Tools:Downloads", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_search2", + "key": "j", + "keycode": null, + "group": "searchAndFind", + "l10nId": "zen-search-focus-shortcut-alt", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "Tools:Search", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_search", + "key": "k", + "keycode": null, + "group": "searchAndFind", + "l10nId": "zen-search-focus-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "Tools:Search", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "focusURLBar2", + "key": "d", + "keycode": null, + "group": "pageOperations", + "l10nId": "zen-location-open-shortcut-alt", + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": false + }, + "action": "Browser:OpenLocation", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "focusURLBar", + "key": "l", + "keycode": null, + "group": "pageOperations", + "l10nId": "zen-location-open-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "Browser:OpenLocation", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_newNavigatorTab", + "key": "t", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": "zen-tab-new-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_newNavigatorTabNoEvent", + "disabled": false, + "reserved": true, + "internal": false + }, + { + "id": "key_newNavigator", + "key": "n", + "keycode": null, + "group": "windowAndTabManagement", + "l10nId": "zen-window-new-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_newNavigator", + "disabled": false, + "reserved": true, + "internal": false + }, + { + "id": "zen-compact-mode-toggle", + "key": "c", + "keycode": "", + "group": "zen-compact-mode", + "l10nId": "zen-compact-mode-shortcut-toggle", + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_zenCompactModeToggle", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-compact-mode-show-sidebar", + "key": "s", + "keycode": "", + "group": "zen-compact-mode", + "l10nId": "zen-compact-mode-shortcut-show-sidebar", + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_zenCompactModeShowSidebar", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-compact-mode-show-toolbar", + "key": "t", + "keycode": "", + "group": "zen-compact-mode", + "l10nId": "zen-compact-mode-shortcut-show-toolbar", + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_zenCompactModeShowToolbar", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-workspace-switch-10", + "key": "", + "keycode": "", + "group": "zen-workspace", + "l10nId": "zen-workspace-shortcut-switch-10", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "cmd_zenWorkspaceSwitch10", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-workspace-switch-9", + "key": "", + "keycode": "", + "group": "zen-workspace", + "l10nId": "zen-workspace-shortcut-switch-9", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "cmd_zenWorkspaceSwitch9", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-workspace-switch-8", + "key": "", + "keycode": "", + "group": "zen-workspace", + "l10nId": "zen-workspace-shortcut-switch-8", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "cmd_zenWorkspaceSwitch8", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-workspace-switch-7", + "key": "", + "keycode": "", + "group": "zen-workspace", + "l10nId": "zen-workspace-shortcut-switch-7", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "cmd_zenWorkspaceSwitch7", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-workspace-switch-6", + "key": "", + "keycode": "", + "group": "zen-workspace", + "l10nId": "zen-workspace-shortcut-switch-6", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "cmd_zenWorkspaceSwitch6", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-workspace-switch-5", + "key": "", + "keycode": "", + "group": "zen-workspace", + "l10nId": "zen-workspace-shortcut-switch-5", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "cmd_zenWorkspaceSwitch5", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-workspace-switch-4", + "key": "", + "keycode": "", + "group": "zen-workspace", + "l10nId": "zen-workspace-shortcut-switch-4", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "cmd_zenWorkspaceSwitch4", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-workspace-switch-3", + "key": "", + "keycode": "", + "group": "zen-workspace", + "l10nId": "zen-workspace-shortcut-switch-3", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "cmd_zenWorkspaceSwitch3", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-workspace-switch-2", + "key": "", + "keycode": "", + "group": "zen-workspace", + "l10nId": "zen-workspace-shortcut-switch-2", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "cmd_zenWorkspaceSwitch2", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-workspace-switch-1", + "key": "", + "keycode": "", + "group": "zen-workspace", + "l10nId": "zen-workspace-shortcut-switch-1", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "cmd_zenWorkspaceSwitch1", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-workspace-forward", + "key": "e", + "keycode": "", + "group": "zen-workspace", + "l10nId": "zen-workspace-shortcut-forward", + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_zenWorkspaceForward", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-workspace-backward", + "key": "q", + "keycode": "", + "group": "zen-workspace", + "l10nId": "zen-workspace-shortcut-backward", + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_zenWorkspaceBackward", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-split-view-grid", + "key": "g", + "keycode": "", + "group": "zen-split-view", + "l10nId": "zen-split-view-shortcut-grid", + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_zenSplitViewGrid", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-split-view-vertical", + "key": "v", + "keycode": "", + "group": "zen-split-view", + "l10nId": "zen-split-view-shortcut-vertical", + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_zenSplitViewVertical", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-split-view-horizontal", + "key": "h", + "keycode": "", + "group": "zen-split-view", + "l10nId": "zen-split-view-shortcut-horizontal", + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_zenSplitViewHorizontal", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-split-view-unsplit", + "key": "u", + "keycode": "", + "group": "zen-split-view", + "l10nId": "zen-split-view-shortcut-unsplit", + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": true + }, + "action": "cmd_zenSplitViewUnsplit", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-pinned-tab-reset-shortcut", + "key": "", + "keycode": "", + "group": "zen-other", + "l10nId": "zen-pinned-tab-shortcut-reset", + "modifiers": { + "control": false, + "alt": false, + "shift": false, + "meta": false, + "accel": false + }, + "action": "cmd_zenPinnedTabReset", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-toggle-sidebar", + "key": "b", + "keycode": "", + "group": "zen-other", + "l10nId": "zen-sidebar-shortcut-toggle", + "modifiers": { + "control": false, + "alt": true, + "shift": false, + "meta": false, + "accel": false + }, + "action": "cmd_zenToggleSidebar", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-copy-url", + "key": "c", + "keycode": "", + "group": "zen-other", + "l10nId": "zen-text-action-copy-url-shortcut", + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": "cmd_zenCopyCurrentURL", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "zen-copy-url-markdown", + "key": "c", + "keycode": "", + "group": "zen-other", + "l10nId": "zen-text-action-copy-url-markdown-shortcut", + "modifiers": { + "control": false, + "alt": true, + "shift": true, + "meta": false, + "accel": true + }, + "action": "cmd_zenCopyCurrentURLMarkdown", + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_accessibility", + "keycode": "VK_F12", + "group": "devTools", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": false + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_dom", + "key": "w", + "keycode": null, + "group": "devTools", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_storage", + "keycode": "VK_F9", + "group": "devTools", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": false + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_performance", + "keycode": "VK_F5", + "group": "devTools", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": false + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_styleeditor", + "keycode": "VK_F7", + "group": "devTools", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": false + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_netmonitor", + "key": "e", + "keycode": null, + "group": "devTools", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_jsdebugger", + "key": "z", + "keycode": null, + "group": "devTools", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_webconsole", + "key": "k", + "keycode": null, + "group": "devTools", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_inspector", + "key": "l", + "keycode": null, + "group": "devTools", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_responsiveDesignMode", + "key": "m", + "keycode": null, + "group": "devTools", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_browserConsole", + "key": "j", + "keycode": null, + "group": "devTools", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_browserToolbox", + "key": "i", + "keycode": null, + "group": "devTools", + "l10nId": null, + "modifiers": { + "control": false, + "alt": true, + "shift": true, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + }, + { + "id": "key_toggleToolbox", + "key": "i", + "keycode": null, + "group": "devTools", + "l10nId": null, + "modifiers": { + "control": false, + "alt": false, + "shift": true, + "meta": false, + "accel": true + }, + "action": null, + "disabled": false, + "reserved": false, + "internal": false + } + ] +} +