Skip to content

Instantly share code, notes, and snippets.

@caseif
Last active September 5, 2015 15:46
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save caseif/6c61e762065322fa2269 to your computer and use it in GitHub Desktop.
Save caseif/6c61e762065322fa2269 to your computer and use it in GitHub Desktop.
foobar2000 Columns UI - Genre Colors
// This script applies Monstercat genre colors to the genre column of the foobar2000 Columns UI.
// Genre colors taken from https://goo.gl/U39iJL
// To use this script:
// 1) Install Columns UI as a component for foobar2000 from http://yuo.be/columns.php
// 2) Navigate to File->Preferences->Display->Columns UI->Playlist view.
// 3) Create a new column called "Genre" and use `$if(%genre%,%genre%,-)` as the display expression in the Scripts tab.
// 4) Click the Style tab and paste this script in. Be sure to check the "Use custom style script" box as well.
// That's it! Click Apply and enjoy!
// default to EDM color
$set_style(back,$rgb(193,193,193))
$set_style(text,$rgb(255,255,255))
// normalize genre name
$put(genre,$caps($replace(%genre%,-, )))
// Dubstep, Brostep, Garage, Riddim, Neurostep
$if($or($strstr($get(genre),Dubstep),$strstr($get(genre),Brostep),$strstr($get(genre),Garage),$strstr($get(genre),Riddim),$strstr($get(genre),Neurostep)),$set_style(back,$rgb(148,29,232)))
// Drumstep
$if($strstr($get(genre),Drumstep),$set_style(back,$rgb(213,0,127)))
// DnB, Neurofunk, Techstep
$if($or($strstr($get(genre),Drum & Bass),$strstr($get(genre),Drum and Bass),$strstr($get(genre),Neurofunk),$strstr($get(genre),Techstep)),$set_style(back,$rgb(255,25,0)))
// House (must be before Electro House so Electro House color overrides)
$if($strstr($get(genre),House),$set_style(back,$rgb(235,130,0)))
// oh, boy
// Electro House, Big-Room House, Outrun, Complextro, Bounce
// brace yourself, this is gonna be nasty
$if($and($or($and($strstr($get(genre),Electro),$not($strstr($get(genre),Electronic))),$strstr($get(genre),Big Room House),$strstr($get(genre),Outrun),$strstr($get(genre),Complextro),$strstr($get(genre),Bounce),$strstr($get(genre),Commercial House))),$set_style(back,$rgb(229,206,0)))
// Electro Swing
// this isn't grouped with house because otherwise the Electro color would override
$if($strstr($get(genre),Electro Swing),$set_style(back,$rgb(235,130,0)))
// Trance, Nu-Style, Hardstyle
$if($or($strstr($get(genre),Trance),$strstr($get(genre),Nu Style),$strstr($get(genre),Hardstyle)),$set_style(back,$rgb(0,128,230)))
// Glitch Hop, Neurohop, Moombah*
$if($or($strstr($get(genre),Glitch Hop),$strstr($get(genre),Neurohop),$strstr($get(genre),Moombah)),$set_style(back,$rgb(10,150,85)))
// Trap, Trip-Hop, Hip-Hop
$if($or($strstr($get(genre),Trap),$strstr($get(genre),Trip Hop),$strstr($get(genre),Hip Hop)),$set_style(back,$rgb(140,15,40)))
// Future Bass
$if($strstr($get(genre),Future Bass),$set_style(back,$rgb(184,184,255)))
// Post-Disco
$if($or($strstr($get(genre),Nu Disco),$strstr($get(genre),Synthpop),$strstr($get(genre),Synthwave),$strstr($get(genre),Electropop),$strstr($get(genre),Indie Dance),$strstr($get(genre),Electro Soul),$strstr($get(genre),Indie Pop)),$set_style(back,$rgb(22,172,176)))
// Hardcore, Hard Dance, Freeform
$if($or($strstr($get(genre),Hardcore),$strstr($get(genre),Hard Dance),$strstr($get(genre),Freeform)),$set_style(back,$rgb(0,150,0)))
// custom colors from here on out
// Chillout, Downtempo, Ambient
$if($or($strstr($get(genre),Chillout),$strstr($get(genre),Chill Out),$strstr($get(genre),Downtempo),$strstr($get(genre),Ambient),),$set_style(back,$rgb(244,194,194)))
// Breaks
$if($or($strstr($get(genre),Breaks),$strstr($get(genre),Breakbeat),$strstr($get(genre),Nu Funk)),$set_style(back,$rgb(10,24,87)))
// Rock, Neofolk
$if($or($strstr($get(genre),Rock),$strstr($get(genre),Neofolk)),$set_style(back,$rgb(180,215,191)))
// Industrial, Experimental
$if($or($strstr($get(genre),Industrial),$strstr($get(genre),Experimental)),$set_style(back,$rgb(40,40,40)))
// Pop!
$if($strstr($get(genre),Pop),$set_style(back,$rgb(179,226,52)))
// finally, plain old Electronic
// this is more just for reassurance nothing got colored that shouldn't have been
$if($or($strstr($get(genre),Electronic),$strstr($get(genre),EDM),$stricmp($get(genre),Dance)), $set_style(back,$rgb(193,193,193)))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment