Pluggable module support in uim(was Re: [Uim] Will you upload daily snapshots of UIM?)
YamaKen
yamaken at bp.iij4u.or.jp
Tue Jan 11 05:56:03 EET 2005
At Tue, 11 Jan 2005 01:37:02 +0900,
tkng at xem.jp wrote:
>
> On Tue, 11 Jan 2005 00:35:00 +0900
> YamaKen <yamaken at bp.iij4u.or.jp> wrote:
> > I also want such features. Are your requirements as same as mine
> > listed below?
> >
> > 1. Make what IM should be appeared for user manageable
> >
> > 2. Load actual IM file lazily (i.e. selectable but not loaded at
> > startup)
>
> My porpose is only 2. My intention is to make a list of whole available
> inpput methods into a file. This file will be updated when users do
> "make install". If there are plural plugin directories, this list should
> be splitted into two files like:
>
> /usr/local/share/uim/im-list.scm
> /home/user/.uim.d/plugins/im-list.scm
>
> Merit of this way is, we don't need to load all input methods to get a
> list of available input methods. Because my intension is to make a whole
Lazy loading implies that "we don't need to load all input
methods to get a list of available IMs". We talk about same
feature.
> list, I stick that "list should be update at installation time". If we
> could do this with uim-custom, I don't stick to dedicated file.
I had not intended installation-time list generation. I only
intended that generate the list by uim-pref or first startup of
libuim for the user (i.e. first startup loads all actual IM
files).
But installation-time list update you said is useful. I agree
with it.
I'll implement it as following if there are no other
requirements.
- generate system default im-list at libuim installation
- generate per-user im-list at per-user plugin installation
- generate per-user im-list by uim-pref
- generate per-user im-list when libuim startup without
existence of the list (failsafe, should never run)
> > I think that we should implement such features by Scheme and
> > uim-custom facility as below, to simplify the implementation.
> >
> > - The enabled IM list is managed and stored as an ordered-list
> > custom variable rather than dedicated file
> >
> > - Generate stub-IM for each enabled IMs. And they load actual IM
> > file and set its own handler procs once its init-handler has
> > been invoked. This provides lazy loading feature
> >
> > - IM infomation provided by stub-IMs can be accessed by ordinary
> > uim APIs such as uim_get_im_name(). The lazy loading process
> > is transparent for libuim users
> >
> > It may be implemented by few amount of Scheme codes, and we can
> > use bridges, helpers and libuim core without change.
-------------------------------
YamaKen yamaken at bp.iij4u.or.jp
More information about the uim
mailing list