( ) Sun Microsystems, Inc Network Circle Santa Clara, CA U.S.A. Part No:

Similar documents
Copyright 2009 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A. All rights reserved. Sun Microsystems, Inc. ( Sun Microsystems

Java Desktop System Release 3 ㅦㅼㇶㅼㇺ㇬㇤ㅛ

文字コードとその実装

syspro-0405.ppt

Copyright Oracle Parkway, Redwood City, CA U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated softw

u302.book

(2 Linux Mozilla [ ] [ ] [ ] [ ] URL 2 qkc, nkc ~/.cshrc (emacs 2 set path=($path /usr/meiji/pub/linux/bin tcsh b

DocuWide 2051/2051MF 補足説明書

1 # include < stdio.h> 2 # include < string.h> 3 4 int main (){ 5 char str [222]; 6 scanf ("%s", str ); 7 int n= strlen ( str ); 8 for ( int i=n -2; i

double float

joho07-1.ppt

Java DataBase Connectivity Sun ONE Studio 4 Sun Microsystems, Inc Network Circle Santa Clara, CA U.S.A Part No

Condition DAQ condition condition 2 3 XML key value

MOTIF XF 取扱説明書

fx-9860G Manager PLUS_J

解きながら学ぶC言語

ex12.dvi

/ SCHEDULE /06/07(Tue) / Basic of Programming /06/09(Thu) / Fundamental structures /06/14(Tue) / Memory Management /06/1

RR-US470 (RQCA1588).indd

tuat1.dvi

1.ppt

program.dvi

programmingII2019-v01

OOCOBOL紹介

Complex Lab – Operating Systems - Graphical Console

Introduction Purpose This training course demonstrates the use of the High-performance Embedded Workshop (HEW), a key tool for developing software for

SpecimenOTKozGo indd

解きながら学ぶC++入門編

Microsoft Word - Win-Outlook.docx

A/B (2018/10/19) Ver kurino/2018/soft/soft.html A/B

book


Technische Beschreibung P82R SMD

X Window System X X &

1 1.1 PC PC PC PC PC workstation PC hardsoft PC PC CPU 1 Gustavb, Wikimedia Commons.

10/ / /30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20 6. http, CGI Perl 11/27 7. ( ) Perl 12/ 4 8. Windows Winsock 12/11 9. JAV

AN 100: ISPを使用するためのガイドライン

10

Microsoft Word - Meta70_Preferences.doc

C H H H C H H H C C CUTION:These telephones are for use in Japan only. They cannot be used in other countries because of differences in voltages, tele

untitled

取説_VE-PV11L(応用編)

II ( ) prog8-1.c s1542h017%./prog8-1 1 => 35 Hiroshi 2 => 23 Koji 3 => 67 Satoshi 4 => 87 Junko 5 => 64 Ichiro 6 => 89 Mari 7 => 73 D

Microsoft Word - C.....u.K...doc

UNIX

,,,,., C Java,,.,,.,., ,,.,, i

取説_KX-PW38CL_PW48CL

PBASIC 2.5 PBASIC 2.5 $PBASIC directive PIN type New DEBUG control characters DEBUGIN Line continuation for comma-delimited lists IF THEN ELSE * SELEC

JP1/Integrated Management - Service Support 操作ガイド

取扱説明書_KX-PW100CL

/* sansu1.c */ #include <stdio.h> main() { int a, b, c; /* a, b, c */ a = 200; b = 1300; /* a 200 */ /* b 200 */ c = a + b; /* a b c */ }

K227 Java 2

Specview Specview Specview STSCI(Space Telescope SCience Institute) VO Specview Web page htt

mstrcpy char *mstrcpy(const char *src); mstrcpy malloc (main free ) stdio.h fgets char *fgets(char *s, int size, FILE *stream); s size ( )

ohp1.dvi

TM-m30 詳細取扱説明書

VE-GP32DL_DW_ZA

LiveCode初心者開発入門サンプル

TeraTerm Pro V.2.32の利用法

Cisco Aironet 1130AG アクセス ポイント クイック スタート ガイド

卒 業 研 究 報 告.PDF

owners.book

ストラドプロシージャの呼び出し方

2

TM-m30 詳細取扱説明書

Kaplan-Meierプロットに付加情報を追加するマクロの作成

LAN Copyright c Daikoku Manabu This tutorial is licensed under a Creative Commons Attribution 2.1 Japan License

Windows Cygwin Mac *1 Emacs Ruby ( ) 1 Cygwin Bash Cygwin Windows Cygwin Cygwin Mac 1 Mac 1.2 *2 ls *3 *1 OS Linux *2 *3 Enter ( ) 2


r08.dvi

RTX830 取扱説明書

Ver.1 1/17/2003 2

Nios® II HAL API を使用したソフトウェア・サンプル集 「Modular Scatter-Gather DMA Core」

1

超初心者用

I117 II I117 PROGRAMMING PRACTICE II SOFTWARE DEVELOPMENT ENV. 1 Research Center for Advanced Computing Infrastructure (RCACI) / Yasuhiro Ohara

VE-GD21DL_DW_ZB

¥×¥í¥°¥é¥ß¥ó¥°±é½¬I Exercise on Programming I [1zh] ` `%%%`#`&12_`__~~~ alse

ohp03.dvi

Java updated

Copyright SATO International All rights reserved. This software is based in part on the work of the Independen

untitled

r03.dvi


untitled

2 2 3 dbxtool dbx (GUI) dbxtool dbx C++ Oracle Solaris Studio 12.2 examples/debugger/debug_tutorial 1. cp -r /opt/solstudio12.2/examples/de

technews2012autumn

untitled

10/ / /30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20 6. http, CGI Perl 11/27 7. ( ) Perl 12/ 4 8. Windows Winsock 12/11 9. JAV

¥¤¥ó¥¿¡¼¥Í¥Ã¥È·×¬¤È¥Ç¡¼¥¿²òÀÏ Âè11²ó

たのしいプログラミング Pythonではじめよう!

チュートリアル XP Embedded 入門編

Systemwalker IT Service Management Systemwalker IT Service Management V11.0L10 IT Service Management - Centric Manager Windows

BS・110度CSデジタルハイビジョンチューナー P-TU1000JS取扱説明書

+ -

ohp08.dvi

main.dvi

New version (2.15.1) of Specview is now available Dismiss Windows Specview.bat set spv= Specview set jhome= JAVA (C:\Program Files\Java\jre<version>\

SCM (v0201) ( ) SCM 2 SCM 3 SCM SCM 2.1 SCM SCM SCM (1) MS-DOS (2) Microsoft(R) Windows 95 (C)Copyright Microsoft Corp


Transcription:

( ) Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. Part No: 816 4038 11 2002 12

Copyright 2002 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 U.S.A. All rights reserved. Berkeley BSD UNIX X/Open Company, Ltd. Federal Acquisitions: Commercial Software Government Users Subject to Standard License Terms and Conditions. HG L HG-MincyoL-Sun HG B HG-GothicB-Sun HG W3@X12 Sun Sun Microsystems docs.sun.com AnswerBook AnswerBook2 Sun Microsystems, Inc. ( Sun Microsystems ) Solaris Sun Microsystems SPARC SPARC International, Inc. SPARC Sun Microsystems OPENLOOK OpenBoot JLE Wnn Wnn6 Copyright OMRON Co., Ltd. 1995-2000. All Rights Reserved. Copyright OMRON SOFTWARE Co.,Ltd. 1995-2002 All Rights Reserved. ATOK ATOK Server/ATOK12 ATOK Server/ATOK12 (7 /5 ) ( ) 98 1997 Unicode Unicode, Inc. OPEN LOOK Sun Graphical User Interface Sun Microsystems Sun Microsystems Xerox Sun Microsystems Xerox Xerox Graphical User Interface Sun Microsystems DtComboBox DtSpinBox Interleaf, Inc. ( 1993 Interleaf, Inc.) ( ) ( ) : Common Desktop Environment: Internationalization Programmer s Guide Part No: 816-0280-10 Revision A 020924@4660

7 1 13 13 15 15 16 17 18 20 20 20 21 23 23 24 27 28 28 28 (ICCC) 28 2 31 31 32 3

33 34 35 36 charset 37 37 39 40 XmString ( ) 40 43 43 DrawingArea 43 43 Text TextField 44 Text[Field] 45 XIM 47 XIM 48 XIM 49 49 50 50 50 51 51 XPG4/ UNIX 51 XPG4 51 Xlib 53 Xlib 53 54 54 56 56 Text 57 ( ) 58 ( ) 58 59 60 4 ( ) 2002 12

3 65 65 iconv 66 68 69 iconv 69 X (ICCCM) 70 70 71 72 72 73 ISO EUC 75 4 Motif 81 81 83 83 84 86 87 87 90 Text TextField 93 93 95 96 98 98 UIL default_charset 101 UIL 104 5 Xt Xlib 107 107 X 107 108 Xt 110 5

113 114 114 115 116 Xlib 116 124 X 124 126 126 127 XmClipboard 127 128 129 A 131 131 132 132 133 133 135 136 137 138 141 6 ( ) 2002 12

( ) 7

1 2 3 4 (UIL) 5 A 8 ( ) 2002 12

ISO C:ISO/IEC 9899: 1990, Programming Languages --- C (ANS X3.159-1989, Programming Language C ) ISO/IEC 9945-1: 1990, (IEEE Standard 1003.1) Information Technology - Portable Operating System Interface (POSIX) - Part 1: System Application Program Interface (API) [C Language] ISO/IEC DIS 9945-2: 1992, (IEEE Standard 1003.2-Draft) Information Technology - Portable Operating System Interface (POSIX) - Part 2: Shell and Utilities OSF/Motif 1.2: OSF Motif 1.2 Programmer s Reference Revision 1.2, Open Software Foundation, Prentice Hall, 1992, ISBN: 0-13-643115-1 Scheifler, W. R., X Window System, The Complete Reference to Xlib, Xprotocol, ICCCM, XLFD -XVersion 11, Release 5 Digital Press, 1992, ISBN: 1-55558-088-2 X/Open: X/Open CAE Specification System Interface Definition Issue 4, X/Open Company Ltd., 1992, ISBN: 1-872630-46-4 X/Open: X/Open CAE Specification Commands and Utilities Issue 4, X/Open Company Ltd., 1992, ISBN: 1-872630-48-0 X/Open: X/Open CAE Specification System Interface and Headers Issue 4, X/Open Company Ltd., 1992, ISBN: 1-872630-47-2 X/Open: X/Open Internationalization Guide X/Open Company Ltd., 1992, ISBN: 1-872630-20-0 ISO/IEC 10646-1: 1993 (E): Information Technology - Universal Multi-Octet Coded Character Set (UCS). Part 1: Architecture and Basic Multilingual Plane Sun http://docs.sun.com Sun 9

P 1 AaBbCc123 AaBbCc123 AaBbCc123.login ls -a system% system% su password: rm filename 5 \ sun% grep ^#define \ XV_VERSION_STRING C system% command y n [filename] Bourne Korn system$ command y n [filename] system# command y n [filename] [] filename 10 ( ) 2002 12

( ) 1 ( : Shift ) Enter Return (-) 2 Ctrl-D Control D 11

12 ( ) 2002 12

1 13 17 18 23 23 28 (ICCC) 1 1 1 13

( ) (UID) ( ) 1 1 1 1 14 ( ) 2002 12

(L10N) X/Open CAE Specification System Interface Definition Issue 4, X/Open Company Ltd., 1992, ISBN: 1-872630-46-4 X/Open ASCII X/Open / ( ) ( ) POSIX ( 1 15

) X/Open X/Open 2 X/Open Portability Guide (XPG2) Hewlett-Packard X/Open XPG4 X Window System, The Complete Reference to Xlib, Xprotocol, ICCCM, XLFD - X Version, Release 5 Digital Press, 1992, ISBN 1-55558-088-2. ANSI/IEEE Standard Portable Operating System Interface for Computer Environments IEEE. OSF TM Motif 1.2 Programmer s Reference Revision 1.2, Open Software Foundation, Prentice Hall, 1992, ISBN 0-13-643115-1. X/Open CAE Specification Commands and Utilities Issue 4, X/Open Company Ltd., 1992, ISBN 1-872630-48-0. ( ) 1 2 ( ) 16 ( ) 2002 12

1 2 ( $LANG xnllanguage ) LC_ALL LC_CTYPE LANG 5 110 Xt LC_CTYPE LC_CTYPE 1 17

XtSetLanguageProc() ( setlocale()) setlocale() XtSetLanguageProc () XtSetLanguageProc() setlocale() ( ) setlocale() $LC_* $LANG setlocale (LC_ALL, ) 1 1 1 1 1 2 3 LC_CTYPE: LC_ALL LC_TYPE LANG LC_COLLATE: LC_ALL LC_COLLATE LANG LC_TIME: LC_ALL LC_TIME LANG LC_NUMERIC: LC_ALL LC_NUMERIC LANG LC_MONETARY: LC_ALL LC_MONETARY LANG LC_MESSAGES: LC_ALL LC_MESSAGES LANG (-xnllanguage) (xnllanguage) RESOURCE_MANAGER RESOURCE_MANAGER X XFontStruct() XFontStruct() 18 ( ) 2002 12

Xlib XFontStruct() X (XLFD) XLFD charset ( ) charset charset XLFD CharSetRegistry CharSetEncoding ( : Xlib XFontSet()) 1 1 charset XFontSet() XLFD XLFD 1 XLFD XLFD charset 1 libxm Toolkit (XmFONTLIST_DEFAULT_TAG) libxm Toolkit XmString() 1 ( ) ( 1 ) libxm XmText() XmString() 1 Motif :( ) ( ) 1 19

(charset) X (XLFD) XLFD 14 -dt-application-medium-r-normal-serif-*-*-*-*-p-*-iso8859-1 -*-r-*-14-*iso8859-1 (XLFD ) XLFD ( ) ja_jp 3 ( ) XLFD -dt-mincho-medium-r-normal--14-*-*-m-*-jisx0201.1976-0, -dt-mincho-medium-r-normal--28-*-*-*-m-*-jisx0208.1983-0: XLFD -dt-*-medium-*-24-*-m-*: 2 1 20 ( ) 2002 12

(bold() italic() bigbold() ) XmString() XmFONTLIST_DEFAULT_TAG = ( ) =bigbold() = : ( ) :bigbold() :,( ) ;( ) 1 -*-r-*-14-*:, # default font list entry -*-b-*-18-*:bigbold # Large Bold fonts XLFD charset XLFD charset charset XLFD XLFD 1 21

charset charset charset CharSetRegistry CharSetEncoding XLFD charset 1 charset 1 XLFD Xlib charset 1 charset charset JIS ASCII ~( ) \( ) ( ) ( ) Xlib JIS ISO8859-1 (XLFD CharSetRegistry CharSetEncoding ) charset XLFD XLFD XLFD charset charset charset 1 charset ISO8859-1 JISX0208.1983 JISX0201.1976 GB2312-1980.0 charset "-dt-mincho-medium-r-normal-*-*-*-*-*-m-*-jisx0208.1983-0,\ -dt-mincho-medium-r-normal-*-*-*-*-*-m-*-jisx0201.jisx0201\.1976-1,\ -dt-song-medium-r-normal-*-*-*-*-*-m-*-gb2312-1980.0,\ -*-default-bold-r-normal-*-*-*-*-m-*-iso8859-1" charset "-dt-fixed-medium-r-normal-*-*-*-*-*-m-*,\ -dt-fixed-medium-r-normal-*-*-*-*-*-m-*,\ -dt-fixed-medium-r-normal-*-*-*-*-*-m-*,\ -*-Courier-Bold-R-Normal-*-*-*-*-M-*" XLFD "-*-*-*-R-Normal--*-*-*-*-*-M-*" 22 ( ) 2002 12

Xlib Motif Xm Toolkit XmText[Field] () dtterm() libxm Toolkit XmNinputMethod() 1 23

1 3 VendorShell ( ) ( ) 4 OffTheSpot OverTheSpot ( ) Root None 24 ( ) 2002 12

OffTheSpot OffTheSpot 1 4 1 4 VendorShell OffTheSpot ( ) OffTheSpot VendorShell() XmNpreeditType() XtSetValues() XmNpreeditType() TopLevelShell() ApplicationShell() DialogShell() 3 VendorShell() OverTheSpot ( ) OverTheSpot ( Text ) OverTheSpot 1 1 25

Text 1 5 OverTheSpot VendorShell() XmNpreeditType() XtSetValues() XmNpreeditType() TopLevelShell() ApplicationShell() DialogShell() 3 VendorShell() 1 5 VendorShell OverTheSpot ( ) Root Root Root OffTheSpot 1 6 26 ( ) 2002 12

1 6 VendorShell Root ( ) OverTheSpot OffTheSpot VendorShell Root OffTheSpot VendorShell() VendorShell VendorShell 1 27

1 3 JIS VendorShell() MainWindow MainWindow (RowColumn() ) VendorShell() MainWindow() Motif 1 ( ) (ICCC) (ICCC) 2 ICCC 2 2 ( 1 (JIS) ) 28 ( ) 2002 12

2 ICCC 2 COMPOUND_TEXT (7 ASCII ) ISO8859-1 XA_STRING COMPOUND_TEXT XA_STRING libxm 1 29

30 ( ) 2002 12

2 1 1 1 31 32 39 43 49 51 51 54 60 ( $LANG) Xm (libxm) Xm ( XtAppInitialize()) XtSetLanguageProc() 31

setlocale() ( LC_ALL LC_CTYPE LANG ) LC_CTYPE X Xm LC_MESSAGES 49 LC_CTYPE ( UIL ( ) ISO8859-1 UNIX (EUC)) X11R5 ( ) XtSetLanguageProc() setlocale() XSupportsLocale() XSetLocaleModifiers() X Windows System 2 1 49 32 ( ) 2002 12

1 charset 1 XLFD 2 2 -adobe-courier-medium-r-normal--24-240-75-75-m-150-iso8859-1 XLFD 2 iso8859 1 ISO8859-1 ISO8859-1 charset charset app-defaults app-defaults XLFD Xlib XLFD charset Xlib charset XFontset X11R5 (API) 2 33

Xlib XFontSet() 1 charset XLFD XFontSet *fontset 54 (XmString ) Xlib Xt Xt /* pardon the double negative... means "If using Xt..." */ #ifndef NO_XT typedef struct { XFontSet fontset; char *foo; } ApplicationData, *ApplicationDataPtr; static XtResource my_resources[] = { { XtNfontSet, XtCFontSet, XtRFontSet, sizeof (XFontSet), XtOffset (ApplicationDataPtr, fontset), XtRString, "*-18-*"}} #endif /* NO_XT */... #ifdef NO_XT fontset = XCreateFontSet (dpy, "*-18-*", &missing_charsets, &num_missing_charsets. &default_string); if (num_missing_charsets > 0) { (void) fprintf(stderr, "&s: missing charsets.\n", program_name); XFreeStringList(missing_charsets); } #else XtGetApplicationResources(toplevel, &data, my_resources, XtNumber(my_resources), NULL, 0); fontset = data.fontset; #endif /* NO_XT */ 34 ( ) 2002 12

charset ( XFontStruct) charset XFontStruct XFontStruct *font XmString XmFontList 1 ( Bold Large Small ) XmString 2 1 2 1 XLFD FontEntry *fontset: (Xlib) *fontlist : (Motif) app_foo*fontlist: -adobe-courier-medium-r-normal--24-240-75-75-m-150-*: fontlist 1 24 Adobe Courier app_foo*fontlist: -adobe-courier-medium-r-normal--18-*; *-gothic-*-18-*: fontlist 18 Courier 18 Gothic Motif DrawingArea 1 2 35

XmFONTLIST_DEFAULT_TAG XmFONTLIST_DEFAULT_TAG codeset XmFONTLIST_DEFAULT_TAG XFontSet FontList2FontSet( XmFontList fontlist) { XmFontContext context; XmFontListEntry next_entry; XmFontType type_return = XmFONT_IS_FONT; char* font_tag; XFontSet fontset; XFontSet first_fontset; Boolean have_font_set = False; if (!XmFontListInitFontContext(&context, fontlist)) { XtWarning( fl2fs: can t create fontlist context... ); exit 0; } while ((next_entry = XmFontListNextEntry(context)!= NULL) { fontset = (XFontSet) XmFontListEntryGetFont(next_entry, &type_return); if (type_return == XmFONT_IS_FONTSET ) { font_tag = XmFontListEntryGetTag(next_entry); if (!strcmp(xmfontlist_default_tag, font_tag) { return fontset; } /* Remember the 1st fontset, just in case... */ if (!have_font_set) { first_fontset = fontset; have_font_set = True; } } } if (have_font_set) return first_fontset; return (XFontSet)NULL; } Xlib API XCreateFontSet() XLocaleOfFontSet() XFontsOfFontSet() 36 ( ) 2002 12

XBaseFontNameListOfFontSet() XFreeFontSet() Motif FontList API XmFontListEntryCreate() XmFontListEntryAppend() XmFontListEntryFree() XmFontListEntryGetTag() XmFontListEntryGetFont() XmFontListEntryLoad() charset X font charset XLFD 15 FAMILY_NAME %F WEIGHT_NAME %W SLANT %S ADD_STYLE %A SPACING %SP (POINT_SIZE) -dt-%f-%w-%s-normal-%a-*-*-*-%sp-* (app-defaults) 2 37

ISO8859-1 FOUNDRY dt FAMILY_NAME interface user interface system application WEIGHT_NAME SLANT ADD_STYLE SPACING medium bold r i sans serif serif p m ISO8859 ISO8859-1 JIS FOUNDRY dt FAMILY_NAME Gothic Mincho WEIGHT_NAME medium bold SLANT r ADD_STYLE * SPACING m KSC FOUNDRY dt FAMILY_NAME Totum Pathang WEIGHT_NAME medium bold SLANT r ADD_STYLE * SPACING m 38 ( ) 2002 12

FAMILY_NAME 2 Totum Kodig Dotum Pathang Myungo Myeongjo CNS FOUNDRY dt FAMILY_NAME Sung Kai WEIGHT_NAME medium bold SLANT r ADD_STYLE * SPACING m GB FOUNDRY dt FAMILY_NAME Song Kai WEIGHT_NAME medium bold SLANT r ADD_STYLE * SPACING m Motif Xlib 2 39

Xlib (char*) XmbDrawImageString() XmbDrawString() XmbDrawText() Xlib (wchar_t*) XwcDrawImageString() XwcDrawString() XwcDrawText() Xlib (char*) XExtentsOfFontSet() XmbTextEscapement() XmbTextExtents() XmbTextPerCharExtents() Xlib (char_t*) XExtentsOfFontSet() XwcTextEscapement() XwcTextExtents() XwcTextPerCharExtents() XmString ( ) Xm XmStringCreateLocalized() XmString XmFONTLIST_DEFAULT_TAG XmStringCreate() XmFONTLIST_DEFAULT_TAG XmStringConvertToCT() XmFONTLIST_DEFAULT_TAG Xm 40 ( ) 2002 12

XmString XmFONTLIST_DEFAULT_TAG XmFontList CreateFontList( Display* dpy, char* pattern) { SmFontListEntry font_entry; XmFontList fontlist; font_entry = XmFontListEntryLoad( dpy, pattern, XmFONT_IS_FONTSET, XmFONTLIST_DEFAULT_TAG); fontlist = XmFontListAppendEntry(NULL, font_entry); /* XmFontListEntryFree(font_entry); */ if ( fontlist == NULL ) { XtWarning( fl2fs: can t create fontlist... ); exit (0); } return fontlist; } int main(argc,argv) int argc; char **argv; { Display *dpy; /* Display */ XtAppContext app_context;/* Application Context */ XmFontList fontlist; XmFontSet fontset; XFontStruct** fontstructs; char** fontnames; int i,n; char *progrname; /* program name without the full pathname */ if (progname=strrchr(argv[0], / )){ progname++; } else { progname = argv[0]; } /* Initialize toolkit and open display. */ XtSetLanguageProc(NULL, NULL, NULL); XtToolkitInitialize(): 2 41

app_context = XtCreateApplicationContext(); dpy = XtOpenDisplay(app_context, NULL, progname, XMdemos, NULL, 0, &argc, argv); if (!dpy) { XtWarning( fl2fs: can t open display, exiting... ); exit(0); } fontlist = CreateFontList(dpy, argv[1] ); fontset = FontList2FontSet( fontlist ); /* * Print out BaseFontNames of Fontset */ n = XFontsOfFontSet( fontset, &fontstructs, &fontnames); printf( Fonts for %s is %d\n, argv[1], n); } for (i = 0 ; i < n ; ++i ) printf( font[%d} - %s\n, i,\ fontnames[i] ); exit(1); Xm_FONTLIST_DEFAULT_TAG fontlist XmFONTLIST_DEFAULT_TAG labelstring: Japanese string *fontlist: -dt-interfacesystem-medium-r-normal-l*-*-*-*-*-*-*: XmString XmStringCreateLocalized() XmStringDraw() XmStringDrawImage() XmStringDrawUnderline() XmString() XmStringCreateLtoR() XmStringSegementCreate() 42 ( ) 2002 12

Xlib Xlib XIM Text DrawingArea XmIm VendorShell XmIm Xlib XmIm Xlib PostScript TM 2 43

Xlib XNPreeditCallbacks XIM XIM Text TextField Text TextField Text[Field] XmTextField XmText XmText XmTextPosition() XmTextGetMaxLength() Text TextField XmNcolumns Text i 1 W 7 XmNcolumns 10 Text 10 Text Core W 10 i 70 XmNcolumns Text TextField 58 ( ) 44 ( ) 2002 12

Text[Field] TextField Text DrawingArea DrawingArea Xlib XIM Motif 1.2 XmIm XmIm XmIm Motif VendorShell XmIm Motif 1.2 XmIm Motif 1.2 OSF Motif 2.0 XmIm Motif 1.2 XmIm Motif 1.2 XmIm Xlib API 47 XIM Motif 1.2 XmIm xm.h XmImRegister() XmImSetValues() XmImSetFocusValues() XOpenIM() XIC XIC XmImUnsetFocus() 2 45

XmImMbLookupString() XmbLookupString() Xm 1 XmbLookupString() XmImUnregister() ( ) XmImSetValues() XmImSetFocusValues() ( ) VendorShell XmImSet[Focus]Values() XmNbackground XmNforeground XmNbackgroundPixma XmNspotLocation XmNfontList XmNlineSpace Pixel Pixel Pixmap XPoint Motif fontlist int ( ) XmIm XtSetLanguageProc(NULL, NULL, NULL) XmImRegister(widget) XmImSetValues() XIC arg_list number_args arglist XtSetArg() XtAddEventHandler() FocusChangeMask XmImSetFocusValues() 46 ( ) 2002 12

XmImUnsetFocus() DestroyCallback XmImUnregister() 1 ( spotlocation) XmImSetValues() XIM XIM XOpenIM() XCloseIM() XGetIMValues() XDisplayOfIM() XLocaleOfIM() XCreateIC() XDestroyIC() XIMOfIC() XSetICValues() XOpenIM() Xlib XNQueryInputstyle ( ) 0 X11R5 2 47

XGetICValues() 0 X11R5 XIM XIM XmbLookupString() XwcLookupString() XmbResetIC() XwcResetIC() XFilterEvent() XSetICFocus() XUnsetICFocus() char* NULL wchar_t* 48 ( ) 2002 12

XIM X (XIM) 3 1 2 XIM XIM 3 XIM XIM : PreeditStartCallback XXIM : StatusStartCallback XIM : PreeditCaretCallback XIM : GeometryCallback XIM Preedit Callback: PreeditDoneCallback XIM Status Callbacks: StatusDoneCallback XIM Preedit Callback: PreeditDrawCallback XIM Status Callbacks: StatusDrawCallback 2 3 2 49

GUI (libxt) Xm LC_MESSAGES XtSetLanguageProc() XPG4 System V Release 4 (SVR4) 50 ( ) 2002 12

( ) 1 ( ) XPG4 Xlib 2 XPG4/ UNIX XPG4 XPG4/ UNIX catopen() catgets() catclose() XPG4 3 1 2 3 2 51

example.msg $quote $ every message catalog should have a beginning set number. $set 1 This is the set 1 of messages 1 Hello world\n 2 Good Morning\n 3 example: 1000.220 Read permission is denied for the file %s.\n $set 2 1 Howdy\n example.cat gencat gencat example example.msg #include <locale.h> #include <nl_types.h> char *MF_EXAMPLE = "example.cat" main() { nl_catd catd; int error; (void)setlocale(lc_all, ); catd = catopen(mf_example, 0); /* Get the message number 1 from the first set.*/ printf( catgets(catd,1,1, Hello world\n ) ); /* Get the message number 1 from the second set.*/ printf( catgets(catd, 2, 1, Howdy\n ) ); /* Display an error message.*/ } printf( catgets(catd, 1, 4, example: 100.220 Permission is denied to read the file %s.\n ), MF_EXAMPLE); catclose(catd); 52 ( ) 2002 12

Xlib Xlib (I/O) XrmPutFileDatabase() XrmGetFileDatabase() XrmGetStringDatabase() XrmLocaleOfDatabase() X Window System, The Complete Reference to Xlib, Xprotocol, ICCCM, XLFD - X Version 11, Release 5 Xlib I/O ( ) XmLabel XmPushButton XmNlabelString XmMessageBox XmNmessageString /usr/lib/x11/%l/app-defaults XENVIRONMENT %L 2 53

2 2 XmString color char* Motif 1.2 Reference Manual app-defaults XmDrawnButton XmLabelWidget acceleratortext 2 2 Core *background: 1 XmCommand XmCommand XmFileSelectionBox XmFileSelectionBox XmFileSelectionBox XmFileSelectionBox XmLabel[Gadget] XmLabel[Gadget] XmLabel[Gadget] *command: *promptstring: *dirlistlabelstring: *filelistlabelstring: *filterlabelstring: *nomatchstring: *accelerator: *acceleratortext: *labelstring: 54 ( ) 2002 12

2 2 XmLabel[Gadget] XmList XmManager XmMessageBox XmMessageBox XmMessageBox XmMessageBox ( ) *mnemonic: *stringdirection: *stringdirection: *cancellabelstring: *helplabelstring: *messagestring: *oklabelstring: XmPrimitive *foreground: 1 XmRowColumn XmRowColumn XmRowColumn XmRowColumn(SimpleMenu*) XmRowColumn XmRowColumn XmRowColumn XmRowColumn XmSelectionBox XmSelectionBox XmSelectionBox XmSelectionBox XmSelectionBox XmSelectionBox XmSelectionBox *labelstring: *menuaccelerator: *mnemonic: *buttonaccelerators: *mnemonic: *mnemonic: *mnemonic: *mnemonic: *applylabelstring: *cancellabelstring: *helplabelstring: *listlabelstring: *oklabelstring: *selectionlabelstring: *textaccelerators: 1. X XmRowColumn XmRowColumn 2 55

XmCreateSimpleMenu() RowColumn *buttonaccelerator *buttonacceleratortext *buttonmnemonics *optionlabel *optionmnemonic RowColumn 2 2 2 3 app-defaults XmStringList 2 3 XmList XmList XmSelectionBox *items: *selecteditems: *listitems: 2 4 *title: *iconname: char * XmString 2 4 TopLevelShell *iconname: TopLevelShell *iconnameencoding: 1 WmShell *title: WmShell *titleencoding: 1 56 ( ) 2002 12

2 4 ( ) XmBulletinBoard XmScale *dialogtitle: *titlestring: 1. XtSetLanguageProc ( ) Text 2 5 Text[Field] 2 5 Text[Field] XmSelectionBox *textcolumns: 1 XmSelectionBox *textstring: XmText *columns: 1 XmText XmText XmText XmText *modifyverifycallback: *modifyverifycallbackwcs: *value: *valuewcs: XmTextField *columns: 1 XmTextField XmTextField XmTextField XmTextField *modifyverifycallback: *modifyverifycallbackwcs: *value: *valuewcs: 1. *columns Text[Field] 10 10 2 57

( ) 2 6 ( ) 2 6 VendorShell VendorShell *inputmethod: *preedittype: ( ) 2 7 2 7 Core WMShell XmDragIcon XmDropSite XmLabel[Gadget] XmLabel[Gadget] XmMessageBox XmPushButton[Gadget] XmToggleButton[Gadget] XmToggleButton[Gadget] *backgroundpixmap: *iconpixmap: *pixmap: *animation[mask Pixmap]: *labelinsensitivepixmap: *labelpixmap: *symbolpixmap: *armpixmap: *selectinsensitivepixmap: *selectpixmap: 58 ( ) 2002 12

XmGetPixmapByDepth() XmGetPixmapByDepth() X XmGetPixmapByDepth() XtResolvePathname() XtResolvePathname() XmGetPixmapByDepth() XBMLANGPATH XBMLANGPATH XAPPLRESDIR XmGetPixmapByDepth() $XAPPLRESDIR XBMLANGPATH XAPPLRESDIR XmGetPixmapByDepth() %B XtResolvePathname () XmGetPixmapByDepth() %B XtResolvePathname() XtResolvePathname() %L %l %t %c ( ) %T %S XmGetPixmap() XmGetPixmap() ( XmGetPixmap() ) 2 8 XmFontList XmFontList ( ) 2 59

2 8 VendorShell VendorShell VendorShell VendorShell XmBulletinBoard XmBulletinBoard XmBulletinBoard XmBulletinBoard XmLabel[Gadget] XmList XmMenuShell XmMenuShell XmMenuShell XmText XmTextField *buttonfontlist: *defaultfontlist: *labelfontlist: *textfontlist: *buttonfontlist: *defaultfontlist: *labelfontlist: *textfontlist: *fontlist: *fontlist: *buttonfontlist: *defaultfontlist: *labelfontlist: *fontlist: *fontlist: 2 9 1 1 4 60 ( ) 2002 12

2 9 mb <-> wcwc mbtowc mbstowcs wctomb wcstombs isalpha is* tolower toupper isalpha isw* wctype towlower towupper localeconv nl_langinfo strtol strtod strftime strptime strfmon strcat strcpy strncat strncpy wcstol wcstod wcstoi wcsftime wcscat wcsncat wcscpy wcsncpy strcoll wcscoll wcsxfrm strlen mblen wcscmp wcsncmp 2 61

2 9 ( ) strchr strcspn strpbrk strrchr strspn strtok wcschr wcscspn wcspbrk wcsrchr wcsspn wcstok wcswcs wcscspn I/O wcwidth 1 wcswidth I/O printf vprintf sprintf vsprint fprintf vfprint printf vprintf sprintf vsprint frpintf vfprint I/O scanf sscanf fscanf scanf sscanf fscanf I/O getc gets putc puts ungetc fgetwc fgetws fputwc fputws ungetwc gettxt catopen catgets catclose 62 ( ) 2002 12

2 9 ( ) iconv_open iconv iconv_close 1. (GUI) 40 2 63

64 ( ) 2002 12

3 65 69 71 72 8 8 ftp 3 8 7 JIS ( ) 7 8 7 8 7 ASCII 65

iconv() 7 1 8 POSIX.2 uuencode uudecode 8 7 Xlib 7 ISO2022 MIME (Multipurpose Intrenet Message Extensions: ) base64 2 8 iconv() 8 7 7 iconv ( ) 8 7 iconv_open() iconv() iconv_close() iconv() iconv_open() iconv() 7 8 7 8 8 8 7 iconv() cd =iconv_open(locale_codeset, uuencoded ); 66 ( ) 2002 12

cd = iconv_open(uucode, locale_codeset ); 8 cd = iconv_open(locale_codeset, 8-bitinterchange ); cd = iconv_open(8-bitinterchange, locale_codeset ); 7 cd = iconv_open(locale_codeset, 7-bitinterchange ); cd = iconv_open(7-bitinterchange, locale_codeset ); locale_codeset nl_langinfo()(codeset) nl_langinfo() (CODESET) 3 1 iconv() 3 1 iconv ( : XYZ) 7 8 7 8 XYZ 7 ISO2022 8 ISO2022, ISO10646 OK OK OK 1 OK 3 67

3 1 iconv ( ) 7 uucode OK OK 8 base64 OK 1. ( ) ( ) 2 / 16 ESC$(B ESC(B 8 ASCII 0x43 EBCDIC 2 1 (ISO8859 ) ( PC Shift-JIS (SJIS) ) 1 1 68 ( ) 2002 12

PC PC ISO/EUC ( / UNIX ) XPG4 iconv() iconv() iconv 1 XPG4 iconv() iconv_open() iconv () iconv_close() iconv_open() iconv() iconv_close() iconv() X/Open XPG4 3 69

X (ICCCM) Xlib X ICCCM XmbTextPropertyToTextList() XmbTextListToTextProperty() ICCCM XwcTextPropertyToTextList() XwcTextListToTextProperty() libxm() XmStringConvertToCT() XmStringConvertFromCT() XmString bold() XmStringConvertToCT() 126 XICCEncodingStyle() XCompundTextStyle() XmbTextListToTextProperty() XwcTextListToTextProperty() WMShell() XmNtitle() XmNtitleEncoding() TopLevelShell() XmNiconName() XmNiconNameEncoding() XmBulletinBoard() XmNdialogTitle() #include Widget <nl_types.h> toplevel; 70 ( ) 2002 12

Arg int XTextProperty char nl_catd al[10]; ac; title; *localized_string; fd; XtSetLanguageProc( NULL, NULL, NULL ); fd = catopen( "my_prog", 0 ); localized_string = catgets(fd, set_num, mes_num, "defaulttitle"); XmbTextListToTextProperty( XtDisplay(toplevel), &localized_string, 1, XCompoundTextStyle, &title); ac = 0; XtSetArg(al[ac], XmNtitle, title.value); ac++; XtSetArg(al[ac], XmNtitleEncoding, title.encoding); ac++; XtSetValues(toplevel, al, ac); XmbSetWMProperties() XICCEncodingStyle (email) SMTP ( ) SMTP 7 ( ) MIME 8 7 MIME (base64 ) RFC (Request for Comments) 1521 MIME 3 71

1 ASCII JIS ( ) ISO2022 16 16 ISO ( ) ( ) ASCII 7 ASCII 7 ASCII 7 ASCII 72 ( ) 2002 12

7 ASCII ISO646 (0-9) 2 (GL) 0-7 (GR) 8-F 2 ISO C0 C1 PC C1 6 ( 3 1 ) 3 73

3 1 ISO ISO646-IRV C0 1 ISO 6 1 8 191 1 74 ( ) 2002 12

8 16 32 EUC ( UNIX ) EUC ISO2022 7 8 EUC EUC EUC EUC eucjp EUC JIS (CS0) ISO646 (MSB) 1 1 ( ) 3 (CS2) SS2 ( 2 0x8e) EUC 3 SS2 4 (CS3) SS3 ( 3 0x8f) EUC 4 SS3 ISO EUC ISO ( ) ISO646-IRV ISO8859-1 ISO8859-x eucjp euctw euckr 3 75

ISO646-IRV ISO646-IRV 7 ASCII ISO8859-1 ISO8859-1 ISO ANSI ( ) ECMA ( ) ISO8859 7 ASCII ISO8859 ISO8859-1 ISO Latin-1 2 ISO646-IRV 7 ASCII ISO8859-1 ( ) ASCII GR ( ) ISO8859 ISO8859 ASCII ISO8859-2 No.2-76 ( ) 2002 12

ISO8859-5 / ( ) ISO8859-6 / ISO8859-7 / ISO8859-8 / ISO8859-9 / 3 77

eucjp EUC (2 3 ) ISO2022 JIS EUC 3 2 eucjp CS cs0 0xxxxxxx ASCII cs1 1xxxxxxx 1xxxxxxx JIS X0208-1990 cs2 0x8E 1xxxxxxx JIS X0201-1976 cs3 0x8F 1xxxxxxx 1xxxxxxx JIS X0212-1990 JIS X0208-1990 (1990 ) 147 10 83 86 52 48 66 32 6355 JIS X0201 63 JIS X0212-1990 (1990 ) 21 21 26 27 171 5801 euctw EUC (2 4 ) EUC ISO2022 EUC CNS (Chinese National Standard) 3 3 78 ( ) 2002 12

3 3 euctw CS cs0 0xxxxxxx ASCII cs1 1xxxxxxx 1xxxxxxx CNS 11643.1992 - plane 1 cs2 0x8EA2 1xxxxxxx 1xxxxxxx CNS 11643.1992 - plane 2 cs3 0x8EA3 1xxxxxxx 1xxxxxxx CNS 11643.1992 - plane 3 0x8EB0 1xxxxxxx 1xxxxxxx CNS 11643.1992 - Plane 16 CNS 11643-1992 16 8836 (94 94) 1 7 3 4 CNS 11643-1992 16 3 4 CNS 11643-1992 16 EUC 1 6085 A1A1-FDCB 2 2 7650 8EA2 A1A1-8EA2 F2C4 3 Exec. Yuen EDP 1 6148 8EA3 A1A1-8EA3 E2C6 4 RIS 2 7298 8EA4 A1A1-8EA4 EEDC 5 MOE 3 8603 8EA5 A1A1-8EA5 FCD1 6 MOE 1 6388 8EA6 A1A1-8EA6 E4FA 7 MOE 2 6539 8EA7 A1A1-8EA7 E6D5 8 0 8EA8 A1A1-8EA8 FEFE 9 0 8EA9 A1A1-8EA9 FEFE 10 0 8EAA A1A1-8EAA FEFE 11 0 8EAB A1A1-8EAB FEFE 12 (UDC) 0 8EAC A1A1-8EAC FEFE 13 UDC 0 8EAD A1A1-9EAD FEFE 14 UDC 0 8EAE A1A1-8EAE FEFE 15 UDC 0 8EAF A1A1-8EAF FEFE 16 UDC 0 8EB0 A1A1-8EB0 FEFE 1. EDP: 2. RIS: 3. MOE: 3 79

euckr EUC ( 3 5 ) ISO2022 KSC ( ) EUC 3 5 euckr CS cs0 0xxxxxxx ASCII cs1 1xxxxxxx 1xxxxxxx KS C 5601-1992 cs2 cs3 KSC 5601-1992 (1992 ) 432 30 94 52 48 27 169 66 68 2344 4888 1 80 ( ) 2002 12

4 Motif Motif 81 83 87 93 98 UID ( ) (XPG3 ) 1 1 (POSIX LANG LC_*) xnllanguage XtSetLanguageProc() setlocale() Xt XtResolvePathname() UIL ( ) 81

Xt (XtAppInitialize () ) XtSetLanguageProc() Xt Xt setlocale(lc_all, language); language xnllanguage xnllanguage ( ) xnllanguage (POSIX LANG) XSupportsLocale() C XSetLocaleModifiers() ANSI C setlocale(lc_all, NULL); XtSetLanguageProc() XtSetLanguageProc(NULL, NULL, NULL);.. toplevel = XtAppInitialize(...); Xt XtSetLanguageProc() Xt xnllanguage xnllanguage Xt LANG Xt 82 ( ) 2002 12

Motif ( ) {tag, element } element char font1[] = "-adobe-courier-medium-r-normal--10-100-75-75-m-60"; font_list_entry = XmFontListEntryLoad (displayid, font1, XmFONT_IS_FONTSET, "font_tag"); XmFontListEntryLoad() 4 displayid fontname nametype tag (nametype ) fontname nametype XmFONT_IS_FONTSET XmFontListEntryLoad() fontname nametype 4 Motif 83

XmFONT_IS_FONT XmFontListEntryLoad() fontname font_list_entry XmFontList font_list; XmFontListEntry font_list_entry;.. font_list = XmFontListAppendEntry (NULL, font_list_entry); XmFontListEntryFree (font_list_entry); XmFontListAppendEntry() XmFontListEntryCreate() XFontSet font2; char *font_tag; XmFontListEntry font_list_entry2;.. font_list_entry2 = XmFontListEntryCreate (font_tag, XmFONT_IS_FONTSET, (XtPointer)font2); font2 XCreateFontSet() XFontSet XmFontListEntryCreate() font_tag XmFONT_IS_FONTSET font2 {tag, element} XmFontListAppendEntry() font_list = XmFontListAppendEntry(font_list, font_list_entry2); XmFontListEntryFree(font_list_entry2); 84 ( ) 2002 12

=( ) = ( ), ( ) =( ) :( ) ;( ),( ) XmFONTLIST_DEFAULT_TAG *fontlist: fixed *fontlist: \ -adobe-courier-medium-r-normal--10-100-75-75-m-60-iso8859-1 *fontlist: fixed=roman, 8x13bold=BOLD 2 *fontlist: fixed, 8x13bold=BOLD XmFONTLIST_DEFAULT_TAG Xlib *fontlist: -dt-application-medium-r-normal-*-m*-*-*-*-m-* 4 Motif 85

Xlib MY_TAG *fontlist: -dt-application-medium-r-normal-*-m*-*-*-*-m*:my_tag Xlib *fontlist: -dt-application-medium-r-normal-*-m*-*-*-*-m-*:,\ -dt-application-medium-r-normal-style2-m*-*-*-*-m-*:bold XmFontList() 1 XFontStruct XFontSet charset ( ) X ( ) XFontStruct XmFontList XmFontList fontentry baselist fontsetid fontname fontid := <fontentry> {, fontentry} := <fontname><fontid> <baselist><fontsetid> := <fontname>{ ; <fontname>} := : <string> <defaultfontset> := <XLFD string> := = <string> <defaultfont> XLFD string := XLFD defaultfont := NULL defaultfontset:= : NULL string := ISO646IRV XmFontList fontentry (XmString) ID (fontid fontsetid) defaultfont defaultfontset fontentry XmFontList 1 86 ( ) 2002 12

XmFONTLIST_DEFAULT_TAG XmString fontentry fontentry fontentry charset ID (fontid fontsetid) XmFontList Text TextField ( ) ( ) 4 XmFONTLIST_DEFAULT_TAG 4 Motif 87

2 XmFONTLIST_DEFAULT_TAG XmFONTLIST_DEFAULT_TAG 90 Text TextField PushButton Label XmNlabelString XmString 88 ( ) 2002 12

XmStringCreateLocalized() XmFONTLIST_DEFAULT_TAG XmNlabelString 1 #include <nl_types.h> Widget button; Args args[10]; int n; XmString button_label; nl_msg my_catd; (void)xtsetlanguageproc(null,null,null);.. button_label = XmStringCreateLocalized (catgets(my_catd, 1, 1, "default label"), XmFONTLIST_DEFAULT_TAG); /* Create an argument list for the button */ n = 0; XtSetArg (args[n], XmNlabelString, button_label); n++; /* Create and manage the button */ button = XmCreatePushButton (toplevel, "button, args, n); XtManageChild (button); XmStringFree (button_label); form1 Form *form1.button.labelstring: Push Here XmFONTLIST_DEFAULT_TAG 4 Motif 89

1. 2. XmFONTLIST_DEFAULT_TAG XmSTRING_DEFAULT_CHARSET 4 1 XmFONTLIST_DEFAULT_TAG 90 ( ) 2002 12

4 1 XmFONTLIST_DEFAULT_TAG tagb XFontSet *font1; XmFontListEntry font_list_entry; XmFontList font_list; XmString label_text; char **missing; int missing_cnt; char *del_string; char *tagb; /* Font list element tag */ char *fontx; /* Initialize to XLFD or font alias */ char *button_label; /* Contains button label text */.. font1 = XCreateFontSet (XtDisplay(toplevel), fontx, & missing, & missing_cnt, & def_string); font_list_entry = XmFontListEntryCreate (tagb, XmFONT_IS_FONTSET, (XtPointer)font1); font_list = XmFontListAppendEntry (NULL, font_list_entry); XmFontListEntryFree (font_list_entry); label_text = XmStringCreate (button_label, tagb); XCreateFontSet() XmFontListEntryCreate() XmFontListAppendEntry() NULL 4 Motif 91

XmFontListAppendEntry() font_list_entry font_list font_list 4 2 XmFONTLIST_DEFAULT_TAG 4 2 XmFONTLIST_DEFAULT_TAG Font_Set_C Font_Set_C 92 ( ) 2002 12

Text TextField Text TextField Text TextField 1. XmFONTLIST_DEFAULT_TAG 2. 3. 1 VendorShell VendorShell 1 VendorShell VendorShell VendorShell VendorShell VendorShell XmNinputMethod ( @im=alt) VendorShell 4 Motif 93

XmNinputMethod XmNinputMethod XmNinputMethod @im=modifier modifier VendorShell ( ) 1 (Text ) VendorShell VendorShell TransientShell TopLevelShell TopLevelShell Diagshell VendorShell VendorShell 1 XmText[Field] XmText[Field] VendorShell VendorShell XmText[Field] VendorShell VendorShell XmIm OffTheSpot OverTheSpot Root None Text Text 94 ( ) 2002 12

VendorShell ( EUC ( UNIX ) ) VendorShell VendorShell VendorShell Text TextField (XmBulletinBoard XmRowColumn ) Text ID VendorShell VendorShell XmNpreedetType OffTheSpot OverTheSpot 23 (TopLevelShell ) true VendorShell VendorShell VendorShell VendorShell ( ) VendorShell VendorShell 4 Motif 95

VendorShell ( ) ( 20 ) VendorShell VendorShell VendorShell 100 100 VendorShell 100 100 100 100 VendorShell 100 120 VendorShell VendorShell 100 100 100 80 VendorShell VendorShell ( ) VendorShell 4 3 1 96 ( ) 2002 12

4 3 TopLevelShell (VendorShell ) 5 XmText XmBulletinBoard ( ) OverTheSpot VendorShell 1 TopLevelShell 1 Text Text Text Text ( ) Text 4 Motif 97

UIL ( ) UIL UID ( ) UIL charset UIL ( ) font UIL UIL UID UIL cur_charset default_charset default_charset XmNlabelString = XXXXXX ; XmNlabelString = #default_charset XXXXXX ; 98 ( ) 2002 12

LANG UIL UIL *fontlist: -*-r-*-20-*: UIL 3 (FONT FONTSET FONT_TABLE) FONT FONTSET FONT_TABLE FONT XLFD FONTSET XLFD FONT FONTSET CHARACTER_SET CHARACTER_SET UIL CHARACTER_SET uil -s Uil() use_setlocale_flag XmFONTLIST_DEFAULT_TAG UIL LANG LANG XmFALLBACK_CHARSET FONT_TABLE FONT FONTSET UIL 4 Motif 99

*preedittype: OverTheSpot OffTheSpot Root None UID UIDPATH XAPPLRESDIR uil_sample (LANG en_us) $HOME/en_US uil_sample.uid uil_sample.uid UIDPATH uil_sample.uid uil_sample (LANG ja_jp) $HOME/ja_JP ( ) uil_sample.uid uil_sample.uid UIDPATH uil_sample.uid %U UID %N %L xnllanguage LC_CTYPE %l xnllanguage LC_CTYPE XAPPLRESDIR MrmOpenHierarchy() UID 1. UID 2. $UIDPATH 3. %U 4. $XAPPLRESDIR/%L/uid/%N/%U 5. $XAPPLRESDIR/%l/uid/%N/%U 6. $XAPPLRESDIR/uid/%N/%U 7. $XAPPLRESDIR/%L/uid/%U 8. $XAPPLRESDIR/%l/uid/%U 9. $XAPPLRESDIR/uid/%U 10. $HOME/uid/%U 11. $HOME/%U 12. /usr/lib/x11/%l/uid/%n/%u 100 ( ) 2002 12

13. /usr/lib/x11/%l/uid/%n/%u 14. /usr/lib/x11/uid/%n/%u 15. /usr/lib/x11/%l/uid/%u 16. /usr/lib/x11/%l/uid/%u 17. /usr/lib/x11/uid/%u 18. /usr/include/x11/uid/%u XAPPLRESDIR MrmOpenHierarchy() XAPPLRESDIR $HOME UIL default_charset default_charset LANG el_gr default_charset LANG ja_jp default_charset EUC cur_charset cur_charset default_charset : uil_sample 4 4 UIL 4 Motif 101

4 4 UIL LLL LLL ( ) uil_sample.uil!! sample uil file - uil_sample.uil!! C source file - uil_sample.c!! Resource file - uil-sample.resource! module Test version = v1.0 names = case_sensitive objects = { XmPushButton = gadget; }!************************************! declare callback procedure!************************************ procedure exit_cb ;!***************************************************************! declare BulletinBoard as parent of PushButton and Text!*************************************************************** object bb : XmBulletinBoard { arguments{ XmNwidth = 500; XmNheight = 200; }; controls{ XmPushButton pb1; 102 ( ) 2002 12

XmText text1; }; };!****************************! declare PushButton!**************************** object pb1 : XmPushButton { arguments{ XmNlabelString = #Normal LLLexit buttonlll ; XmNx = 50; XmNy = 50; }; callbacks{ XmNactivateCallback = procedure exit_cb; }; };!*********************! declare Text!********************* text1 : XmText { arguments{ XmNx = 50; XmNy = 150; }; }; end module; /* * C source file - uil_sample.c * */ #include <Mrm/MrmAppl.h> #include <locale.h> void exit_cb(); static MrmHierarchy hierarchy; static MrmType *class; /******************************************/ /* specify the UID hierarchy list */ /******************************************/ static char *aray_file[] = { uil_sample.uid }; static int num_file = (sizeof aray_file / sizeof aray_file[0]); /******************************************************/ /* define the mapping between UIL procedure names*/ /* and their addresses */ /******************************************************/ static MRMRegisterArg reglist[]={ { exit_cb,(caddr_t) exit_cb } 4 Motif 103

UIL UIL 3 UID UIL UIL (&) UIL UID UIL UIL UID 2 ( ) UIL UIL 8 16 UIL CHARACTER_SET [character_string] [#char_set] [character_string] character_string UIL LANG LANG LANG XmFALLBACK_CHARSET XmFALLBACK_CHARSET ISO8859-1 #char_set string char_set character_string CHARACTER_SET UIL use_setlocale_flag 104 ( ) 2002 12

CHARACTER_SET CHARACTER_SET uil -s Uil() use_setlocale_flag UIL setlocale() XmFONTLIST_DEFAULT_TAG CHARACTER_SET uil -s Uil() use_setlocale_flag UIL LANG LANG LANG XmFALLBACK_CHARSET UIL COMPOUND_STRING UIL \( ) ( ) 4 Motif 105

106 ( ) 2002 12

5 Xt Xlib Xt Xlib 107 113 115 116 126 129 Xlib X X 1 Xlib ANSI ( ) C setlocale () setlocale() C Xlib Xlib LC_CTYPE XSupportsLocale() X X X X 107

X setlocale() XSupportsLocale() XSetLocaleModifiers() 3 X 1 XSetLocaleModifiers() Xlib 1 ( ) 1. 2. 3. ( ) Xlib XSetLocaleModifiers() X 5 1 5 1 / setlocale XSupportsLocale XSetLocaleModifiers 108 ( ) 2002 12

5 1 ( ) setlocale XrmDatabase XrmGetFileDatabase XrmGetStringDatabase XrmPutFileDatabase XrmLocaleOfDatabase Xrm Xrm setlocale XmbSetWMProperties ( WM_property ) setlocale XmbTextPropertyToTextList XwcTextPropertyToTextList XmbTextListToTextProperty XwcTextListToTextProperty / setlocale XOpenIM XIM. XIM XIC XCreateIC XLocaleOfIM XmbLookupText XwcLookupText XIC setlocale XCreateFontSet XFontSet Charset XFontSet setlocale XmbDrawText, XwcDrawText XExtentsOfFontSet XmbTextExtents, XwcTextExtents Xlib XGetErrorDatabaseText XGetErrorText 5 Xt Xlib 109

X C X C C X Xlib Xlib X ( Xlib XSetLocaleModifiers() ) ANSI C Xlib ANSI C mblen() mbtowc() wctomb() strtok() Xt Xt 2 XtSetLanguageProc() XtDisplayInitialize() XtSetLanguageProc Xt XtSetLanguageProc() 1 XtSetLanguageProc (NULL, NULL, NULL) ( XtAppInitialize() ) XtSetLanguageProc() ( catopen() ) setlocale() XtLanguageProc typedef String(*XtLanguageProc)(displayID,languageID, clientdata); Display *displayid; 110 ( ) 2002 12

String languageid; XtPointer clientdata; displayid languageid clientdata XtSetLanguageProc() XtDisplayInitialize() XtDisplayInitialize() XtDisplayInitialize() XtSetLanguageProc() XtLanguageProc XtSetLanguageProc(applicationcontext, procedure, clientdata) XtAppContext applicationcontext; XtLanguageProc procedure; XtPointer clientdata; applicationcontext procedure clientdata XtSetLanguageProc() XtDisplayInitialize() applicationcontext ( ) procedure XtSetLanguageProc() XtSetLanguageProc () ANSI C setlocale (LC_ALL, language ) XtWarning() 5 Xt Xlib 111

XSupportsLocale () XtWarning() C XSetLocaleModifiers() ANSI C setlocale (LC_CTYPE, NULL) XtDisplayInitialize() XtSetLanguageProc() Widget top; XtSetLanguageProc(NULL, NULL, NULL); top = XtAppInitialize(... );... XtDisplayInitialize XtDisplayInitialize() ( ) 1. (argv) 2. 3. 4. 5. XtDisplayInitialize() display display XtDisplayInitialize() 2 1 2 XResourceManagerString() XResourceManagerString() $HOME/.Xdefaults name.xnllanguage class.xnllanguage name class LANG 112 ( ) 2002 12

XtResolvePathname() (displayid, applicationdefaults, NULL, NULL, NULL, NULL, 0, NULL) XtAppSetFallbackResources() XtResolvePathname() (displayid, NULL, NULL, NULL, path, NULL, 0, NULL) path path XUSERFILESEARCHPATH XENVIRONMENT XtDisplayInitialize().Xdefaults-host host 1 5 Xt Xlib 113

2 ( XmLabel) 1 DrawingArea XmString Xlib Xlib Xlib 1 charset XFontSet XCreateFontSet() XFontsOfFontSet() XFontStruct XFontSet XFontSet XBaseFontNameListOfFontSet() XFontSet XLocaleOfFontSet() XLocaleOfFontSet() XFontSet XFreeFontSet() XFontStruct XFontSetExtents ( ) Xlib 114 ( ) 2002 12

XmbTextPerCharExtents() XwcTextPerCharExtents() XmbDrawString() 2 2 XmbDrawString() ( ) XContextDependentDrawing () XExtentsOfFontSet() XFontSet XmbTextEscapement() XwcTextEscapement() XmbTextExtents() XwcTextExtents() ( overall_ink_return overall_logical_return) XmbTextPerCharExtents() XwcTextPerCharExtents() XDrawText() XDrawString () XDrawImageString() BadFont (GC) 5 Xt Xlib 115

XmbDrawText() XwcDrawText() drawable XmbDrawString() XwcDrawString() drawable XmbDrawImageString() XwcDrawImageString() Xlib Motif Text[Field] XmIm API Xlib 126 Xlib Xlib ( ) 2 ( ) 2 83 86 116 ( ) 2002 12

24 ( 14 10) 1 2 3 ( ) 2 1 3 2 1 ( ) 50,000 2 8,000 15,000 30,000 1 2 2 ( ) 2 5 Xt Xlib 117

( ) 16 ( ) 2 5 1 ( ) 1 (LED) Xlib 118 ( ) 2002 12

OnTheSpot OverTheSpot OffTheSpot Root RootWindow Xlib ( ) XIM XOpenIM() X 1 1 1 1 XIM ( ) 5 Xt Xlib 119

Xlib Xlib XIC 5 1 5 1 120 ( ) 2002 12

1 1 XIC XCreateIC() XIM XCloseIM() ( ) XmbLookupString() XwcLookupString() XmbLookupString() XwcLookupString() Xlib XmbLookupString() XwcLookupString() XSetICFocus() 5 Xt Xlib 121

XUnsetICFocus() XSetICFocus() 2 2 1 X Xlib (OnTheSpot ) Xlib ( ) XGetIMValues() XIMStyles XIMPreeditArea() XIMStatusArea () XNInputStyle XIC 122 ( ) 2002 12

XNAreaNeeded 0( ) 1 XIC XNAreaNeeded XIC XNArea IC XNFontSet XNLineSpacing X XmbLookupString() XwcLookupString() ( ) Xt XIC XNFilterEvents 0 5 Xt Xlib 123

OnTheSpot XmbLookupString() XwcLookupString() OnTheSpot 1 1 X keysym keysym xmodmap X Version 11 Release 4 (X11R4) keysym ( NoSymbol ) keysym K K NoSymbol K NoSymbol ( NoSymbol ) keysym K1 K2 K1 K2 K1 K2 124 ( ) 2002 12

( NoSymbol ) keysym K1 K2 K3 K1 K2 K3 NoSymbol void VoidSymbol 4 2 keysym 1 1 2 keysym 2 3 4 keysym 2 NoSymbol 2 1 1 keysym K 1 K 2 K keysym 1 2 keysym keysym MODE SWITCH keysym keysym Mod1 Mod5 1 2 keysym 1 keysym Shift Lock 2 keysym Shift Lock 2 keysym Lock ShiftLock Lock CapsLock Shift keysym keysym keysym keysym keysym Lock KeyMask CapsLock ShiftLock keysym 5 Xt Xlib 125

ICCC ( ) ICCC XmText XmTextField dtterm ICCC XmText XmTextField dtterm ICCC ICCC XA_TARGETS COMPOUND_TEXT XA_STRING XA_TEXT ( ) COMPOUND_TEXT COMPOUND_TEXT XA_STRING XA_STRING XA_STRING XA_STRING ISO8859-1 126 ( ) 2002 12

XA_TARGET 1 COMPOUND_TEXT XA_STRING XA_TEXT 1 XA_TEXT COMPOUND_TEXT XA_STRING XmbTextPropertyToTextList() XwcTextPropertyToTextList() COMPOUND_TEXT XA_STRING XmClipboard XmClipboard XmText XmTextField ICCC XmText XmTextField ICCC XmText XmTextField COMPOUND_TEXT XA_STRING 5 Xt Xlib 127

VendorShell XtNtitleEncoding XtNiconNameEncoding None libxm.a libxt.a XA_STRING ( ) XmNtitle XmNiconName ICCC XtNtitleEncoding XtNiconNameEncoding XtNtitle XtNiconName None ICCC ( COMPOUND_TEXT XA_STRING ) XtNtitleEncoding XtNiconNameEncoding XtNtitle XtNiconName ICCC COMPOUND_TEXT XA_STRING XmBulletinBoard XmNdialogTitle charset X charset XmFONTLIST_DEFAULT_TAG charset ISO8859-1 128 ( ) 2002 12

XmString XmFONTLIST_DEFAULT_TAG PC ISO8859-1 1 I/O ( ) ( ) XmLabel XmPushbutton XmNlabelString XmMessageBox XmNmessageString /etc/dt/app-defaults/%l XENVIRONMENT %L 5 Xt Xlib 129

2 130 ( ) 2002 12

A 131 132 132 133 133 135 136 137 138.msg.cat.msg.cat X/Open gencat *.cat 131

Bad arg Do not specify more than 2 files on the command line Line too long Line cannot exceed 20 characters 138 C ($) 1 gencat $ This is a comment %s %c %d $set 132 ( ) 2002 12

%s \n ( n ) 1 2 \t ( t ) \n\ ( n ) OPIE foo: Opening the file. 1 1 (a an the) The foo command displays a calendar. The foo command will display a calendar. A 133

(I we) you 1 2 MYNUM Month and year must be entered as numbers. MYNUM foo: 7777-222 Enter month and year as numbers.\n 7777-222 ID ( ) specify use check choose wait 1 2 BADL Don t use the f option more than once. BADL foo: 7777-009 Use the -f flag only once.\n solution a problem ( architect a system ) re- un- in- non- previous premature nonexistent error(s) error or errors 2 cannnot %s %c %d and/or or 24 a.m. p.m. 1:00 p.m. 13:00 134 ( ) 2002 12

s abort argument execute 1 del Usage: del {File... -} File Directory String Number ( ) Num Number [] {} 2 1 ( ) 1 [a b] a b a b {a b} a b A 135

.. ( 1 ) - banner String 1 unget [-n] [-rsid] [-s] {File -} wc [-cwl] {File... -} get -aaijlmm get Usage: get [-e -k] [-ccutoff] [-ilist] [-rsid] [-wstring] [xlist] \ [-b] [-gmnpst] [-l[p]] File... Retrieves a specified version of a Source Code Control System (SCCS) file. POSIX.2 POSIX.2 Press the ------ key - ----- (Press Ctrl-D ) Try again later parameter ( ) value ( ) 136 ( ) 2002 12

command option ( ) flag ( ) 1000 1 1,000 1000 2 2 ** Total ** log in log off Log in to the system; enter the data; then log off. user name group name login The user name is sam. The group name is staff. The login directory is /u/sam. super user ( ) root user ( ) command string ( ) A-1 A 1 Cannot find or open the file. Cannot find or access the file. The syntax of a parameter is not valid. Can t open filename. Can t access syntax error A-2 A 137

A 2 11 Specify a range end point that is less than 256. 16 The character or characters between \{ and \} must be numeric. 25 Specify a \digit between 1 and 9 that is not greater than the number of subpatterns. 36 A delimiter is not correct or is missing. 41 There is no remembered search string. Range end point too large. Bad number. \digit out of range. Illegal or missing delimiter. No remembered search string. 42 There is a missing \( or \). \(\) imbalance. 43 Do not use \( more than 9 times. Too many \(. 44 Do not specify more than 2 numbers between \{ and \}. 45 An opening \{ must have a closing \}. 46 The first number cannot exceed the second number between \{ and \}. 48 Specify a valid end point to the range. More than two numbers given in \{ and \}. } expected after \. First number exceeds second in \{ and \}. Invalid end point in range expression. 49 For each [ there must be a ]. [ ] imbalance. 50 The regular expression is too large for internal memory storage. Simplify the regular expression. Regular expression overflow. AFLGKEYLTRS Too Many -a Keyletters (Ad9) AFLGKEYLTRS foo: 7777-007 Use the -a flag less than 11 times.\n FLGTWICE Flag %c Twice (Ad4) 138 ( ) 2002 12

FLGTWICE foo: 7777-004 Use the %c header flag once.\n ESTAT can t access %s.\n ESTAT foo: 7777-031 Cannot find or access %s.\n EMODE foo: invalid mode\n EMODE foo: 7777-033 A mode flag or value is not correct.\n DNORG -d has no argument (ad1) DNORG foo: 7777-001 Specify a parameter after the -d flag.\n FLOORRNG floor out of range (ad23) FLOORRNG foo: 7777-021 Specify a floor value greater than 0\n\ \tand less than 10000.\n AFLGARG bad -a argument (ad8) AFLGARG foo: 7777-006 Specify a user name, group name, or\n\ \tgroup number after the -a flag.\n BADLISTFMT bad list format (ad27) BADLISTFMT foo: 7777-025 Use numeric version and release\ \tnumbers.\n A 139

140 ( ) 2002 12

A app-defaults, 33 C charset, 128 CNS, 79 D DBCS (double-byte character set), 107 default_charset, 101 dtterm ICCC, 28 ICCC, 126 ICCC ( ), 128, 128, 128, 126, 126, 128 ICCC XmClipboard, 127, 126, 127 iconv, 66, 69 ISO8859-1, 76 ISO646-IRV, 76 ISO EUC, 75 E eucjp, 78 euckr, 80 euctw, 78 K keysym keysym, 124, 124 I ICCC dtterm, 126 XmClipboard, 127 XmTextField, 126 XmText, 126 L libxm, 28 141

O OffTheSpot, 25 OverTheSpot,, 25 R Root, 26 T TextField, 93 Text, 95 Text, 93 U UID, 100 UID MrmOpenHierarchy, 100 UIL, UIL, 101 UIL CHARACTER_SET, 104 UIL, 99 UIL ( ), UIL, 98, 101 V VendorShell VendorShell, 96, 96, 93, 93, 93, 96, 93, 27, 93, 96 VendorShell ( ), 28, 24, 28, 28 X X/Open, 16 XFontStruct, 86 XIM, 48, 47, 49 Xlib, 124 Xlib, 123 Xlib, 53 Xlib Xlib, 114 XLoadQueryFont, 91 XmClipboard ICCC, 127 ICCC, 127 XmTextField, 127 XmText, 127 XmFontListEntryLoad, 83 XmFontList, 86 XmGetPixmapByDepth, 58 XmIm, 45 XmNinputMethod, 94 XmNlabelString, 89 XmStringCreate, 92 XmStringCreateLocalized, 92 XmStringCreateLtoR, 92 XmStringLoadQueryFont,,, 86 XmString, 42 XmTextField ICCC, 126 XmText ICCC, 126 XmText, 44 XPG4, 51 XtAppSetFallbackResources Xt, 113 142 ( ) 2002 12

XtDisplayInitialize XtDisplayInitialize, 112 Xt, 113, 112, 112 XtDisplayInitialize, 112 XtResolvePathname, Xt, 113 XtSetLanguageProc, 82, 110 Xt XtAppSetFallbackResources, 113 XtDisplayInitialize, 112, 113 XtResolvePathname, 113, 110 X (ICCCM), 70 X (XLFD) XLFD, 33, 33, 21, 13, 96, 65, 70, 70, 128, 128, 29, 129 ( ), 129, 129, 72, 60 UIL ( ), 98, 29, 29 ICCC, 28 Xt, 110, 116, 21, 23, 23, 23, 18, 18, 18, 18, 18, 18,, 81 UID, 100 UIL, 100 143

keysym, 124, 124, 124, 124 ICCC, 128, 23 setlocale, 17, 17, 60, 124, 13, 96, 23, 27, 28, 24 ~, 28, 28, 15 ICCC, 126 ICCC, 126, 128, 129, 15, 81, 82 XmNlabelString, 89 eucjp, 78 euckr, 80 euctw, 78 EUC ( UNIX ), 75 ISO8859-1, 76 ISO646-IRV, 76 ISO EUC, 75, 74, 73, 72, 68, 68, 74, 74 ISO8859, 76, 65, 66, 74,, 87, 87, 72 ICCC, 126 Xlib, 118 Xt, 110 X, 107, 16, 15, 15, 16, 13 Xlib, 116, 118, 21, 107 UIL, 99, 100 ICCC, 126 UIL, 99, 100 charset, 98, 98, 98, 98 144 ( ) 2002 12

( ) Xt, 110, 116, 129 VendorShell, 94, 95, 93, 96, 95 XmFontList, 86 XmString, 86, 108 setlocale, 17, 129 UIL, 104, 87, 87, 87, 88, 89, 90, 87, 89, 87, 87 TextField, 95 Text, 95 Xlib, 122 XmBulletinBoard, 95 XmRowColumn, 95, 95, 95 ICCC, 126 ( ) ICCC, 128, 68, 135 ICCC, 126, 69, 27, 88, 129 ISO8859, 76, 129, 129,, 128 ICCC, 126 DrawingArea, 43 Text, 45 Xlib, 120, 43, 43 145

, Xlib, 114, 57, 129, 129 ICCC, 128, 24, 28 Text, 95 VendorShell, 93 XmbLookupString XwcLookupString, 121, 96 XmNinputMethod, 94, 93, 96, 93, 58, 95, 65, 65, 43, 58,, 41, 16, 16, 131 XmbLookupString XwcLookupString, 121, 96, 28, 97, 28 Motif, 36 X Windows, 32, 37, 35, 35, 33, 35, 33, 33, 35, 86, 36, 32 Xlib, 114 Xlib, 114, 20 UIL, 99, 85, 115, 21, 21, 83, 83, 92, 35 TextField, 93 Text, 93, 83, 20, 90, 87, 93, 84, 92, 96 146 ( ) 2002 12

OffTheSpot, 25 OverTheSpot, 25 Root, 26, 24 OffTheSpot, 25 OverTheSpot, 25 Root, 26 VendorShell, 24, 25, 65, 21, 51 iconv, 69 Xlib, 70, 68, 69, 69 ( ), 132, 129, 135, 129 Xlib, 53 XPG4, 51, 51, 131, 133, 132, 138, 104 UIL default_charset, 101 UIL, 104, 104 UIL, 98,, 108, 28, 54 ICCC, 127 VendorShell, 94, 28, 129, 137, 51, 133, 136, 129, 56, 54, 54, 56, 56, 54, 56 UIL, 100 UIL, 100, 42 147

( ), 129, 100, 124, 129, 129, 70, 49, 39, 49, 86, 43, 42, 40, 32, 50, 50, 50, 54 Text, 57, 54, 54, 56, 58, 129, 15, 15 UIL, 98 Xt, 110 X, 107, 32, 13, 31, 13 ( ), 108, 107, 33, 32, 31, 32, 31 148 ( ) 2002 12