Posted by Andreas on Sunday, August 15, 2010 at 14:34 (CEST)
It has been quite a while that I created these two Rails plugins, but they still serve their purpose without problems even in newer applications. Since Rails plugins as a gem are much easier to maintain, I took some time to move these two plugins to gems. This makes them even more easy to use and especially more maintainable.
I’m talking about rails-i18n-updater, a plugin that merges and manages Rails core translations in your application — a helper that I don’t want to miss in any i18n-enabled application anymore. And css_naked, a simple plugin that disables all stylesheets during the CSS naked day event once a year.
Both plugins are ready for Rails 3 and work well with Ruby 1.9, btw.
Rails I18n updater
The rails-i18n-updater plugin does two things to an application. First, it adds a rake task called i18n:update to your applications. This task can be called to download the most current translation files for the Rails core. Second, it prepends these translation files to the I18n load path at runtime.
This means, that you don’t have to fiddle with Rails core translations anymore in your application. Things like date formats, weekday names, month names, time distances in words and ActiveRecord validation error messages are translated for you — and moreover updating them is as easy as calling rake i18n:update. Because the downloaded translations are prepended to your load path, you’re still free to override them in your own locale files.
This seems simple, but becomes really useful if you don’t want to do every core translation yourself and don’t want to manually merge core translation updates. To use the rails-i18n-updater plugin as a gem, just add gem 'rails-i18n-updater' to your application’s Gemfile (environments.rb for Rails 2).
rails-i18n-updater plugin: RubyGems Github
CSS naked
css_naked is a very simple plugin that just disables the stylesheet_include_tag helper during the CSS Naked Day event each year. Installing and using it is now as easy as adding gem 'css_naked' to an application’s Gemfile (environments.rb for Rails 2).
css_naked plugin: RubyGems Github
Posted by Andreas on Tuesday, August 11, 2009 at 06:10 (CEST)
If you’re writing an i18n-enabled Rails application, you have to deal with the translation of your own application as well as with the translation of several Rails core strings (like validation error messages, date formats, and so on). You usually don’t need to translate the Rails core strings yourself, since there’s a big repository of user-contributed core translations you can pull into your application. However keeping this translations up to date in your application can quickly become cumbersome.
For this reason, I refactored the rails-i18n(*) repository a while ago and made it a Rails plugin. You could install the plugin to your application and it provided Rails core translations for you. Unfortunately it became annoying to keep the fork up to date with the latest translation changes since every rebase or merge was a pain because of the moved file locations.
So my latest solution is another small plugin called rails-i18n-updater, which does not contain the translations itself but downloads them from the above mentioned repository of core translations.
Read more »
Posted by Andreas on Saturday, February 28, 2009 at 13:01 (CET)
On April 9th 2009, the fourth CSS Naked Day event will take place. The idea behind this event is to promote web standards (like proper semantic markup and a good hierarchy structure). On April 9th, participants are encouraged to completely remove all stylesheets from their site, stripping it entirely of its design. If your site has proper semantic markup, it’ll stay well usable and understandable even without styles. If not, you better hide and don’t take part in this event :)
To make it as easy as possible, I created a little Rails plugin that, once installed to an app, simply disables the stylesheet_link_tag helper for the duration of the event. It’s as easy as install and forget (assuming that you used stylesheet_link_tag in your layouts and didn’t add inline styles or stylesheet links manually).
So let’s see how many sites will join this funny but yet expressive event this year. It’s time to show off your <body> ;-)