If you are using a tiling window manager, then having tabs in your GUI applications might be sub-par. Whenever there's redundant functionality the question arises: Which option should I pick? Additionally, the tab and menubar of modern browsers take up a lot of real estate. That's certainly good for the user who wants to see all their options. Personally, I prefer shortcuts and more screen real estate. If you're of a similar mindset, this short tutorial is for you.
NB: I have used this setup for the better part of 5 years now. If the past is any indication of the future, it'll continue to work without too much manual adaptations on your part.
Here's a demo of how the final setup looks like:
I use the i3 tiling window manager. It has excellent support for window and tab management. Additionally, I'm using rofi, a window switcher and application launcher. It is similar in functionality to dmenu. Using i3 and rofi, it is trivial to start applications, order them into workspaces in different layouts and later find them, again.
In the demo screenshot above, there are multiple FF windows open, some are tabbed (by the wm). On top, I'm assuming that I have many workspaces open and I forgot where the 'hackernews' window was. I ask rofi, it fuzzy auto-completes the query. If I hit 'enter', it would take me to the workspace and bring the window to the foreground.
To set it up, follow these steps:
CSS to hide the tab bar
Enable user style sheet
If you've customized your browser (basically any desktop browser)
before 2019, you might now that a browser loads a user specific style
sheet called userChrome.css
or userContent.css
when starting up.
In 2019 with v69, Firefox disabled this behavior by default. However,
being the configure browser that Firefox is, it can be enabled again:
- In a new tab, type or paste
about:config
in the address bar and press Enter/Return. Click the button accepting the risk. - If the
toolkit.legacyUserProfileCustomizations.stylesheets
preference is not already set totrue
, double-click it to switch the value fromfalse
totrue
.
Configure user style sheet
- Open your Firefox profile in your text editor.
- Create a folder called
chrome
- Create a file
userChrome.css
with the following content:
#tabbrowser-tabs { visibility: collapse !important; } .private-browsing-indicator { background-image: none !important; } #tabbrowser-tabs, #navigator-toolbox, menuitem, menu { font-size: 15px !important; } #TabsToolbar { visibility: collapse !important; }
Disable tabs
Install and enable a Firefox extension which forces new tabs to be opened in new windows, instead. I use NoTabs.
Closing
You're all set. Quit and restart Firefox to pick up the userChrome change and you're good to go.
If you liked this post, please consider supporting our Free and Open Source software work – you can sponsor us on Github and Patreon or star our FLOSS repositories.