I just spent most of an afternoon hunting down WTF is going on with the active vs other tabs visibility for the https://developer.gnome.org/gtk3/stable/GtkNotebook.html widget, with the default theme (Raleigh), for the same reason as the OP. I Finally got tired of having it near-impossible to see which tab is active at a glance. (There is a visible difference where the active tab connects to the border, but it's too subtle to be any use).
As far as I can tell, the default theme isn't supposed to look that way, and nobody ever fixed it since it was introduced. (or just fixed it for themselves and posted on a blog or something.) I reported it as https://bugzilla.gnome.org/show_bug.cgi?id=741185.
The fix is to put this in your .config/gtk-3.0/gtk.css:
.notebook tab:active {
background-color: darker(@bg_color);
}
The reason is that https://git.gnome.org/browse/gtk+/tree/gtk/theme/Raleigh/gtk-default.css has a bug. gtk-default.css is the Raleigh theme, which gets compiled in to gtk+, so it's used if there isn't a different default set somewhere.
...
notebook .active-page {
color: @selected_fg_color;
background-color: darker (@bg_color);
}
...
That css doesn't actually do anything. "active-page" is the string https://git.gnome.org/browse/gtk+/tree/gtk/gtknotebook.c checks, but it's not the name of the appropriate CSS element, or whatever the correct noun is. Also, the color property doesn't do anything for a notebook tab.
That code came from this commit:
https://git.gnome.org/browse/gtk+/commit/gtk/gtk-default.css?id=7cd3e7c81bf82bc51f2891e332575d1fbe3dde4e
And yes, it took me maybe 10 minutes to follow that file back through 3 renames or so. Yuck. (follow the link to the diffstat to find the rename, then -> parent commit -> tree, then browse to the file. Look at the log, repeat starting from the rename commit that introduced it.)
Links I found while looking into this:
https://askubuntu.com/questions/400979/how-to-change-gtk-notebook-tabs
http://www.gtkforums.com/viewtopic.php?f=3&t=988&p=72092&hilit=Styling+a+Notebook+with+gtk3+and+css#p72092
does some funky stuff, like put rounded corners on tabs. But didn't tell me what the right syntax was for affecting the active tab. Also, IDK why they use GtkNotebook { }
instead of .notebook { }
, since either one seems to work.
http://harts.net/reece/2013/02/26/highlighting-the-active-tab-in-gnome-terminal/
indicates that you can limit the fix to just gnome-terminal, by qualifying with TerminalWindow .notebook tab:active
https://developer.gnome.org/gtk3/stable/gtk-migrating-GtkStyleContext-css.html basics of gtk's subset of CSS. e.g. // comments don't work, only /* */
If you're tweaking your CSS, the easiest way to test it is to flip to another shell and run gedit file1 file2. (with files that exist, so it won't prompt you to save them). It comes up pretty fast, and you can close it again quickly.
I'd recommend terminal emulator like urxvt, which has daemon-client version which allows opening new windows in instant, and many other features (but no tabs), and tiling window manager like i3 (the layout you want is called stacking, and most tiling WMs support it, in addition to tiling and tabbed).
Best Answer
Unfortunately, you cannot open old tabs in the Gnome-Terminal. Because Firefox is a web browser when you open a previous tab like that it just goes to the history file and goes to the website as the last entry. It is reloaded from the ground up.
The Gnome-Terminal does not activate/go to set pages, instead it is just an interface to the console so you cannot go to previous pages.
If you just want to have all the commands you had previously run ran again so you could be in a certain place with certain things set, you can go to you
.bash_history
file (sometimes it is called.history
). This contains a list of all your previous commands and is how you can click the up arrow key to go through your command history. You can just copy-paste out of that withctrl-shift-c
andctrl-shift-v
in the gnome terminal.If it something you want to run as a script to "set you up" in your previous state you can make a bash script out of the lines of history that you need.
If you want it to run every time bash launches then add those lines to the end of your
.bahsrc
file.