This is a small (growing?) collection of user-stylesheets based upon the [[http://ethanschoonover.com/solarized][Solarized]] theme ([[https://github.com/altercation/solarized][repo]]). It uses [[http://learnboost.github.com/stylus/][Stylus]] to generate the CSS. The home of this stylesheet is at [[https://github.com/alphapapa/solarized-everything-css]].
Wouldn't it be nice if (almost) every web site looked Solarized? I thought so. So here is a start. :)
** Contents :TOC:
** Screenshots
*** GitHub
**** Dark [[https://raw.githubusercontent.com/alphapapa/solarized-everything-css/screenshots/solarized-dark/github.png]]
**** Light [[https://raw.githubusercontent.com/alphapapa/solarized-everything-css/screenshots/solarized-light/github.png]]
*** Wikipedia
**** Dark [[https://raw.githubusercontent.com/alphapapa/solarized-everything-css/screenshots/solarized-dark/mediawiki.org.png]]
**** Light [[https://raw.githubusercontent.com/alphapapa/solarized-everything-css/screenshots/solarized-light/mediawiki.org.png]]
** Installation :noexport_1:
*** From userstyles.org
You may install some of the stylesheets directly in your browser from [[http://userstyles.org][userstyles.org]]:
*** Manual
Install the stylesheet of your choice according to your browser's method (e.g. using the Stylish extension in Firefox).
CSS files for each theme are in the =css= directory.
**** Files
** Development :noexport_1:
To make changes, just edit the =.styl= files and run =make=. (You need to have Stylus installed, of course.)
Basically, nearly the only things that should be in =themes//.styl= should be theme specific colors. Everything else should go in =sites/*.styl=. Colors are defined as =color-= variables, and mixins are used to insert common CSS properties (like =color=, =background=, etc) with =!important=. Most changes can be made without inserting CSS properties directly into the selectors.
I highly recommend using Emacs with =stylus-mode= and =outline-minor-mode=, but, of course, you can use whatever you like. :)
It's a good idea to avoid the use of =*= selectors wherever possible. They tend to have unanticipated side-effects which can take time to track down.
*** Require tree
Stylus can be very confusing when it comes to importing/requiring sheets into other sheets. Unfortunately, the order in which they are imported /does/ matter, as each one seems to be parsed and executed in-order, rather than importing them all at once and then having a global namespace.
This is how the sheets ~require~ in this project:
This way, the color value-name mappings are loaded first, after which those friendly names can be used in the files that actually style elements and pages.
*** New Themes
It's easy to add your own themes:
** Credits
** License
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/gpl-3.0.txt.