A Better Firefox Experience

Table of Contents

Screenshot of my Firefox Setup

Firefox is my Including its derivatives Pale Moon and Waterfox Internet browser. I’ve stuck with it for a long time. Firefox’s market share has dropped considerably, but that doesn’t Chromium and by extension, Google Chrome may be headed down the path of Internet Explorer. Here’s my take on a better Firefox experience. This list includes my favorite addons and interface My workflow changes every so often, so this list might change with time.

Step 1: Hide the tab bar

Wait what? Yes. The tab bar interface is somewhat of an anti-pattern. It’s extremely distracting, unproductive, and usually results in 200+ open tabs. In your Firefox profile directory create a folder named chrome, then inside that folder create the file userChrome.css and paste the following code Recent versions of Firefox will need toolkit.legacyUserProfileCustomizations.stylesheets set to true in the about:config.

css
@-moz-document url("chrome://browser/content/browser.xul") {
  #TabsToolbar {
    visibility: collapse !important;
    margin-bottom: 21px !important;
  }
}

On Firefox 69 and later the following changes are needed.

diff
@@ -1,4 +1,4 @@
-@-moz-document url("chrome://browser/content/browser.xul") {
+@-moz-document url("chrome://browser/content/browser.xhtml") {
   #TabsToolbar {
     visibility: collapse !important;
     margin-bottom: 21px !important;

Clueless about the location of your Firefox profile? Read this helpful guide. Good, onto the next step.

Step 2: Install Sidebery

Sidebery are what tabs should be. Your tabs will now be displayed in a sidebar and assembled in a Honourable mention: Tree Style Tab like format. Every link opened in a new tab will become a branch from the root. Take a look at the image below.

Tree Style Tabs

See how the tabs naturally form many branches related to the root topic Elm? This is a visually succinct and useful way of displaying tabs. Let’s make that new tab linking behavior the default.

Install the Open Link With New Tab addon and set it to open a new tab only when the target link is different from the website you are currently browsing. This should be the second option in its settings. The tree style tabs can now build up with very little friction.

Step 4: Make DuckDuckGo the Default

Congratulations, you now have direct access to almost every Or use the Add Custom Search Engine addon to make custom keywords or “bangs” and skip big search engines entirely. engine on the planet. Bang syntax allows you to search most if not all search engines directly from DuckDuckGo.

Step 5: Bring back RSS

RSS is too important to deprecate. Install RSS Preview to bring back one of Firefox’s most important features — knowing whether a website has a RSS Feed.

Step 6: Unload Inactive Tabs

Install Tab Unloader to unload tabs that are Apparently, Firefox 67.0 now suspends unused tabs. This will save lots of memory. It’s a clever addon that is smart enough to know that tabs with active content should not be considered inactive.

Step 7: Destroy Resource Abuse with uBlock Origin

Resource abuse means ads, banners, popups, and all manner of relentless abuse websites shove down the tube. uBlock Origin is a necessary addon for internet browsing sanity.

Step 8: Disable JavaScript on Demand

Disable JavaScript is a wonderful addon that allows you to disable JavaScript on a per site NoScript for the adepts among us. This makes a lot of sites with lethal and browser crashing JavaScript behave.

Step 9: Tab Sessions

Tab Session Manager is an addon that extends the tab saving functionality of Firefox. It can serve as a simple way to backup browsing sessions.

Tab Search is a good addition that allows you to search all open tabs. For persons with an insane amount of tabs, this will save you much pain and frustration.

Step 11: Disable URL Bar Suggestions

Suggestions are nice until they aren’t. To disable this annoyance, we’ll visit the about:config The about:config page is a more efficient way of changing multiple preferences in Firefox. in Firefox and set the following preferences.

cfg
browser.urlbar.maxRichResults 0
browser.urlbar.suggest.history false
browser.urlbar.suggest.bookmark false
browser.urlbar.suggest.openpage false
browser.urlbar.suggest.searches false
browser.urlbar.searchSuggestionsChoice false
browser.urlbar.timesBeforeHidingSuggestionsHint 0
browser.search.suggest.enabled false

Then hide what’s left of the URL bar suggestions in chrome/userChrome.css.

css
/* Hide autocomplete results dropdown */
.urlbarView {
  display: none !important;
}

Firefox 75 introduces the Death by a thousand cuts. expanding Expanding
address bar Expanding address bar bar. You can disable it temporarily by setting the following preferences.

cfg
browser.urlbar.update1 false
browser.urlbar.update1.interventions false
browser.urlbar.update1.searchTips false
browser.urlbar.update1.view.stripHttps false
browser.urlbar.update2.expandTextOnFocus false

You can also opt to If you’re wondering where these css directives come from, visit chrome://browser/content/browser.xhtml and open the developer tools. the expanding effect permanently in chrome/userChrome.css.

css
/*
 * Reduce expanding urlbar.
 * Source: https://github.com/WesleyBranton/Remove-Firefox-Megabar#readme
 */
@-moz-document url(chrome://browser/content/browser.xhtml) {
  #urlbar[breakout][breakout-extend] > #urlbar-input-container,
  #urlbar-input-container {
    height: 26px !important;
    padding-block: 0px !important;
    padding-inline: 0px !important;
    transition: none !important;
    border-radius: var(--toolbarbutton-border-radius) !important;
  }

  #urlbar[breakout][breakout-extend] {
    top: calc((var(--urlbar-toolbar-height) - var(--urlbar-height)) / 2) !important;
    left: 0 !important;
    width: 100% !important;
  }

  #urlbar[breakout][breakout-extend] > #urlbar-input-container {
    border: 1px solid var(--toolbar-field-focus-border-color) !important;
  }

  #urlbar[breakout][breakout-extend][open] > #urlbar-input-container {
    border-bottom: 1px solid transparent !important;
    border-radius: var(--toolbarbutton-border-radius) var(--toolbarbutton-border-radius) 0 0 !important;
  }
}

Conclusion

There’s much more that can be added, but this is a good start to streamlining your Firefox browsing work flow.

23 January 2019 — Written
10 December 2022 — Updated
Thedro Neely — Creator
a-better-firefox-experience.md — Article

More Content

Openring

Web Ring

Comments

References

  1. https://thedroneely.com/git/
  2. https://thedroneely.com/
  3. https://thedroneely.com/posts/
  4. https://thedroneely.com/projects/
  5. https://thedroneely.com/about/
  6. https://thedroneely.com/contact/
  7. https://thedroneely.com/abstracts/
  8. https://ko-fi.com/thedroneely
  9. https://thedroneely.com/posts/a-better-firefox-experience/#step-1-hide-the-tab-bar
  10. https://thedroneely.com/posts/a-better-firefox-experience/#step-2-install-sidebery
  11. https://thedroneely.com/posts/a-better-firefox-experience/#step-3-open-links-in-a-new-tab
  12. https://thedroneely.com/posts/a-better-firefox-experience/#step-4-make-duckduckgo-the-default
  13. https://thedroneely.com/posts/a-better-firefox-experience/#step-5-bring-back-rss
  14. https://thedroneely.com/posts/a-better-firefox-experience/#step-6-unload-inactive-tabs
  15. https://thedroneely.com/posts/a-better-firefox-experience/#step-7-destroy-resource-abuse-with-ublock-origin
  16. https://thedroneely.com/posts/a-better-firefox-experience/#step-8-disable-javascript-on-demand
  17. https://thedroneely.com/posts/a-better-firefox-experience/#step-9-tab-sessions
  18. https://thedroneely.com/posts/a-better-firefox-experience/#step-10-tab-search
  19. https://thedroneely.com/posts/a-better-firefox-experience/#step-11-disable-url-bar-suggestions
  20. https://thedroneely.com/posts/a-better-firefox-experience/#conclusion
  21. https://thedroneely.com/tags/browsers/
  22. https://thedroneely.com/tags/firefox/
  23. https://thedroneely.com/tags/webdev/
  24. https://thedroneely.com/posts/a-better-firefox-experience/#isso-thread
  25. https://thedroneely.com/posts/rss.xml
  26. https://thedroneely.com/images/a-better-firefox-experience.png
  27. https://netmarketshare.com/
  28. http://kb.mozillazine.org/About:config
  29. https://thedroneely.com/posts/a-better-firefox-experience/#code-block-cde9fec
  30. https://thedroneely.com/posts/a-better-firefox-experience/#code-block-8fa6581
  31. http://kb.mozillazine.org/Profile_folder_-_Firefox
  32. https://addons.mozilla.org/en-US/firefox/addon/sidebery/
  33. https://addons.mozilla.org/en-US/firefox/addon/tree-style-tab/
  34. https://thedroneely.com/images/firefox-treestyle.png
  35. https://addons.mozilla.org/en-US/firefox/addon/open-link-with-new-tab/
  36. https://addons.mozilla.org/en-US/firefox/addon/add-custom-search-engine/
  37. https://duckduckgo.com/bang
  38. https://addons.mozilla.org/en-US/firefox/addon/rsspreview/
  39. https://addons.mozilla.org/en-US/firefox/addon/tab-unloader-we/
  40. https://www.mozilla.org/en-US/firefox/67.0/releasenotes/
  41. https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/
  42. https://addons.mozilla.org/en-US/firefox/addon/disable-javascript/
  43. https://addons.mozilla.org/en-US/firefox/addon/noscript/
  44. https://addons.mozilla.org/en-US/firefox/addon/tab-session-manager/
  45. https://addons.mozilla.org/en-US/firefox/addon/tab_search/
  46. https://thedroneely.com/posts/a-better-firefox-experience/#code-block-e7fae83
  47. https://thedroneely.com/posts/a-better-firefox-experience/#code-block-5c81d23
  48. https://thedroneely.com/images/firefox-75-urlbar.png
  49. https://thedroneely.com/posts/a-better-firefox-experience/#code-block-c0c71b8
  50. https://github.com/WesleyBranton/userChrome.css-Customizations
  51. https://thedroneely.com/posts/a-better-firefox-experience/#code-block-feec043
  52. https://www.thedroneely.com/posts/a-better-firefox-experience.md
  53. https://thedroneely.com/posts/website-auditing-tools/
  54. https://thedroneely.com/posts/site-updates-navigation/
  55. https://thedroneely.com/abstracts/the-fate-of-empires/
  56. https://git.sr.ht/~sircmpwn/openring
  57. https://drewdevault.com/2022/11/12/In-praise-of-Plan-9.html
  58. https://drewdevault.com/
  59. https://mxb.dev/blog/the-indieweb-for-everyone/
  60. https://mxb.dev/
  61. https://www.taniarascia.com/simplifying-drag-and-drop/
  62. https://www.taniarascia.com/
  63. https://thedroneely.com/posts/a-better-firefox-experience#step-1-hide-the-tab-bar
  64. https://thedroneely.com/posts/a-better-firefox-experience#step-2-install-sidebery
  65. https://thedroneely.com/posts/a-better-firefox-experience#step-3-open-links-in-a-new-tab
  66. https://thedroneely.com/posts/a-better-firefox-experience#step-4-make-duckduckgo-the-default
  67. https://thedroneely.com/posts/a-better-firefox-experience#step-5-bring-back-rss
  68. https://thedroneely.com/posts/a-better-firefox-experience#step-6-unload-inactive-tabs
  69. https://thedroneely.com/posts/a-better-firefox-experience#step-7-destroy-resource-abuse-with-ublock-origin
  70. https://thedroneely.com/posts/a-better-firefox-experience#step-8-disable-javascript-on-demand
  71. https://thedroneely.com/posts/a-better-firefox-experience#step-9-tab-sessions
  72. https://thedroneely.com/posts/a-better-firefox-experience#step-10-tab-search
  73. https://thedroneely.com/posts/a-better-firefox-experience#step-11-disable-url-bar-suggestions
  74. https://thedroneely.com/posts/a-better-firefox-experience#conclusion
  75. https://thedroneely.com/posts/a-better-firefox-experience#isso-thread
  76. https://thedroneely.com/posts/a-better-firefox-experience#code-block-cde9fec
  77. https://thedroneely.com/posts/a-better-firefox-experience#code-block-8fa6581
  78. https://thedroneely.com/posts/a-better-firefox-experience#code-block-e7fae83
  79. https://thedroneely.com/posts/a-better-firefox-experience#code-block-5c81d23
  80. https://thedroneely.com/posts/a-better-firefox-experience#code-block-c0c71b8
  81. https://thedroneely.com/posts/a-better-firefox-experience#code-block-feec043
  82. https://thedroneely.com/posts/headless-gpu-remote-acceleration/
  83. https://thedroneely.com/posts/writing-with-vale/
  84. https://thedroneely.com/projects/micro-blog/
  85. https://thedroneely.com/posts/cooking-and-baking-linux-distributions-in-nix/
  86. https://thedroneely.com/posts/nixos-pins-and-needles/
  87. https://drewdevault.com/2022/09/16/Open-source-matters.html
  88. https://mxb.dev/blog/make-free-stuff/
  89. https://thedroneely.com/sitemap.xml
  90. https://thedroneely.com/index.json
  91. https://thedroneely.com/resume/
  92. https://gitlab.com/tdro
  93. https://github.com/tdro
  94. https://codeberg.org/tdro
  95. https://thedroneely.com/analytics
  96. https://thedroneely.com/posts/a-better-firefox-experience#
  97. https://creativecommons.org/licenses/by-sa/2.0/
  98. https://thedroneely.com/git/thedroneely/thedroneely.com
  99. https://opensource.org/licenses/GPL-3.0
  100. https://www.thedroneely.com/
  101. https://thedroneely.com/posts/a-better-firefox-experience/#