Theme support était à l'origine un plugin qui permettait d'avoir des thèmes pour son application ruby on rails 1.X ou 2.X. Voici comment cela fonctionne.
Un répertoire themes à la racine de l'application rails, puis pour chaque theme un répertoire "images", "javascripts", "stylesheets" et enfin "view". Ce dernier permet de surcharger la vue si elle existe dans le thème sinon rails prend la vue par défaut dans app/view.
railsapp
|--themes |--montheme |--images |--javascripts |--stylecheets |--views
Le thème est chargé pendant l'execution de l'application et non au chargement, ce qui permet de changer de thème de manière dynamique. Les helpers permettent de choisir si on utilise des javascripts, stylesheets et images du theme ou de l'application général.
Dans la version 2.X on était obligé en développement de faire
rake themes:cache:update
pour copier les fichiers publics "themes/montheme/*" dans "public/montheme/*". J'ai porté (avec l'aide de mon chef pour le début) le plugin en un gem compatible rails3.
Vous pouvez l'installer en faisant :
sudo gem install theme_support
Pour l'utilisation de README sur github est bien fait !
Attention le gem ne fonctionne pas avec la surcharge de vue pour actionmailer !
pour rails 3.0
https://github.com/zedalaye/theme_support
pour rails 2.3
https://github.com/jystewart/theme_support
https://jystewart.net/process/
pour rails 3.2
https://github.com/lucasefe/themes_for_rails