CRUD Localization using I18n

Hi, I am using the I18n support for localization in a rather large application. My problem is that the same word is translated many times in the locales files in a not very CRUD way. For example many models has the attribute name that will be translated once for each model etc, when using the recommended active record keys.

I am also using keys for controllers, actions and views (as views controller action) that also results in many repetitions of the same translation.

How to handle that problem? A smart hierarchical systems of keys with a lookup function searching in higher levels when not found in lower ? What key systems are then used ? How do you then solve the problem with the same attribute ?

Note that in some situation the translations are context dependent, so the solution had to consider that possibility.

Any help would be appreciated.