skip to navigation
skip to content

Not Logged In

Pass 1.0.5

The pythonic awesome stylesheet language

====
Pass
====
http://githab.com/rimvaliulin/pass

The **pythonic awesome** stylesheet language.

About
=====
Pass is a dynamic stylesheet language and css preprocessor for web-developers that makes ccs coding simple and
beautiful by having dynamic behavior such as variables, inheritance, operations and functions with python like indented syntax.

Installation
------------

::

pip install pass

Command-line usage
------------------

::

pass style.pass

Usage in Code
-------------

::

import Pass

Pass('style.pass')

Syntax
======
- Every piece of knowledge must have a single, unambiguous, authoritative representation within a system. `"DRY - don't repeat yourself" <http: en.wikipedia.org="" wiki="" don't_repeat_yourself="">`_
- There should be one — and preferably only one — obvious way to do it", from `"The Zen of Python" <http: en.wikipedia.org="" wiki="" the_zen_of_python="">`_.

Variables and operators
-----------------------
Variables allow you to specify widely used values in a single place, and then re-use them throughout the stylesheet,
making global changes as easy as changing one line of code.

+------------------------------------------+------------------------------------------+
|:: |:: |
| | |
| // Pass | /* Compiled CSS */ |
| link_active = #1f6ba2 | .menu-item { |
| link_hover = #ccc | color: #1f6ba2; |
| link_height = 32px | line-height: 16px |
| link_size = 1em | } |
| | a:hover { |
| .menu-item | color: #ccc |
| color link_active | font-size: 1.5em |
| line-height link_height / 2 | background: #000 |
| | } |
| a:hover | |
| color link_hover | |
| font-size link_size + 0.5 | |
| background #000 | |
| | |
+------------------------------------------+------------------------------------------+

Nested selectors
----------------
Rather than constructing long selector names to specify inheritance, you can simply nest selectors
inside other selectors.

+------------------------------------------+------------------------------------------+
|:: |:: |
| | |
| // Pass | /* Compiled CSS */ |
| line_height = 16px | .menu { |
| .menu | margin-bottom 8px |
| margin-bottom line_height/2 | } |
| -item | .menu-item { |
| float left | float left |
| color #fff | color #fff |
| :visited | } |
| color #eee | .menu-item:visited { |
| _active | color #eee |
| :hover | } |
| color #ccc | .menu-item_active, .menu-item:hover { |
| span | color #ccc |
| background-color #ccc | } |
| | .menu span { |
| | background-color #ccc |
| | } |
| | |
+------------------------------------------+------------------------------------------+

Selector inheritance
--------------------
Class naming scheme::

block-[element]
[child_]parent-[[parent]_child]

+------------------------------------------+------------------------------------------+
|:: |:: |
| | |
| // Pass | /* Compiled CSS */ |
| ._foo | ._foo,.foo,.сhild_foo,.new_child_foo{}|
| pass | .foo{} |
| | .child_foo,.new_child_foo{} |
| .foo | .new_child_foo{} |
| pass | |
| | |
| .сhild_foo | |
| pass | |
| | |
| .new_child_foo | |
| pass | .bar-link,bar-link_active{} |
| | bar-link_active{} |
| .bar | |
| -link | |
| pass | |
| _acive | |
| pass | |
+------------------------------------------+------------------------------------------+


Parent directive
--------------------
Usage::

@parent "style.pass"


Functions
---------

Color initialization
####################

rgb(r, g, b) - Converts an Rgb(r, g, b) triplet into a color

rgba(r, g, b, a) - Converts an Rgba(r, g, b, a) quadruplet into a color.

hsl(h, s, l) - Converts an Hsl(h, s, l) triplet into a color.

hsla(h, s, l, a) - Converts an Hsla(h, s, l) quadruplet into a color.


Get/set color components
########################

red(color, value=None) - Return the red component of the given color.

green(color, value=None) - Return the green component of the given color.

blue(color, value=None) - Return the blue component of the given color.

hue(color, value=None) - Return the hue of the given color.

saturation(color, value=None) - Return the saturation of the given color.

lightness(color, value=None) - Return the lightness of the given color.

alpha(color, value=None) - Return the alpha component of the given color.

Color adjustment
################

spinin(color, value=Pr(10)) - Changes the hue of a color.

spinout(color, value=Pr(10)) - Changes the hue of a color.

lighten(color, value=Pr(10)) - Makes a color lighten.

darken(color, value=Pr(10)) - Makes a color darker.

saturate(color, value=Pr(10)) - Makes a color more saturated.

esaturate(color, value=Pr(10)) - Makes a color less saturated.

fadein(color, value=Pr(10)) - Add or change an alpha layer for any color value.

fadeout(color, value=Pr(10)) - Add or change an alpha layer for any color value.

grayscale(color) - Converts a color to grayscale.

complement(color) - Returns the complement of a color.

invert(color) - Returns the inverse of a color.

mix(color, color1, weight=Pr(50)) - Mixes two colors together.

String Functions
################

quote(s) - Removes the quotes from a string.

unquote(s) - Adds quotes to a string.

Number Functions
################

percentage(value) - Converts a unitless number to a percentage.

round_(value, digits=0) - Rounds a number to the nearest whole number.

ceil(value) - Rounds a number up to the nearest whole number.

floor(value) - Rounds a number down to the nearest whole number.


Command-line options
--------------------

--version show program's version number and exit
-h, --help show this help message and exit
-i, --inherit use selector inheritance, rather then property duplication
-c, --compressed compress imported .css files
-e, --empty-selectors keep empty selectors
-r, --respect-indents respect indentes
-n, --newlines use newlines
-I INDENT, --indent=INDENT .pass file indentation. default 2 breaks
-C CSS_INDENT, --css-indent=CSS_INDENT .css file indentation. default 4 breaks

License
=======

See ``LICENSE`` file.
::

> Copyright (c) 2012 Rim Valiulin


:Author: Rim Valiulin
:Version: 1.0.4 of 2013/07/21
:Dedication: To my wife.  
File Type Py Version Uploaded on Size
Pass-1.0.5.tar.gz (md5) Source 2014-02-26 29KB
  • Downloads (All Versions):
  • 12 downloads in the last day
  • 55 downloads in the last week
  • 260 downloads in the last month