Socket
Socket
Sign inDemoInstall

Pass

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

Pass

The pythonic awesome stylesheet language


Maintainers
1

==== Pass

http://github.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 -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

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc