From d79e97256cb01e33c47822859e171161352fb7c9 Mon Sep 17 00:00:00 2001 From: Preston Pan Date: Wed, 25 Mar 2026 20:06:26 -0700 Subject: add qtile configuration --- config/qutebrowser.org | 99 ++------------------------------------------------ 1 file changed, 3 insertions(+), 96 deletions(-) (limited to 'config/qutebrowser.org') diff --git a/config/qutebrowser.org b/config/qutebrowser.org index 2a3e180..da7dccb 100644 --- a/config/qutebrowser.org +++ b/config/qutebrowser.org @@ -5,101 +5,8 @@ #+auto_tangle: t * Configuration -** Imports -We start with imports: +This is my qutebrowser configuration, meant to be used with my [[file:./nix.org][NixOS Configuration]], and is extra configuration on top of what I have there. #+begin_src python :tangle ../nix/qutebrowser.py -from pathlib import Path -from urllib.parse import urlparse -# import catppuccin -#+end_src -We import pathlib to get our home directory. -** Theming -I am experimenting with many themes right now, and one of them is the [[https://github.com/gicrisf/qute-city-lights][city-lights]] theme. -Another one I have used is the [[https://github.com/catppuccin/catppuccin][catppuccin]] theme. -#+begin_src python :tangle config.py -# config.source('themes/qute-city-lights/city-lights-theme.py') -config.source('gruvbox.py') -#+end_src -** Variables -We need the location of the home directory. -#+begin_src python :tangle config.py -home = str(Path.home()) -#+end_src -** Fonts -We are using Fira Code for the font in all the non-webpage ui elements. -#+begin_src python :tangle config.py -c.fonts.hints = '14pt FiraCode Nerd Font' -c.fonts.keyhint = '14pt FiraCode Nerd Font' -c.fonts.prompts = '14pt FiraCode Nerd Font' -c.fonts.downloads = '14pt FiraCode Nerd Font' -c.fonts.statusbar = '14pt FiraCode Nerd Font' -c.fonts.contextmenu = '14pt FiraCode Nerd Font' -c.fonts.messages.info = '14pt FiraCode Nerd Font' -c.fonts.debug_console = '14pt FiraCode Nerd Font' -c.fonts.completion.entry = '14pt FiraCode Nerd Font' -c.fonts.completion.category = '14pt FiraCode Nerd Font' -c.fonts.tabs.selected = '14pt FiraCode Nerd Font' -c.fonts.tabs.unselected = '14pt FiraCode Nerd Font' -#+end_src -** Search Engine -We should set our default search engine to google because duckduckgo is useless, and -we should give other search engine bang options. -#+begin_src python :tangle config.py -c.url.searchengines = { - 'DEFAULT': 'https://google.com/search?hl=en&q={}', - '!a': 'https://www.amazon.com/s?k={}', - '!d': 'https://duckduckgo.com/?ia=web&q={}', - '!dd': 'https://thefreedictionary.com/{}', - '!e': 'https://www.ebay.com/sch/i.html?_nkw={}', - '!fb': 'https://www.facebook.com/s.php?q={}', - '!gh': 'https://github.com/search?o=desc&q={}&s=stars', - '!gist': 'https://gist.github.com/search?q={}', - '!gi': 'https://www.google.com/search?tbm=isch&q={}&tbs=imgo:1', - '!gn': 'https://news.google.com/search?q={}', - '!ig': 'https://www.instagram.com/explore/tags/{}', - '!m': 'https://www.google.com/maps/search/{}', - '!p': 'https://pry.sh/{}', - '!r': 'https://www.reddit.com/search?q={}', - '!sd': 'https://slickdeals.net/newsearch.php?q={}&searcharea=deals&searchin=first', - '!t': 'https://www.thesaurus.com/browse/{}', - '!tw': 'https://twitter.com/search?q={}', - '!w': 'https://en.wikipedia.org/wiki/{}', - '!yelp': 'https://www.yelp.com/search?find_desc={}', - '!yt': 'https://www.youtube.com/results?search_query={}' -} -#+end_src -** Start Page -Set the default start page to my own website. -#+begin_src python :tangle config.py -c.url.start_pages = ["file:///home/preston/website_html/index.html"] -c.url.default_page = "file:///home/preston/website_html/index.html" -#+end_src -** Keybindings -Now we define our keybindings for useful programs while browsing: -#+begin_src python :tangle config.py -config.bind('xm', 'hint links spawn mpv {hint-url}') -config.bind('xy', 'hint links spawn yt-dlp {hint-url} -o "~/videos/youtube/%(title)s.%(ext)s"') -config.bind('xr', 'hint links spawn bash -c "echo \'*** {hint-url}\' >> ~/org/elfeed.org"') -config.bind('xj', 'spawn bash -c "echo {url} >> ~/.config/qutebrowser/js_blacklist.txt"') -#+end_src -** Paywall Bypassing -Sometimes websites like the New York Times try to make money. I won't let that happen. -#+begin_src python :tangle config.py -with open(f"{home}/.config/qutebrowser/js_blacklist.txt") as f: - js_blacklist = f.read().splitlines() - -for item in js_blacklist: - domain = urlparse(item).netloc - config.set('content.javascript.enabled', False, f"*://{domain}/*") - config.set('content.javascript.enabled', False, f"*://www.{domain}/*") -#+end_src -** Misc. -Doing mundane things like setting the downloads directory to not use an upper case letter. -#+begin_src python :tangle config.py -c.downloads.location.directory = "~/Downloads" -#+end_src -** End of Config -#+begin_src python :tangle config.py -config.load_autoconfig() -# catppuccin.setup(c, 'mocha', False) +config.bind(",m", "spawn mpv {url}") +config.bind(",M", "hint links spawn mpv {hint-url}") #+end_src -- cgit v1.3