This is the source code that powers xcolors.net. Xcolors.net is a color theme directory for terminals that support color configuration through X resources. It provides a visual presentation of the themes and will hopefully grow over time with help from the community :).
How to use these themes
Download and use the
#include directive in your
.Xresources files. Then load/reload
xrdb utility. For more information see here.
Fork the xcolors repository.
Add your theme file(s) in the
themesfolder found in the project's root directory.
Commit your changes.
If you make changes to the source code make sure the tests are green.
Make a pull request (make sure you are not on Master branch)
Changes will show at the xcolors site as soon as the PR is merged to the master branch.
You make it to the hall of fame.
Both files using rgb
*color0: rgb:19/19/19 and hash
*color0: #2e3436 notation are supported.
Lines starting with
URxvt. are also supported.
*color (from 0 to 15),
*foreground are supported.
Everything else is ignored.
How this works
Xcolors.net is powered by Flask, the Python micro-framework and is hosted at Heroku. Only the master branch of this repository is deployed at heroku, so this branch should reflect the website contents/state.
With each push to heroku and before the Flask framework fires-up, a bit of python magic happens.
The files (themes) that reside in the
themes folder of the root directory are parsed. Then, for each
theme file, a corresponding html file is generated using the Jinja2 engine in
templates/xcolors folder. These files are imported later by the
when the main page is requested.
Navigate in the project's root directory and create the python virtual environment using
$ mkvirtualenv -p /path/to/pyhon2 xcolors
Then activate it:
$ workon xcolors
Intall dependencies using pip:
$ pip install -r requirements.txt
python xcolors.py or better use heroku's
foreman which will honor the Procfile contents.
$ foreman start
Run the tests with:
$ python -m unittest discover
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 version 3 of the License.
A copy of theGNU General Public License can be found in GNU Licence Page