Title: Linux ????????
1Linux ????????
- Jim Huang (???)
- Project Manager, W-Channel Inc. (????)
ltjserv_at_channel.com.twgt - Kaffe Developer ltjserv_at_kaffe.orggt
- September 16, 2004
2??
- ?????
- ?? XIM
- ????????
- IIIMF
- SCIM
- ?????? Thin Client
- ??????
- XCING
- ???
3?????
- ??????????
- ???????
- ??????
- ?????
- ?????
- ????,???????
- ???????????,????????
- ?????,?????????
- Thin Client ?????
- ?????????
4???? GNU/Linux?
????????
????
Market Share
100
Cyborg OS
Matrix OS
Windows
GNU/Linux
0
Year
1980
1990
2000
2010
2020
2030
2040
2050
2060
5Internet ???????
- ??
- ????????
- ?????????
- ?????
- ?????????
- ??? ? ???
6????????
????????????
7?? XIM
- GNU/Linux i18n/L10n ??
- XIM ??
- XIM ??
8GNU/Linux ? i18n/L10n ??
- ????????????????????????????????????
- ????????????,???????????????,?????????????????????
? - I18n ????????????????????
- ????
- i18n Internationalization
- L10n Localization
- m17n Multilingualization
- CJK(V) Chinese, Japanese, Korean, (Vietnamese)
- OpenI18N Open Internationalization Initiative
(?? LI18NUX)
- ????????????????????
- ??????????
- ?????????????,?????
- ?i18n??????????????m17n
- ??,?? ????????????????????????,???????
9GNU/Linux ? i18n/L10n ?? (?)
- ????
- ???????????
- Linux ????????? i18n ? L10n
- ????????
- ??????????,???????????
- ????????
- Linux tty (console)?X Window?Application Resource
10GNU/Linux ? i18n/L10n ?? (?)
- ???(chain)
- Linux kernel
- GNU C Library (glibc)
- XFree86 (X11)
- Gtk/GNOME
- Qt/KDE
- ??????????
- chain ???
11?? (Locale) ???
- mltalk (X ???) ?????????
- ??????
- ???????????????????????
- ????????
- ?????,????????????
- ??????????????,??????????????
- ??????????????,??????????????
- ??????????????,?????????????????
12XIM ??
- XIM ??
- XIM ??
- XIM ????
- XIM ??
13XIM (X Input Method)
14XIM ??
- ???I18N (InternationizatioN) ? Locale ???????
- ???????????????????????
- ?????????????
- ??
- XIM Client ????
- XIM Server ???
15XIM ??????
- X11R4
- ??????????,??????????????
- ? Fujitus ? Omron ?? Xjp
- X11R5
- 1989 ? XI18n ??? X ???????
- ???? XIM/XFontSet APIs
- ????
- Omron/NTT ?? Xsi
- Unix International (UI) ?? Ximp
- Unix International ? XIM ?????
16XIM ?????? (?)
- X11R5
- ????????
- Omron/NTT
- UI (Fijitsu?Sony?Xerox?ATT/USL?Hitachi?Sun?)
- X11R6
- OSF (IBM?DEC?HP) ?? UI
- XIM Protocol ??
- ??? Xsi/Ximp ??
- ?? XIM/XOM/XLC APIs
- Xlib XIM ????? SI
- IMdKit (IM server Developer Kit) ??
17XIM ?????? (?)
- X11R6.5
- X ??????,X.org ?? X ??? SI
- Sun ?? Solaris ? XI18N ??? X.org
- XFree86 ? XI18N ?????? X.org
- OpenI18N.org ?? xiiimp.so
- XIM ?? IIIMF ??
18XIM ??
19XIM ???
- XIM??? X Window System ????,???? XIM ??????? X,?
Embeded System ?????? - ???????
- XIM ??? Server ????Client ?,???????????
- ??Mozilla ???????????,???????? XIM client/server
??
20XIM ??? (?)
- XIM ? IIIMF ??? Hideki Hiura ??
- ????? XIM,????? X ??
- ? X ??????????,?
- XFontSet?Cordinates?Color?Display?Screen?Atom,
- Ctext (subset of ISO-2022) ?? charset ???
- ? X transport,?? XIM ????? X ? X server
- XIM ? POSIX ?? locale ???
- ???? XIM client/server ??? locale ??,????
- XIM ????? single-user
- User ????????????????
21XIM ??? (?)
- XIM ? IIIMF ??? Hideki Hiura ??
- ????? IM server ??
- ????????????? XIM server
- ????? XIM server ???????????
- ?????????? API ????
- ???????
- ???????????,?????????????????????????,??????,?????
???? - ????????
- ? Web ??????
22XIM ??? (?)
- Hideki Hiura ??
- ???? XIM???? ?????? patch ???
- 1995 ????????,?? IIIMF ??
23????????
- ???????????
- ?????? (??????) ?? (????????????) ????
- ??
- IIIMF
- Sun ??,? OpenI18N ????
- SCIM/UIM/m17n
- ? SCIM ? UIM ??????,? FreeDesktop.org ???
24IIIMF (Internet/Intranet Input Method Framework)
- ?? IIIMF ???
- IIIMF vs. XIM
- IIIMF ????
- IIIM Framework ??
25?? IIIMF ???
- 1. ???????(???????GUI??),????Server-Client??
- 2. XIM??? Locale,???????? (IIIMF?Locale??)
- 3. ??????? Language Engine
- 4. ????????
- 5. ????Internet??,Client ?? Server ????????
26IIIMF vs. XIM
- ???????IIIM Client???,???????
- IIIMP?Utf-16 ??,???????????
- LE vendor ??????????non-language specific
?????,????????????? - context managements
- Input Method Protocol
- platform secific input method interface
- rendering
27IIIMF vs. XIM (?)
XIM IIIMF
?Client???,??????Server Daemon??,??????
?????Locale?? ???????Locale?? ?Locale?? ????
Locale????? ????Locale
???engine???XIM Server ???engine??????? IIIM Server
???X Window system platform independent
??????XIM?????
28IIIMF ????
- ???? XIM ??
- ??? Window System ????
- ?? Unicode ????????????
- ? Unix ??? server ?? Windows ?????? client ??
- ??? IM ??
- ????,????????????
- ????????
- ???? XIM?GTK immodule?Java Input Framework
???????? - ????? client-side API
29IIIM Framework ??
- ?????????
- ??????????
- ?????? LE (Language Engine)
- ??????
- ??? Protocol ????????,? Modem ??,???
- ? LE ????????????
- ??
- Server Framework
- Client Framework
- Language Engine
30IIIM Framework
31IIIM Server Framework ?
IIIM Server(htt server) Xcin-IM
module Other IM
App Xlib xiiimp.so
xcin-gui
? IIIM Client Framework
32IIIM Server Framework
- IIIM Server(Htt Server)
- 1. ?? UNIX Daemon
- 2. ??????? IIIM server
- 3. ????????? API (LEIF) - /usr/lib/im/leif
- 4. ??? LE ??????? so (shared object) ? dll
- ?????? LE ? plugin ??? Client ?? IIIM
Protocol???,???? Client ??? (Input Event)
33(No Transcript)
34IIIMF ?????
- PCE/EMIL
- LE ? IIIMSF ??? XML-based IDL
- EMIL ????????
- ?????????? generic EMIL processor,????????????????
,???????????specific case - X Auxiliary Library
- X Auxiliary Object ???
- Client-side configuration library
35SCIM (Smart Common Input Method platform)
- SCIM ??
- SCIM / UIM / m17n
- SCIM ???
- ?? (To See Is To Believe.)
- SCIM ??
36SCIM/UIM/m17n
- SCIM?UIM ? m17n library ???????
- SCIM (Smart Common Input Method platform) ?????
- ?????????????
- UIM (Universal Input Method) ? TOKUNAGA
Hiroyuki?Masahito Omote ?Yamaken ???? - ?? CJK ?????
- 2004-06-12 SCIM/UIM ??
- 2004-06-14 SCIM/m17n ??
- SCIM/UIM ?????????????
37SCIM/UIM ??
38SCIM/UIM ?? (?)
39SCIM ??
- ????????????
- scim-uim (?? UIM ?? backend)
- scim-m17n (?? m17n library ?? backend)
- ?????????????
- scim-panel-gtk GTK 2.x ??????? (??)
- skim KDE ???? SCIM ????
- ????
- ???????? API
- ????????
- ???? IMEngine?FrontEnd,? GUI Panel
- ?????????? (loose binding)
- ???? socket communication (IIIMF ?????)
40SCIM ?? (?)
- ????
- ? C/STL ??,?????????? API (??? C API binding)
- ???????? IMEngine ??????
- ?? dynamic loading ? Input Method backend ?? (??
UIM) ??? Client-Server ?? (?? IIIMF)
41SCIM ????
- SCIM ???????
- ?????????
- ?????????
- ????
- ???? IMEngine
- Client-Server ??
42SCIM ???????? IMEngine
43SCIM ????Client-Server ??
44SCIM ? IIIMF ???
- ??? SCIM mailing-list ?,SCIM/UIM ???? IIIMF ???
Hideki ???? - SCIM ?? IIIMF ?????
- SCIM ????????? IIIMF cvs committer,??????????
- Sun JDS (Java Desktop System) ???? Unicode
- ??? UTF-8,?? locale codec ????
- ????? IIIMF
45?????? Thin Client
- ??
- ????????
- Thin Client ?????????
- Thin Client ????????????
- W-Channel ? Peach (????)
46Thin Client ?????????
- ??????
- ??????,?????????,????????????????????
- Thin Client ??????????
- ?????,???????,????
- ????
- ????????!
- ?? Client-Server ??,?? Thin Client ??
- InputMethod-on-Demand
47Thin Client ????????????
- ????
- Kiosk ??????????????,?????????????????????,???????
???? - ?? X-based Thin Client ?????? XIM
server,??????????????? - ????
- ???? Unicode
- ?? IIIMF ? SCIM ??????????
48W-Channel ? Peach
- Peach (????) Thin Client ????
- Smart-Install/Update (? Zero-Install ???)
- TinyX/GTK2.2
- ???????????????
- CoreWM / Desktop Environment
- ?? FreeDesktop.org ????
- ????,??????
- International Edition ?? SCIM
- ???? IMEngine (localhost)
- Client-Server ?? (access remote IM services)
49Smart-Install/Update
- ? Zero-Install ???
- ? Java WebStart ?????????? Thin Client
- ???????,??????????
- ? Desktop Environment ???
- ??????????,?????????????????
- ??????? localhost ?
- ??????? cache,???????
50Smart-Install/Update (?)
- Download-on-Demand
- ?????????????
- ??????
- ?? Thin Client ????????
51Smart-Install/Update (?)
52Input Method on Demand
- ? SCIM ?????? Smart-Install/Update ???
- ?? SCIM ??????,??????
- ??
- ???????????
- ?? Smart-Install ???????? cache
- ????????????????
- ? IM service ??,? Client-Server ????
53Demo
54(No Transcript)
55??????
- XCIN ???
- XCIN ???? XCING
- eXtensive Chinese Input Next Generation
- ????????? -- Qooing (???)
56XCIN ???
- ??????
- XCIN (XIM ??)
- ?????????
- XCIN ???
57???????
- ???????
- Cangjie (Changjei) (??)
- Wubizixing (????)
- Array 30 (??)
- ???????
- Pinyin (??)
- Zhuyin (Phonetic) (??)
- Cantonese Pinyin (????????)
- ???????
- ????? (?????)
- ?????????
58XCIN (XIM version)
- ?? BIG5?BIG5HKSCS?GB2312,?? UTF-8
- ????? Locale ???,??????????
- ??
- ?????????
- ?????????? XIM client ??
- ?? Unix ????
59???????????
- ????????
- JMCCE / zhcon / yact / chdrv / cce2k
- IIIMF-xcin
- IIIMF-chewing
- CKeyboard
- ????
- JMCCE 1.5 ???
- ?? iiimf-chewing
- ?? scim-chewing
60XCIN ???
- XCIN ???????,??? Unix ?????????
- XCIN ????????????
- XCIN ??? X
- ????????????????????,??????
61XCIN ???? -- XCING
- XCING eXtensive Chinese Input Next Generation
- ??
- ?? XCIN ??
- ??????????
- ?? XCIN,???? X ???
- ??????????
- ????
62XCIN ???? XCING (?)
- XCING eXtensive Chinese Input Next Generation
- ??
- ?? XCIN ??
- ?? XCIN,???? X ???
- ??????????
- ????
63XCING ???
- SCIM/IIIMF-libxcin
- libxcin
- libxcin-core
- libxcin-gen_inp
- libxcin-bimsphone
64libxcin ??
?? xcinrc ???,???????
Configuration
- ????,???? libxcin ??
- module
- libxcin-gen_inp (??????)
- libxcin-bimsphone (??????)
- libxcin-chewing (??????)
Modules Loader
?? libxcin-core ????? (?????????)
Module Routines
????????????,? preedit ???? commit ??
Input Mehod Logic
Feedback
65libxcin-core ? IIIMF/SCIM ?????
SCIM
iiimf-libxcin ?? IIIMF ? ?? Language
Engine scim-libxcin ?? SCIM ??? IMEngine
IIIMF
Iiimf-libxcin (Language Engine)
scim-libxcin (IMEngine)
libxcin-core
- libxcin-core ?????????
- libxcin-bimsphone (?????)
- libxcin-chewing (?????)
- libxcin-gen_inp (??????)
libxcin-core ? ???????? ????,??? ???????? ???
libxcin-core
66????????? ???
- Qooing ???
- ??
- ??? Logic ? View ??
- ????????????
- ?? Open Source ??????????
- Chewing Anywhere!
67?????????
User
??????,????????????????
Backend ?????????,??? XIM,???????
(JMCCE/screen),??????? (XCIN/IIIMF)
Backend
? backend ?????,??????????
libchewing
68?????
69????????
- libchewing-0.3.x
- Fully Unicode core
- libskk-like API
- XCIN-chewing
- IIIMF-chewing
- SCIM-chewing
- Console-chewing ? ??? zhcon/itw
- screen-chewing
- MSIME-chewing ? Win32 ???????
70??????? (old)
71(No Transcript)
72We Want You!
- Linux Kernel Hacker
- WirelessLAN guru
- Security/Crypto Hacker
- GUI Designer
- X Window Fan
- C / Shell Script Programmer
- Contact Info ltjserv_at_channel.com.twgt