Hi, I wrote a Latin characters input method using the key translation tables found in Emacs. Recently I moved to Italy, and I tried to write accented letters with the composition key prefixes, but I did not like this method.
On the other hand, the Italian input method built in Emacs was very intuitive to me, at least for two reasons. First, it works very much like Korean input. You don't need to signal the beginning of a composition with an extra key stroke. Second, in the case of a postfix method, the procedure is closer to the order of handwriting. For example, when you write "รจ" by hand, you first write "e" and then add the accent "`". With italian-postfix method, you do the same: type "e" and then "`". For these reasons, I ported to uim the key tables from latin-post.el, latin-pre.el, and latin-alt.el in GNU Emacs 22. The scheme files can be found at http://www.tuhep.phys.tohoku.ac.jp/~jhpark/uim/ There are three files: elatin.scm (for emacs-latin) the main file, elatin-rules.scm containing the rk rules, and elatin-custom.scm. Could you take a look at them before I commit them? I have a few questions regarding this module. (1) The user can change the translation table in the preference dialog. The scheme variable is elatin-rules, and this holds the name of one of the rules-list variables. But, I wonder how to change the rule of an rk-context (a member of elatin-context) on the fly. I thought of using custom-set-hooks, but the hook function does not know which elatin-context to operate on since it does not have an argument. One solution might be to poll for a change of the variable elatin-rules after every key stroke, and reinitialize rk-context when a change is detected. Is there a better way? (2) The key tables were derived from GNU Emacs, and so I put a GPL notice at the beginning of elatin-rules.scm. But, I am not sure which copyright notice should be used for the other two files. For the moment, I copied the usual (new BSD?) license. Happy New Year to everybody! Best wishes, Jae-hyeon --~--~---------~--~----~------------~-------~--~----~ Google Groups "uim-en" group uim-en@googlegroups.com http://groups.google.com/group/uim-en/about -~----------~----~----~----~------~----~------~--~---