Mercurial > hg > xemacs-beta
comparison man/xemacs-faq.texi @ 1135:9eddcb9548e2
[xemacs-hg @ 2002-12-02 17:56:58 by stephent]
texinfo improvements <87d6okxq4i.fsf@tleepslib.sk.tsukuba.ac.jp>
author | stephent |
---|---|
date | Mon, 02 Dec 2002 17:57:09 +0000 |
parents | d7285d54aa5f |
children | 05ed51332340 |
comparison
equal
deleted
inserted
replaced
1134:dd61dd14b2a4 | 1135:9eddcb9548e2 |
---|---|
5 @setchapternewpage off | 5 @setchapternewpage off |
6 @c %**end of header | 6 @c %**end of header |
7 @finalout | 7 @finalout |
8 @titlepage | 8 @titlepage |
9 @title XEmacs FAQ | 9 @title XEmacs FAQ |
10 @subtitle Frequently asked questions about XEmacs @* Last Modified: $Date: 2002/10/18 05:43:35 $ | 10 @subtitle Frequently asked questions about XEmacs @* Last Modified: $Date: 2002/12/02 17:56:58 $ |
11 @sp 1 | 11 @sp 1 |
12 @author Tony Rossini <rossini@@biostat.washington.edu> | 12 @author Tony Rossini <rossini@@biostat.washington.edu> |
13 @author Ben Wing <ben@@xemacs.org> | 13 @author Ben Wing <ben@@xemacs.org> |
14 @author Chuck Thompson <cthomp@@xemacs.org> | 14 @author Chuck Thompson <cthomp@@xemacs.org> |
15 @author Steve Baur <steve@@xemacs.org> | 15 @author Steve Baur <steve@@xemacs.org> |
792 @html | 792 @html |
793 <br><img src="mrb.jpeg" alt="Portrait of Martin Buchholz"><br> | 793 <br><img src="mrb.jpeg" alt="Portrait of Martin Buchholz"><br> |
794 @end html | 794 @end html |
795 | 795 |
796 | 796 |
797 @item @email{turnbull@@sk.tsukuba.ac.jp, Steven Turnbull} | 797 @item @email{stephen@@xemacs.org, Stephen Turnbull} |
798 | 798 |
799 | 799 |
800 @item @email{ben@@xemacs.org, Ben Wing} | 800 @item @email{ben@@xemacs.org, Ben Wing} |
801 @html | 801 @html |
802 <br><img src="wing.gif" alt="Portrait of Ben Wing"><br> | 802 <br><img src="wing.gif" alt="Portrait of Ben Wing"><br> |
910 @node Q1.3.1, Q1.3.2, Q1.2.3, Introduction | 910 @node Q1.3.1, Q1.3.2, Q1.2.3, Introduction |
911 @unnumberedsec 1.3: Internationalization | 911 @unnumberedsec 1.3: Internationalization |
912 @unnumberedsubsec Q1.3.1: What is the status of internationalization support aka MULE (including Asian language support? | 912 @unnumberedsubsec Q1.3.1: What is the status of internationalization support aka MULE (including Asian language support? |
913 | 913 |
914 Both the stable and development versions of XEmacs include | 914 Both the stable and development versions of XEmacs include |
915 internationalization support (aka MULE). MULE currently works on UNIX | 915 internationalization support (aka MULE). MULE currently (21.4) works on |
916 and Linux systems; work for supporting MULE on Windows operating systems | 916 UNIX and Linux systems. It is possible to build with MULE on Windows |
917 is in progress. Binaries compiled without MULE support run faster than | 917 systems, but if you really need MULE on Windows, it is recommended that |
918 MULE capable XEmacsen. | 918 you build and use the development (21.5) version, and deal with the |
919 instability of the development tree. Binaries compiled without MULE | |
920 support run faster than MULE capable XEmacsen. | |
919 | 921 |
920 @node Q1.3.2, Q1.3.3, Q1.3.1, Introduction | 922 @node Q1.3.2, Q1.3.3, Q1.3.1, Introduction |
921 @unnumberedsubsec Q1.3.2: How can I help with internationalization? | 923 @unnumberedsubsec Q1.3.2: How can I help with internationalization? |
922 | 924 |
923 If you would like to help, you may want to join the | 925 If you would like to help, you may want to join the |
924 @email{xemacs-mule@@xemacs.org} mailing list. Especially needed are | 926 @email{xemacs-mule@@xemacs.org} mailing list. Especially needed are |
925 people who speak/write languages other than English, who are willing to | 927 people who speak/write languages other than English, who are willing to |
926 use XEmacs/MULE regularly, and have some experience with Elisp. | 928 use XEmacs/MULE regularly, and have some experience with Elisp. |
927 | 929 |
930 Translations of the TUTORIAL and man page are welcome, and XEmacs does | |
931 support multilingual menus, but we have few current translations. | |
932 | |
928 @xref{Q1.1.2}. | 933 @xref{Q1.1.2}. |
929 | 934 |
930 @node Q1.3.3, Q1.3.4, Q1.3.2, Introduction | 935 @node Q1.3.3, Q1.3.4, Q1.3.2, Introduction |
931 @unnumberedsubsec Q1.3.3: How do I type non-ASCII characters? | 936 @unnumberedsubsec Q1.3.3: How do I type non-ASCII characters? |
932 | 937 |
933 See question 3.5.7 (@pxref{Q3.5.7}) in part 3 of this FAQ. | 938 See question 3.5.7 (@pxref{Q3.5.7}) in part 3 of this FAQ for some |
939 simple methods that also work in non-MULE builds of XEmacs (but only for | |
940 one-octet coded character sets, and mostly for ISO 8859/1). Many of the | |
941 methods available for Cyrillic (@pxref{Q1.3.7}) work without MULE. | |
942 MULE has more general capabilities. @xref{Q1.3.5}. | |
943 | |
944 @xref{Q3.2.7}, which covers display of non-ASCII characters. | |
934 | 945 |
935 @node Q1.3.4, Q1.3.5, Q1.3.3, Introduction | 946 @node Q1.3.4, Q1.3.5, Q1.3.3, Introduction |
936 @unnumberedsubsec Q1.3.4: Can XEmacs messages come out in a different language? | 947 @unnumberedsubsec Q1.3.4: Can XEmacs messages come out in a different language? |
937 | 948 |
938 The message-catalog support has mostly been written but doesn't | 949 The message-catalog support was written but is badly bit-rotted. XEmacs |
939 currently work. The first release of XEmacs 20 will @emph{not} support | 950 20 and 21 did @emph{not} support it, and early releases of XEmacs 22 |
940 it. However, menubar localization @emph{does} work. To | 951 will not either. |
941 enable it, add to your @file{Emacs} file entries like this: | 952 |
953 However, menubar localization @emph{does} work. To enable it, add to | |
954 your @file{Emacs} file entries like this: | |
942 | 955 |
943 @example | 956 @example |
944 Emacs*XlwMenu.resourceLabels: True | 957 Emacs*XlwMenu.resourceLabels: True |
945 Emacs*XlwMenu.file.labelString: Fichier | 958 Emacs*XlwMenu.file.labelString: Fichier |
946 Emacs*XlwMenu.openInOtherWindow.labelString: In anderem Fenster oeffnen | 959 Emacs*XlwMenu.openInOtherWindow.labelString: In anderem Fenster oeffnen |
950 removing punctuation and capitalizing as above. | 963 removing punctuation and capitalizing as above. |
951 | 964 |
952 @node Q1.3.5, Q1.3.6, Q1.3.4, Introduction | 965 @node Q1.3.5, Q1.3.6, Q1.3.4, Introduction |
953 @unnumberedsubsec Q1.3.5: Please explain the various input methods in MULE/XEmacs | 966 @unnumberedsubsec Q1.3.5: Please explain the various input methods in MULE/XEmacs |
954 | 967 |
955 @email{morioka@@jaist.ac.jp, MORIOKA Tomohiko} writes: | 968 Mule supports a wide variety of input methods. There are three basic |
956 | 969 classes: Lisp implementations, generic platform support, and library |
957 @quotation | 970 interfaces. |
958 Original Mule supports the following input methods: Wnn4, Wnn6, Canna, SJ3 | 971 |
959 and XIM. Interfaces for Wnn and SJ3 uses the @code{egg} user | 972 @emph{Lisp implementations} include Quail, which provides table-driven input |
960 interface. Interface for Canna does not use @samp{egg}. I don't know | 973 methods for almost all the character sets that Mule supports (including |
961 about XIM. It is to support ATOK, of course, it may work for another | 974 all of the ISO 8859 family, the Indic languages, Thai, and so on), and |
962 servers. | 975 SKK, for Japanese. (SKK also supports an interface to an external |
976 "dictionary server" process.) Quail supports both typical "dead-key" | |
977 methods (eg, in the "latin-1-prefix" method, @kbd{" a} produces ä, LATIN | |
978 SMALL LETTER A WITH DIAERESIS), and the complex dictionary-based phonetic | |
979 methods used for Asian ideographic languages like Chinese. | |
980 | |
981 Lisp implementations can be less powerful (but they are not perceptibly | |
982 inefficient), and of course are not portable to non-Emacs applications. | |
983 The incompatibility can be very annoying. On the other hand, they | |
984 require no special platform support or external libraries, so if you can | |
985 display the characters, Mule can input them for you and you can edit, | |
986 anywhere. | |
987 | |
988 @emph{Generic platform support} is currently limited to the X Input | |
989 Method (XIM) framework, although support for MSIME (for MS Windows) is | |
990 planned, and IIIMF (Sun's Internet-Intranet Input Method Framework) | |
991 support is extremely desirable. XIM is enabled at build time by use of | |
992 the @samp{--with-xim} flag to @code{configure}. For use of XIM, see | |
993 your platform documentation. However, normally the input method you use | |
994 is specified via the @samp{LANG} and @samp{XMODIFIERS} environment | |
995 variables. | |
996 | |
997 Of course, input skills are portable across most applications. However, | |
998 especially in modern GUI systems the habit of using bucky bits has | |
999 fallen into sad disuse, and many XIM systems are poorly configured for | |
1000 use with Emacs. For example, the kinput2 input manager (a separate | |
1001 process providing an interface between Japanese dictionary servers such | |
1002 as Canna and Wnn, and the application) tends to gobble up keystrokes | |
1003 generating Meta characters. This means that to edit while using an XIM | |
1004 input method, you must toggle the input method off every time you want | |
1005 to use @kbd{M-f}. Your mileage may vary. | |
1006 | |
1007 @emph{Library interfaces} are most common for Japanese, although Wnn | |
1008 supports Chinese (traditional and simplified) and Korean. There are | |
1009 Chinese and Korean input servers available, but we do not know of any | |
1010 patches for XEmacs to use them directly. You can use them via | |
1011 IM-enabled terminals, by manipulating the terminal coding systems. We | |
1012 describe only the Japanese-oriented systems here. The advantage of | |
1013 these systems is that they are very powerful, and on platforms where | |
1014 they are available there is typically a wide range of applications that | |
1015 support them. Thus your input skills are portable across applications. | |
1016 | |
1017 Mule provides built-in interfaces to the following input methods: Wnn4, | |
1018 Wnn6, Canna, and SJ3. These can be configured at build time. There are | |
1019 patches available (no URL, sorry) to support the SKK server, as well. | |
1020 Wnn and SJ3 use the @code{egg} user interface. The interface for Canna | |
1021 is specialized to Canna. | |
963 | 1022 |
964 Wnn supports Japanese, Chinese and Korean. It is made by OMRON and Kyôto | 1023 Wnn supports Japanese, Chinese and Korean. It is made by OMRON and Kyôto |
965 university. It is a powerful and complex system. Wnn4 is free and Wnn6 | 1024 University. It is a powerful and complex system. Wnn4 is free and Wnn6 |
966 is not free. | 1025 is not. Wnn uses grammatical hints and probability of word association, |
967 | 1026 so in principle Wnn can be cleverer than other methods. |
968 Canna supports only Japanese. It is made by NEC. It is a simple and | 1027 |
969 powerful system. Canna uses only grammar (Wnn uses grammar and | 1028 Canna, made by NEC, supports only Japanese. It is a simple and powerful |
970 probability between words), so I think Wnn is cleverer than Canna, | 1029 system. Canna uses only grammar, but its grammar and dictionary are |
971 however Canna users made a good grammar and dictionary. So for standard | 1030 quite sophisticated. So for standard modern Japanese, Canna seems |
972 modern Japanese, Canna seems cleverer than Wnn4. In addition, the UNIX | 1031 cleverer than Wnn4. In addition, the UNIX version of Canna is free (now |
973 version of Canna is free (now there is a Microsoft Windows version). | 1032 there is a Microsoft Windows version). |
974 | 1033 |
975 SJ3 supports only Japanese. It is made by Sony. XIM supports was made | 1034 SJ3, by Sony, supports only Japanese. |
976 to use ATOK (a major input method in personal computer world). XIM is | |
977 the standard for accessing input methods bundled in Japanese versions of | |
978 Solaris. (XEmacs 20 will support XIM input). | |
979 | 1035 |
980 Egg consists of following parts: | 1036 Egg consists of following parts: |
981 | 1037 |
982 @enumerate | 1038 @enumerate |
983 @item | 1039 @item |
984 Input character Translation System (ITS) layer. | 1040 Input character Translation System (ITS) layer. |
985 It translates ASCII inputs to Kana/PinYin/Hangul characters. | 1041 It translates ASCII inputs to Kana/PinYin/Hangul characters. |
986 | 1042 |
987 @item | 1043 @item |
988 Kana/PinYin/Hangul to Kanji transfer layer. | 1044 Kana/PinYin/Hangul to Kanji transfer layer. |
989 It is interface layer for network Kana-Kanji server (Wnn and Sj3). | 1045 The interface layer to network Kana-Kanji server (Wnn and Sj3). |
990 @end enumerate | 1046 @end enumerate |
991 | 1047 |
992 These input methods are modal, namely there are mode, alphabet mode and | 1048 These input methods are modal. They have a raw (alphabet) mode, a |
993 Kana-Kanji transfer mode. However there are mode-less input methods for | 1049 phonetic input mode, and Kana-Kanji transfer mode. However there are |
994 Egg and Canna. @samp{Boiled-egg} is a mode-less input method running on | 1050 mode-less input methods for Egg and Canna. @samp{boiled-egg} is a |
995 Egg. For Canna, @samp{canna.el} has a tiny boiled-egg like command, | 1051 mode-less input method running on Egg. For Canna, @samp{canna.el} has a |
996 @code{(canna-boil)}, and there are some boiled-egg like utilities. In | 1052 tiny boiled-egg-like command, @code{(canna-boil)}, and there are some |
997 addition, it was planned to make an abstraction for all transfer type | 1053 boiled-egg-like utilities. |
998 input methods. However authors of input methods are busy, so maybe this | 1054 |
999 plan is stopped. Perhaps after Mule merged GNU Emacs will be released, | 1055 Much of this information was provided by @email{morioka@@jaist.ac.jp, |
1000 it will be continued. | 1056 MORIOKA Tomohiko}. |
1001 @end quotation | |
1002 | 1057 |
1003 @node Q1.3.6, Q1.3.7, Q1.3.5, Introduction | 1058 @node Q1.3.6, Q1.3.7, Q1.3.5, Introduction |
1004 @unnumberedsubsec Q1.3.6: How do I portably code for MULE/XEmacs? | 1059 @unnumberedsubsec Q1.3.6: How do I portably code for MULE/XEmacs? |
1005 | 1060 |
1061 MULE has evolved rapidly over the last few years, and the original third | |
1062 party patch (for GNU Emacs 19), GNU Emacs 20+, and XEmacs 20+ have quite | |
1063 different implementations. The APIs also vary although recent versions | |
1064 of XEmacs have tended to converge to the GNU Emacs standard. | |
1065 | |
1066 MULE implementations are going to continue to evolve. Both GNU Emacs | |
1067 and XEmacs are working hard on Unicode support, which will involve new | |
1068 APIs and probably variations on old ones. For XEmacs 22, the old ISO | |
1069 2022-based system for recognizing encodings will be replaced by a much | |
1070 more flexible system, which should improve accuracy of automatic coding | |
1071 detections, but will also involve new APIs. | |
1072 | |
1006 @email{morioka@@jaist.ac.jp, MORIOKA Tomohiko} writes: | 1073 @email{morioka@@jaist.ac.jp, MORIOKA Tomohiko} writes: |
1007 | 1074 |
1008 @quotation | 1075 @quotation |
1009 MULE and XEmacs are quite different. So the application | 1076 The application implementor must write separate code for these mule |
1010 implementor must write separate code for these mule variants. | 1077 variants. [Please don't hesitate to report these variants to us; they |
1078 are not, strictly speaking, bugs, but they give third-party developers | |
1079 the same kind of creepy-crawly feeling. We'll do what we can. -- Ed.] | |
1011 | 1080 |
1012 MULE and the next version of Emacs are similar but the symbols are very | 1081 MULE and the next version of Emacs are similar but the symbols are very |
1013 different---requiring separate code as well. | 1082 different---requiring separate code as well. |
1014 | 1083 |
1015 Namely we must support 3 kinds of mule variants and 4 or 5 or 6 kinds of | 1084 Namely we must support 3 kinds of mule variants and 4 or 5 or 6 kinds of |
1016 emacs variants... (;_;) I'm shocked, so I wrote a wrapper package called | 1085 emacs variants... (;_;) I'm shocked, so I wrote a wrapper package called |
1017 @code{emu} to provide a common interface. | 1086 @code{emu} to provide a common interface. [There is an XEmacs package |
1087 of APEL which provides much more comprehensive coverage. Be careful, | |
1088 however; APEL has problems of its own. -- Ed.] | |
1018 | 1089 |
1019 I have the following suggestions about dealing with mule variants: | 1090 I have the following suggestions about dealing with mule variants: |
1020 | 1091 |
1021 @itemize @bullet | 1092 @itemize @bullet |
1022 @item | 1093 @item |
1506 site | 1577 site |
1507 @iftex | 1578 @iftex |
1508 @* | 1579 @* |
1509 @end iftex | 1580 @end iftex |
1510 @uref{ftp://ftp.xemacs.org/pub/xemacs/aux/}. | 1581 @uref{ftp://ftp.xemacs.org/pub/xemacs/aux/}. |
1582 [These tarballs and this FAQ are wa-a-ay out of date. Sorry, I'm not | |
1583 currently network-capable, and I will probably forgot to update this | |
1584 before submitting the patch. -- Ed.] | |
1511 | 1585 |
1512 @c Changed June Link above, <URL:ftp://ftp.xemacs.org/pub/aux/> was dead. | 1586 @c Changed June Link above, <URL:ftp://ftp.xemacs.org/pub/aux/> was dead. |
1513 @c This list is a pain in the you-know-what to keep in synch with the | 1587 @c This list is a pain in the you-know-what to keep in synch with the |
1514 @c world. | 1588 @c world. |
1515 The canonical locations (at the time of this writing) are as follows: | 1589 The canonical locations (at the time of this writing) are as follows: |
1777 you are using. | 1851 you are using. |
1778 | 1852 |
1779 @item | 1853 @item |
1780 If the problem happened on a tty, please include the terminal type. | 1854 If the problem happened on a tty, please include the terminal type. |
1781 @end enumerate | 1855 @end enumerate |
1856 | |
1857 Much of the information above is automatically generated by @kbd{M-x | |
1858 report-emacs-bug}. Even more, and often useful, information can be | |
1859 generated by redirecting the output of @code{make} and @code{make check} | |
1860 to a file (@file{beta.err} is the default used by @code{build-report}), | |
1861 and executing @kbd{M-x build-report}. | |
1782 | 1862 |
1783 @node Q2.1.2, Q2.1.3, Q2.1.1, Installation | 1863 @node Q2.1.2, Q2.1.3, Q2.1.1, Installation |
1784 @unnumberedsubsec Q2.1.2: Cryptic Minibuffer messages. | 1864 @unnumberedsubsec Q2.1.2: Cryptic Minibuffer messages. |
1785 | 1865 |
1786 When I try to use some particular option of some particular package, I | 1866 When I try to use some particular option of some particular package, I |
2937 @lisp | 3017 @lisp |
2938 (if (eq 'tty (device-type)) | 3018 (if (eq 'tty (device-type)) |
2939 (set-device-class nil 'color)) | 3019 (set-device-class nil 'color)) |
2940 @end lisp | 3020 @end lisp |
2941 | 3021 |
2942 @node Q3.2.6, Q3.3.1, Q3.2.5, Customization | 3022 @node Q3.2.6, Q3.2.7, Q3.2.5, Customization |
2943 @unnumberedsubsec Q3.2.6: Can I have pixmap backgrounds in XEmacs? | 3023 @unnumberedsubsec Q3.2.6: Can I have pixmap backgrounds in XEmacs? |
2944 @c New | 3024 @c New |
2945 @email{jvillaci@@wahnsinnig.extreme.indiana.edu, Juan Villacis} writes: | 3025 @email{jvillaci@@wahnsinnig.extreme.indiana.edu, Juan Villacis} writes: |
2946 | 3026 |
2947 @quotation | 3027 @quotation |
2965 | 3045 |
2966 and so on. You can also do this interactively via @kbd{M-x edit-faces}. | 3046 and so on. You can also do this interactively via @kbd{M-x edit-faces}. |
2967 | 3047 |
2968 @end quotation | 3048 @end quotation |
2969 | 3049 |
2970 @node Q3.3.1, Q3.3.2, Q3.2.6, Customization | 3050 @node Q3.2.7, Q3.3.1, Q3.2.6, Customization |
3051 @unnumberedsubsec Q3.2.7: How do I display non-ASCII characters? | |
3052 @c New | |
3053 | |
3054 If you're using a Mule-enabled XEmacs, then display is automatic. If | |
3055 you're not seeing the characters you expect, either (1) you don't have | |
3056 appropriate fonts available or (2) XEmacs did not correctly detect the | |
3057 coding system (@pxref{Recognize Coding, , , xemacs}). In case (1), | |
3058 install fonts as is customary for your platform. In case (2), you | |
3059 need to tell XEmacs explicitly what coding systems you're using. | |
3060 @ref{Specify Coding, , , xemacs}. | |
3061 | |
3062 If your XEmacs is not Mule-enabled, and for some reason getting a | |
3063 Mule-enabled XEmacs seems like the wrong thing to do, all is not lost. | |
3064 You can arrange it by brute force. In @file{event-Xt.c} (suppress the | |
3065 urge to look in this file---play Doom instead, because you'll survive | |
3066 longer), it is written: | |
3067 | |
3068 @quotation | |
3069 In a non-Mule world, a user can still have a multi-lingual editor, by | |
3070 doing @code{(set-face-font "-*-iso8859-2" (current-buffer))} for all | |
3071 their Latin-2 buffers, etc. | |
3072 @end quotation | |
3073 | |
3074 For the related problem of @emph{inputting} non-ASCII characters in a | |
3075 non-Mule XEmacs, @xref{Q3.5.7}. | |
3076 | |
3077 @node Q3.3.1, Q3.3.2, Q3.2.7, Customization | |
2971 @unnumberedsec 3.3: The Modeline | 3078 @unnumberedsec 3.3: The Modeline |
2972 @unnumberedsubsec Q3.3.1: How can I make the modeline go away? | 3079 @unnumberedsubsec Q3.3.1: How can I make the modeline go away? |
2973 | 3080 |
2974 @lisp | 3081 @lisp |
2975 (set-specifier has-modeline-p nil) | 3082 (set-specifier has-modeline-p nil) |
3323 @end example | 3430 @end example |
3324 etc. | 3431 etc. |
3325 | 3432 |
3326 Running @samp{xmodmap -pk} will list all of the defined keysyms. | 3433 Running @samp{xmodmap -pk} will list all of the defined keysyms. |
3327 @end quotation | 3434 @end quotation |
3435 | |
3436 For the related problem of @emph{displaying} non-ASCII characters in a | |
3437 non-Mule XEmacs, @xref{Q3.2.7}. | |
3328 | 3438 |
3329 @node Q3.5.8, Q3.5.9, Q3.5.7, Customization | 3439 @node Q3.5.8, Q3.5.9, Q3.5.7, Customization |
3330 @unnumberedsubsec Q3.5.8: [This question intentionally left blank] | 3440 @unnumberedsubsec Q3.5.8: [This question intentionally left blank] |
3331 | 3441 |
3332 Obsolete question, left blank to avoid renumbering. | 3442 Obsolete question, left blank to avoid renumbering. |