Skip to content

Instantly share code, notes, and snippets.

@FichteFoll
Last active August 29, 2015 13:58
Show Gist options
  • Select an option

  • Save FichteFoll/9967332 to your computer and use it in GitHub Desktop.

Select an option

Save FichteFoll/9967332 to your computer and use it in GitHub Desktop.
CSScheme Stylus Test File
@purpose "This is just an example file to show how you can use this tool"
// This at-rule is required
@name "Example SCSScheme"
// FLAGS
$punctuation = true
// The color palette (from http://serennu.com/colour/colourcalculator.php)
// Don't try these at home!
$back = #202020
$fore = #FFF
$col0 = #FF69B4 // Hotpink Colour Wheel
$col1 = #FF6868 // (adjacent)
$col2 = #FFB368
$col3 = #FFFE68
$col4 = #B4FF68 // (triad)
$col5 = #69FF68 // (split complementary)
$col6 = #68FFB3 // (complementary)
$col7 = #68FFFE // (split complementary)
$col8 = #68B4FF // (triad)
$col9 = #6869FF
$col10 = #B368FF
$col11 = #FE68FF // (adjacent)
$caret = complement($col0) // same as $col6, probably
// This '*' rule is required too, it will serve as the general-purpose settings
// such as the global background color and line highlight background color.
*
background: $back
foreground: $fore
caret: $caret
lineHighlight: $col1
selection: $col1
contrast() {
background: complement(@foreground)
}
string
/* This is the name that will be displayed when editing the file in a different
* color scheme editor - after compilation. Usually you won't need this. */
@name "String"
foreground: $col1
if $punctuation
punctuation
// foreground complement(#FF6868)
foreground complement(@foreground)
&.constant
foreground: saturate($col1, 20%)
constant {
foreground: desaturate($col2, 30%)
&.numeric {
foreground: $col2
}
}
comment {
foreground: $col3
fontStyle: italic
if $punctuation {
punctuation {
foreground: darken($col3, 40%)
}
}
}
support {
foreground: $col4
&.constant {
foreground: desaturate($col2, 20%)
}
}
entity {
foreground: $col5
// We need to escape the subtract operator here because SASS wants to do arithmetics.
// The dumper will take care of it.
&.name - &.name.tag {
background: desaturate($col5, 30%)
}
}
invalid {
foreground: $col7
&.illegal {
foreground $col7 // alt. $back
}
}
keyword {
foreground: $col8
}
storage {
foreground: $col9
}
variable, support.variable
foreground $col10
C:\Users\Fichte\AppData\Roaming\npm\node_modules\stylus\bin\stylus:545
throw err;
^
CoercionError: C:/Users/Fichte/AppData/Roaming/npm/node_modules/stylus/lib/functions/index.styl:172
168| // spin hue by a given amount
169|
170| spin(color, amount)
171| color + unit(amount, deg)
> 172|
173| // mix two colors by a given amount
174|
175| mix(color1, color2, weight = 50%)
cannot coerce 180deg to ident
at "punctuation" (Example StyluScheme.styluscheme:53)
at "string" (Example StyluScheme.styluscheme:45)
at Ident.Node.coerce (C:\Users\Fichte\AppData\Roaming\npm\node_modules\stylus\lib\nodes\node.js:229:9)
at Ident.coerce (C:\Users\Fichte\AppData\Roaming\npm\node_modules\stylus\lib\nodes\ident.js:100:36)
at Ident.operate (C:\Users\Fichte\AppData\Roaming\npm\node_modules\stylus\lib\nodes\ident.js:126:49)
at Expression.operate (C:\Users\Fichte\AppData\Roaming\npm\node_modules\stylus\lib\nodes\expression.js:169:25)
at Evaluator.visitBinOp (C:\Users\Fichte\AppData\Roaming\npm\node_modules\stylus\lib\visitor\evaluator.js:597:28)
at Evaluator.Visitor.visit (C:\Users\Fichte\AppData\Roaming\npm\node_modules\stylus\lib\visitor\index.js:28:40)
at Evaluator.visit (C:\Users\Fichte\AppData\Roaming\npm\node_modules\stylus\lib\visitor\evaluator.js:159:18)
at Evaluator.visitExpression (C:\Users\Fichte\AppData\Roaming\npm\node_modules\stylus\lib\visitor\evaluator.js:660:26)
at Evaluator.Visitor.visit (C:\Users\Fichte\AppData\Roaming\npm\node_modules\stylus\lib\visitor\index.js:28:40)
at Evaluator.visit (C:\Users\Fichte\AppData\Roaming\npm\node_modules\stylus\lib\visitor\evaluator.js:159:18)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment