Yes, you should check out Scim/Skim! I've found it a fantastic platform for inputing different languages (mainly Japanese and Chinese, but it also has a very convenient input mode for Latin characters with diacritics (German umlauts etc), which saves you the trouble of having to use different keyboard layouts.
Actually, the Wikipedia entry on Scim has all the relevant information, I think:
Smart Common Input Method - Wikipedia, the free encyclopedia.
Cheers