3 Frequently Asked Questions and Answers for Mule.
6 ----------------------------------------------------------------------
8 This FAQ list was made to summarise some frequently asked questions
9 and their answers in a convenient form. The structure of this FAQ
10 list has drastically changed since the last version. For the detail
11 of the new structure, see the entry of `How to read this FAQ and its
14 We believe that the contents are fairly correct, but please let us
15 know if you find any mistakes. New information is always welcome.
17 To get the latest FAQ, see A-12.
19 Many people gave us advice in making this list. We would like to
20 thank those who have contributed.
23 Takahiro Maebashi <maebashi@mcs.meitetsu.co.jp>
24 (translated by TAKAHASHI Naoto <ntakahas@etl.go.jp>)
26 ----------------------------------------------------------------------
29 This FAQ list contains Japanese, Chinese and Latin-1 characters. If
30 you read this list on a terminal which is not capable of displaying
31 those characters, your terminal might be set in a strange state.
32 ----------------------------------------------------------------------
34 If you are viewing this text in a Mule Buffer, you can type "M-2 C-x
35 $" to get an overview of just the questions. Then, when you want to
36 look at the text of the answers, just type "C-x $".
38 To search for a question numbered X-XX, type "M-C-s ^X-XX:", followed
39 by a C-r if that doesn't work, then type ESC to end the search.
41 This Mule FAQ is divided into two parts:
43 Part 1: Questions common to all languages
44 Part 2: Questions specific to each language
46 Each part consists of several sections. Questions in Part 1 are
47 grouped by their fields, and questions in Part 2 are grouped by
48 languages. You may find almost the same questions in different
49 sections, but this is for the convenience of readers.
51 ----------------------------------------------------------------------
53 FAQ Part 1: Questions common to all languages
59 Mule is a multi-lingual enhancement of GNU Emacs. Mule Ver.1 was
60 based on GNU Emacs Ver.18 and Mule Ver.2 is based on GNU Emacs
61 Ver.19. Mule Ver.1 will not be supported anymore.
63 Mule has the following features:
64 * It can handle not only ASCII characters (7 bit) and ISO Latin-1
65 characters (8 bit), but also 16 bit characters like Japanese,
66 Chinese, and Korean. Furthermore Mule can have a mixture of
67 languages in a single buffer.
68 * You can set different coding systems for file input/output,
69 keyboard input, and inter-process communication.
70 * When not in the multi-lingual mode, it behaves almost exactly like GNU
73 A-2: How can I get Mule?
75 Mule is available via anonymous FTP from:
77 etlport.etl.go.jp [192.31.197.99]: /pub/mule
78 ftp.mei.co.jp [132.182.49.2]: /public/free/gnu/emacs/Mule
79 ftp.iij.ad.jp [192.244.176.50]: /pub/misc/mule
80 sh.wide.ad.jp [133.4.11.11]: /JAPAN/mule
81 ftp.funet.fi [128.214.6.100]: /pub/gnu/emacs/mule
83 Please use one of the last three sites unless you are in Japan. It
84 should be better to use ftp.funet.fi for European sites.
86 Both the complete tar file of Mule (mule-2.0.tar.gz) and the diff
87 file to GNU Emacs 19.25 (diff-19.25-2.0.gz) are available. Please
88 take the diff file if you already have GNU Emacs. If you find patch
89 files there (patch-2.0-*.gz), get them too and apply the patches.
90 Various fonts and ELISP libraries are also available from the same
93 See $MULE/README.Mule for further details.
95 A-3: What is the latest version of Mule?
97 The current version is 2.2 (WAKAMURASAKI), and is based on
100 A-4: Will Mule be integrated into GNU Emacs in the future?
102 We have just started the work of merging Mule to GNU Emacs.
104 A-5: Are there any plans to introduce the features of Mule to Epoch
107 Mule Ver.2 (actually GNU Emacs 19) can make a independent frame for
108 each buffer, and can draw coloured strings.
110 A-6: Are there any plans to introduce the features of Mule to Demacs?
112 Mule Ver.1.x contains Demacs. Read the install manual
115 A-7: What are the advantages of using Mule Ver.2 instead of Mule Ver.1?
117 To summarise, it is possible to use the new features added to GNU
118 Emacs 19. There are so many new features and we cannot list them
119 here, but the multi-frame functions a la Epoch and face functions
120 (see F-5 below) are examples.
122 A-8: Are there any mailing lists for Mule?
124 There are two lists for discussion in English:
127 Main language is English.
129 To discuss handling of Vietnamese. Main language is English.
131 The following is for various pre-release tests:
134 Main language is Japanese.
136 To discuss general topics in Japanese, please use the newsgroup
139 If you want to join these lists, contact the address
140 mule-request@etl.go.jp. Note that mule-jp-request does not exist.
142 A-9: Where should I send bug-reports of Mule?
144 If you write bug-reports and/or propositions for improvement in
145 Japanese, post them to fj.editor.mule. If you do not have access to
146 this newsgroup, send them to mule@etl.go.jp in English.
148 A-10: Does Mule have manuals written in Japanese/English/Chinese/
151 There are five kinds of manuals:
157 * various documents under the "doc" directory.
159 The current version of Mule is 2.0, but some manuals have not been
160 rewritten since Ver.1 (sorry).
164 An on-line manual written in English is included. Usually you can
165 read it with the man command. If your sys-admin did not make it
166 readable, you will have to copy $MULE/etc/mule.1 to your man
171 A texinfo manual, which explains the functions and terminology of Mule,
172 is also available. You will find the source in texinfo format
173 under $MULE/man and the formatted text under $MULE/info.
177 This is what you are reading now. The following versions are
178 available in $MULE/etc:
180 FAQ-Mule English version
181 FAQ-Mule.jp Japanese version
182 FAQ-Mule.kr Korean version
183 FAQ-Mule.cn Chinese version
187 The tutorial is available in Japanese and Korean. When you type
188 C-h T (M-x help-with-tutorial-for-mule), Mule asks you in what
189 language you want the tutorial. (Hitting space bar shows the list
190 of available languages.)
192 * documents under the `doc' directory
194 There are some sample texts and documentation of functions of Mule in
195 $MULE/doc. Most of the documents that were there in Ver.1 have
196 been texinfonised. $MULE/doc/viet contains documents written in
199 A-11: What does the name "Mule" stand for?
201 Quoted from UNIX dictionary :-)
203 [Mule] (UNIX command) [mju:l]
204 Stands for "MUlti-Lingual Enhancement to GNU Emacs". Corresponding
205 to the animal series of GNU, and also to the convention of giving
206 an antonym to its name, like gawk. (cf. Demacs, Emacs, gawk,
209 Hironobu SUZUKI <hironobu@sra.co.jp> first suggested this name.
211 A-12: Where can I get the latest Mule FAQ list?
213 There are four versions of Mule FAQ, i.e. in English, in Japanese,
214 in Korean and in Chinese. In the distribution set, they are named:
216 FAQ-Mule English version
217 FAQ-Mule.jp Japanese version
218 FAQ-Mule.kr Korean version
219 FAQ-Mule.cn Chinese version.
221 The original is the Japanese version. The others are
222 translations and may or may not be slightly obsolete.
224 You can get Mule FAQ from:
226 * network news. Mule FAQ is posted to fj.editor.mule at irregular
229 * anonymous FTP sites. It is available via anonymous FTP from the
232 etlport.etl.go.jp: /pub/mule/READMEDIR
233 sh.wide.ad.jp: /JAPAN/mule/READMEDIR
235 * the distribution set of Mule. Each distribution set contains the
236 latest FAQ (at that time) as etc/FAQ-Mule{,.jp,.kr}.
238 A-13: What functions are not implemented in Mule 2.0?
240 The following functions are not available in Mule 2.0. Wait for the
243 o Multi-lingual version of lisp/picture.el and lisp/rect.el
244 o Multi-lingual version of XMENU
245 o Displaying on Sun console
248 BUILDING AND INSTALLING
250 B-1: What options does configure accept?
252 You can get the list by `configure --help'.
254 B-2: How can I build Mule for X Window System under SunOS 4.1.x?
256 To make Mule under SunOS 4.1.x, static linking is necessary. If there
257 are no libraries for static linking, you have to create libX11.a by
260 #define ForceNormalLib YES
262 to the site.def file when you build X.
264 B-3: How can I use Wnn or Canna in Mule?
266 Specify --wnn or --canna to configure. If the libraries are not in
267 the standard directories, you may need to specify --wnn-include=XXXX,
270 B-4: During the building of Mule, a message "Pure Lisp storage
271 exhausted" was displayed, and the compilation stopped.
273 Ken'ichi HANDA <handa@etl.go.jp> writes:
275 This happens when the value of PURESIZE in puresize.h is too
276 small. Some systems seem to require a larger value. Loading many
277 language specific files (e.g. japanese.el, chinese.el) in
278 site-init.el requires a larger value, too. First, try again with
279 the value doubled. If that works, you can adjust PURESIZE to a
280 value a little greater than the value displayed in the message
281 "Pre Bytes Used XXXXX" (which is displayed when temacs has loaded
282 mule-init.el). After that you have to remake Mule with this
283 adjusted PURESIZE value.
285 B-5: When I was building Mule the compilation stopped with a message
286 saying "Undefined Symbol: __des_crypt". What can I do?
288 Masato Minda <minmin@astec.co.jp> writes:
290 I think this happens when you use static link under SunOS with
294 Apply the patch(es) for JLE (I forgot the patch ID).
295 Use JLE1.1.1 rev B or later.
298 I think making an empty _des_crypt function and linking it
299 together might work, though I've never tried it.
301 B-6: Why does Mule, which is compiled with GCC, add a ^M at the end of
302 each line in shell mode?
304 Ishikawa Ichiro <ichiro@ccsr.u-tokyo.ac.jp> writes:
306 I have had the same problem in Emacs 19. (At that time Mule did
307 not work at all if compiled with gcc.) The cause was incomplete
308 installation of gcc. (I used the JLE version of sed.)
310 Sed in JLE has bug and cannot install the header files (fixincludes)
311 well. Use sed of GNU instead.
313 B-7: I succeeded in compiling Mule, but I cannot input any language except
316 If you want to use foreign languages in Mule, you have to load the
317 language specific files by specifying them in the site-init.el file.
318 By default there is no site-init.el file, and this means that you
319 can input only English.
321 If you want to use Japanese and Chinese, include the following lines
322 in the lisp/site-init.el file when you build Mule:
326 When the necessary files have not been loaded, you can load them by
327 hand, for example, as follows:
328 M-x load-library RET japanese RET
330 The lastly loaded language will be the default. To change this,
333 to specify the mode. Completion of the mode name is available.
335 Loading too many language specific files may cause the "Pure Lisp
336 storage exhausted" error during the compile. In this case, refer
339 B-8: I want to save the result of configure to compile on other
342 Rename config.status to save the result. Or, you can compile the
343 source in a different directory.
345 B-9: I configured on the first machine. Then I configured on the
346 second machine. I want to make it on the first machine again. Do I
347 have to rerun configure?
349 No. All you have to do is executing the previously saved
352 B-10: How can I compile in a directory other than the source directory?
354 Specify the --srcdir=(_the_name_of_source_directory_) option to
355 configure. In this case, if you have ever run configure in the
356 source directory, you must execute `make clean' first in that
359 B-11: I have to rerun configure for some reason. Do I have to type
360 all command line options again?
362 No. All you have to do is `./config.status --recheck'. As
363 `config.status' is a sh script, you can edit this file directly to
364 modify the arguments. You can also give the argument to configure
365 by using the cut & past function of terminal emulator.
367 B-12: I tried to run configure, but the options are not recognised at
370 Are you using the JLE OS on Sun? It seems that JLE has problems
371 because of bugs and differences of features in the commands and
372 libraries. They say that the installation of GCC may fail under
375 In the current situation, `tr - _' does not work well. The
376 workaround is to change `tr - _' in configure to `tr \- _', or, if
377 you are using csh, execute
382 B-13: Making Mule under Solaris2 + X11R6 dumps core.
384 Mule 2.0 and GNU Emacs 19.25 cannot cope with multi-threading. This
385 means that you have to either:
389 in site.def when you build X11R6. The resulting X11R6 does not
390 cope with multi-thread.
394 2) link with libX11.a, not with libX11so.6. Then it will not be
395 linked with libthread.so.1, either.
398 HANDLING FOREIGN LANGUAGES
400 C-1: What languages are supported in Mule?
402 Except from $MULE/README.Mule:
410 We strongly recommend you to install Wnn4.108 or later. (Some
411 machine requires Wnn4.109p1, not Wnn4.108.) The `TAMAGO (EGG)'
412 system, which is bundled to Mule, communicates with Wnn's jserver
413 to provide a very convenient Japanese input method. For the usage
414 of `TAMAGO', see $MULE/info/egg.
416 Mule runs as a client of the X Window System, or runs under a Japanese
417 terminal (including terminal emulators like kterm and exterm). In
418 the latter case, you can use the Japanese input system that is
419 provided by the terminal. Other input systems are:
420 * sj3-egg, CANNA bundled with Mule
421 * SKK, boiled-egg included in the contrib directory
424 We strongly recommend you to install Wnn4.108 or later. (Some
425 machines require Wnn4.109p1, not Wnn4.108.) The `TAMAGO (EGG)'
426 system, which is bundled to Mule, communicates with cWnn's cserver
427 to provide a very convenient Chinese (GB) input method. For
428 the usage of `TAMAGO', see $MULE/info/egg.
430 Mule runs as a client of the X Window System, or runs under a Chinese
431 terminal (including terminal emulators like cxterm and exterm).
432 In the latter case, you can use the Chinese input system that is
433 provided by the terminal.
435 Furthermore, the QUAIL system (bundled to Mule) provides the
436 following input methods:
437 GB: PINYIN, PINYIN_with_TONE, CCDOSPY, SW
438 Big5: PINYIN, ETZY, ZOZY
439 For the usage of this system, see $MULE/info/quail.
441 Readers of alt.chinese.text or alt.chinese.text.big5 will find it
442 very convenient to use GNUS (a newsreader written in emacs lisp)
443 with gnusutil.el (bundled to Mule Ver.2). The program gnusutil
444 automatically converts Hz/zW encoding and BIG5 from/to the
445 internal code of Mule.
449 For hangul input, quail/hangul.el is provided. See `info/quail'
450 for the usage. Mule runs as a client of the X Window System, or runs
451 under a hangul terminal (including terminal emulators like
454 4. European languages
456 The QUAIL system provides many input methods for European
457 languages. Currently supported characters are:
458 Latin1, Latin2,.. Latin5, Greek (ISO8859-7),
459 Hebrew (ISO8859-8), Cyrillic (ISO8859-5).
460 See `$MULE/info/quail' for the usage. Languages that write from
461 right to left (Hebrew, for example) are supported, too. See
466 Thai is supported based on the TIS620 character set. The QUAIL
467 system (bundled to Mule) provides a Thai input method, too. See
468 `$MULE/info/quail' for the usage. The name of the quail package
469 for Thai is `thai'. A free font (12x29 pixels) is included in the
470 `fonts/ETL.tar.gz' file. You should widen Mule's line spaces
471 with `-lsp 5+' option if you use this font with a 12x24 ASCII
476 Vietnamese support is based on the two-table-VISCII method,
477 which divides the code table of VISCII into upper and lower
478 case. Mule can read and write VISCII, VIQR and VSCII. Use the
479 QUAIL system (bundled to Mule) for Vietnamese input. See
480 `$MULE/info/quail' for the usage of this system. The name of the
481 quail package for Vietnamese is `viet'. You can use both VISCII
482 font and VSCII font under the X Window System. A free VISCII font is
483 included in `fonts/ETL.tar.gz', too. It was designed to be used
484 with the other ETL fonts.
486 C-2: Some languages are written from right to left. Does Mule
487 support such languages?
489 Hebrew and Arabic are supported in this version. quail/hebrew.el can
490 be used to input Hebrew texts. See also the documents of
491 highlight-reverse-direction, r2l-double-cursor, etc. We are also
492 planning to support Persian, etc. in the future.
494 C-3: What kinds of coding systems are related to Mule? And when are
497 Mule supports the following coding systems:
499 * the internal code used in Mule's buffers.
500 * MS kanji code or SHIFT-JIS (Japanese only)
501 * a subset of ISO 2022 (including JIS [JUNET], EUC, CTEXT)
502 * Big5 (Chinese only)
504 You can specify any combination of these coding systems for file
505 input/output, key input, screen display, and interprocess
508 C-4: Why does the buffer size displayed in *Buffer List* differ so
509 much from the actual file size?
511 Mule allocates a unique "leading character" to each coding system.
512 The internal representation of a character other than an ASCII
513 character begins with a leading character. Therefore inside of
514 Mule, 8 bit characters like Latin-1 are represented in 2 bytes, and
515 16 bit characters like kanji are represented in 3 bytes. When you
516 save the contents of a buffer with the internal representation, the
517 size of the buffer and the file will be the same. If another
518 encoding is used for file output, they will be different.
520 C-5: I set (setq keyboard-coding-system *euc-japan*), but it does not
523 Do not use `setq' to bind a value to `keyboard-coding-system'. Use
524 the function `set-keyboard-coding-system' instead. This comment
525 also applies to `display-coding-system', `file-coding-system', etc.
527 C-6: Why doesn't `set-keyboard-coding-system' accept *autoconv*,
528 *big5-hku*, *big5-eten* and *internal*?
532 C-7: I want to use EUC for displaying Japanese, Chinese, Korean, EC,
535 This is impossible, because EUC for each language is the same
536 coding system. Use *junet* or *ctext* to display multi-lingual texts.
538 C-8: Where can I find documentation for the coding system used in Mule?
540 The coding system is ISO 2022 (or JIS X0202 in the case of JIS).
541 You will find a brief explanation in the texinfo manuals and in
542 `$MULE/info/ISO2022'.
544 C-9: How can I input characters other than ASCII in isearch?
546 Load `isearch-ext.el' first, then you will be able to input
547 characters other than ASCII in isearch (incremental search). You
548 can invoke `TAMAGO' with `C-\' and `quail' with `C-]' to input
551 C-10: Where can I get various fonts for various languages?
553 You can get them via anonymous FTP from the following sites:
555 etlport.etl.go.jp: /pub/mule/fonts
556 sh.wide.ad.jp: /JAPAN/mule/fonts
558 You will find the following fonts there:
560 ./Chinese/ or Chinese.tar.gz
561 gb16fs.bdf -- 16x16 pixels GB font
562 gb24st.bdf -- 24x24 pixels GB font
563 taipei16.bdf -- 16x16 pixels BIG5 (ETen) font
564 taipei24.bdf -- 24x24 pixels BIG5 (ETen) font
566 ./Japanese/ or Japanese.tar.gz
567 k14.bdf -- 14x14 pixels JISX0208.1983 font
568 k16.bdf -- 16x16 pixels JISX0208.1990 font
569 jiskan16.bdf -- 16x16 pixels JISX0208.1983 font
570 jiskan24.bdf -- 24x24 pixels JISX0208.1983 font
571 min-1-16.bdf -- 16x16 pixels JISX0212.1990 (HojoKanji) font
572 min-1-24.bdf -- 24x24 pixels JISX0212.1990 (HojoKanji) font
573 8x16rk.bdf -- 8x16 pixels JISX0201.1976 (Kana) font
574 12x24rk.bdf -- 12x24 pixels JISX0201.1976 (Kana) font
576 ./Korean/ or Korean.tar.gz
577 hanglm16.bdf -- 16x16 pixels KSC5601.1987 font
578 hanglm24.bdf -- 24x24 pixels KSC5601.1987 font
581 etl{14,16,24}-latin1.bdf -- ISO8859-1 (Latin-1) font
582 etl{14,16,24}-latin2.bdf -- ISO8859-2 (Latin-2) font
583 etl{14,16,24}-latin3.bdf -- ISO8859-3 (Latin-3) font
584 etl{14,16,24}-latin4.bdf -- ISO8859-4 (Latin-4) font
585 etl{14,16,24}-cyrillic.bdf -- ISO8859-5 (Cyrillic) font
586 etl{14,16,24}-greek.bdf -- ISO8859-7 (Greek) font
587 etl{14,16,24}-hebrew.bdf -- ISO8859-8 (Hebrew) font
588 etl{14,16,24}-latin5.bdf -- ISO8859-9 (Latin-5) font
589 etl{14,16,24}-swedish.bdf -- SEN850200 (Swedish) font
590 etl{14,16,24}-ipa.bdf -- IPA font
591 etl{14,16,24}-sisheng.bdf -- SiSheng (Chinese Radical) font
592 etl{16,24}-viscii.bdf -- VISCII 1.1 (Vietnamese) font
593 etl{14,24}-koi.bdf -- KOI (Cyrillic) font
594 etl{16,24}-arabic{0,1,2}.bdf -- Arabic font
595 etl24-thai.bdf -- TIS620 (Thai) font
597 X11R6 also contains most of the JIS, KSC, GB fonts.
599 Besides the above Japanese.tar.gz, another JISX0212.1990 font was
600 posted to fj.sources:
602 From: yasuoka@kudpc.kyoto-u.ac.jp (Koichi Yasuoka)
603 Newsgroups: fj.sources
604 Subject: 16x16 JIS Supplementary Kanji Font (1/6)
605 Date: 28 Jul 1994 00:06:12 +0900
606 Organization: Data Processing Center, Kyoto University, Kyoto, Japan.
607 Message-ID: <315t54$et5@kudpc.kudpc.kyoto-u.ac.jp>
609 This posting was followed by some patches, so you'd better apply them.
611 C-11: Some foreign language characters are different from what
612 quail-help displays on the screen. Is this a known bug?
614 Make sure that *quail-keyboard-translate-table* is correctly set.
616 If this variable is left unchanged, Mule assumes your keyboard
617 layout is same as vt100 and displays the layout for vt100.
618 Especially if you are using a JIS keyboard, you have to put the
619 following in your .emacs:
621 (setq *quail-keyboard-translate-table*
622 *quail-keyboard-translate-table-jis*)
624 See doc/keyboard-translation.text for more information.
626 C-12: How can I get hardcopy of texts made with Mule?
628 A program called m2ps is included in the directory `lis-src' of
629 Mule. It converts multi-lingual files into PostScript format.
630 Note that m2ps accepts only *internal* encoding of Mule.
632 m2ps uses X's BDF files as fonts. Characters are sent to printer
633 as bitmaps, so you can get hardcopy of multi-language texts even if
634 your printer does not support multi-lingual fonts. For further
635 information, see the on-line manual (m2ps.1).
637 C-13: Mule fails to handle filenames which contain two byte characters
638 like Japanese, Chinese, or Korean.
640 You must specify `--mcpath' to `configure' when you compile Mule.
641 You also have to specify what coding system will be used in
642 filenames. Adding the following lines in `site-init.el' may
643 help. (Note that *autoconv* cannot be specified).
645 ;;; example: To use Korean EUC for filenames
646 (if (fboundp 'set-pathname-coding-system)
647 (set-pathname-coding-system *euc-korea*))
649 C-14: Mule wrongly determines the eol-type when it reads a file in.
651 The current version of Mule guesses the eol-type when it first
652 encounters a CR/LF/CR+LF. This means if a CR is placed at the end
653 of a `LF terminated' line, that file is regarded as ....*dos.
654 Similarly, if a CR is placed at the end of a `CR+LF terminated'
655 line, that file is regarded as ....*mac. You should explicitly
656 specify the eol-type by `\C-u\C-x\C-f (\C-u M-x find-file)' when you
657 read such ambiguous files.
659 There are three possible reasons when the eol-type is wrongly
662 1) The file contains more than one coding-system / eol-type.
663 2) Some sequences are unfortunately placed at the boundary of
665 3) The priority of coding-system is wrong.
670 D-1: I do not want a new line inserted even if I execute `next-line'
671 at the end of a buffer.
673 (setq next-line-add-newlines nil) does what you want.
675 D-2: How can I stop Mule from beeping and displaying
676 `beginning-of-buffer !' when I execute `previous-line' at the
677 beginning of a buffer?
679 Include the following lines in your .emacs file. (Note that this
680 works only in Emacs 19.26 or later.)
682 (defun previous-line (arg)
686 (beginning-of-buffer)))
688 D-3: I don't want the menu-bar and the scroll-bar.
690 You can make them invisible by (menu-bar-mode 0) and
691 (scroll-bar-mode -1), respectively. To make the scroll bar only of
692 the current frame invisible, execute (toggle-scroll-bar -1).
694 D-4: I cannot set a hook by (setq xxx-hook yyy).
696 Maybe other hooks are overriding it. To avoid such a trouble, use
697 `add-hook' instead of `setq' when you set a hook.
700 (add-hook 'c-mode-hook '(lambda () (setq tab-width 4)))
702 By default, `add-hook' appends the new function at the top of the
703 hook. However, if you specify a `t` as the third argument to
704 `add-hook', it will be added at the end of the hook.
706 D-5: Is it possible to use the same .emacs file for Mule-1.x and
709 Sometimes this causes a trouble because of the difference of the
710 versions of the original emacs. To make a commonly usable .emacs
711 file, adopt the following structure:
713 (if (eq (string-to-int emacs-version) 18)
714 (_programs_for_Mule-1.x_))
715 (if (eq (string-to-int emacs-version) 19)
716 (_programs_for_Mule-2.x_))
718 D-6: Why does the BS key execute the same command as the DEL key when
719 I use Mule under the X Window System? How can I change it as if I am
720 using it on a terminal?
722 On terminals, the BS key generates ^H and the DEL key generates ^?.
723 This means that Mule cannot distinguish BS from ^H nor DEL from ^?.
724 Under X, however, these keys are distinguishable. So, taking account
725 of the fact that the BS key is often used for what the DEL key does,
726 the BS key executes what the DEL key does.
728 If you prefer the behaviour on terminals, include the following
729 lines in your .emacs file:
731 (if (eq window-system 'x)
733 (define-key function-key-map [backspace] [8])
734 (put 'backspace 'ascii-character 8)))
736 The `term/bobcat' file, which exchanges the two keys on terminals,
737 does not under X. Include the following code in you .emacs file if
738 you want to exchange the keys:
740 (cond ((eq window-system 'x)
741 (define-key function-key-map [delete] [8])
742 (put 'delete 'ascii-character 8))
743 ((null window-system)
744 (load "term/bobcat")))
749 E-1: When I am writing mail or news, typing C-c C-y quotes original
750 text with " " at the beginning of line. How can I change this
751 citation mark to "> " ?
753 Use Supercite. Supercite has many functions and you can customise
754 your own citation mark. See E-2 through E-4 for detail.
756 E-2: How can I include the name of the sender in a citation mark?
758 The following configuration, by ksakai@mtl.t.u-tokyo.ac.jp, should
759 work. Some lines may be omitted according to your configuration.
760 You can change the last three lines according to your taste. (See
761 the documents of Supercite for detail.)
764 (autoload 'sc-cite-original "supercite" "Supercite 3.1" t)
765 (autoload 'sc-submit-bug-report "supercite" "Supercite 3.1" t)
766 (autoload 'sc-perform-overloads "sc-oloads" "Supercite 3.1" t)
767 (setq mail-citation-hook 'sc-cite-original)
768 (setq mail-yank-hooks 'sc-cite-original) ; for all but MH-E
769 (setq mh-yank-hooks 'sc-cite-original) ; for MH-E (3.7 or later)
770 (setq news-reply-mode-hook 'sc-perform-overloads) ; for RNEWS,GNEWS,GNUS
771 (setq mail-setup-hook 'sc-perform-overloads) ; for RMAIL,PCMAIL,GNUS
772 (setq gnews-ready-hook 'sc-perform-overloads) ; for GNEWS
774 (setq sc-electric-references-p nil)
775 (setq sc-preferred-header-style 1)
776 (setq sc-citation-leader "")
778 E-3: How can I change the citation mark to "> " with Supercite?
780 Add the following line in addition to what has been done in E-2:
782 (setq sc-nested-citation-p t)
784 Note that if you add the above line, you cannot include the senders'
787 E-4: How can I customise citation mark with Supercite?
789 Use sc-register-2.3.1 written by yoichi@s5g.ksp.fujixerox.co.jp.
790 You can use it by installing sc-register and adding the following
793 (setq sc-load-hook '(lambda () (require 'sc-register)))
794 (setq sc-preferred-attribution 'registeredname)
796 You will find it convenient when `selection by completion' is
797 tiresome, e.g., when you include Japanese characters.
799 Note that sc-register does not work with Supercite 3.0 or later. It
800 is said that sc-register will be integrated to Supercite in future.
802 E-5: I moved from Supercite 2.3 from 3.1, then it automatically does
803 `fill-paragraph' whenever I use `sc-yank-original'.
805 This is a bad feature, isn't it? We do not see the reason why
806 backward compatibility is not kept by default. Anyway, adding the
807 following line in your .emacs file suppresses `fill-paragraph'.
809 E-6: RMAIL does not work.
811 Takeshi Shigehara <takeki@nalgo.snet.or.jp> writes:
813 On NEW EWS4800 EWX-UX/V(Rel 4.2), include the following lines in
814 `site-init.el'. (It is possible that all SVR4 machines require
817 (setq rmail-spool-directory "/var/mail/")
818 (setq sendmail-program "/usr/ucblib/sendmail")
819 (setq manual-program "/usr/ucb/man")
821 In addition to that, make the directory `/var/mail' readable and
822 writable by all users:
826 E-7: I am using GNUS. When I post to, say, fj.test, the default value
827 of distribution is not set to fj.
829 That is a new feature. The default is the first element of the list
830 `gnus-local-distributions', which holds the candidates of
836 F-1: Japanese (Chinese, Korean) text are not displayed in Mule under
839 You must set the resource like the following. Do not forget to
840 include the specification of `FontSet-xxx' that is set as
846 -*-fixed-medium-r-*--16-*-iso8859-1,\
847 -*-fixed-medium-r-*--16-*-iso8859-2,\
848 -*-fixed-medium-r-*--16-*-iso8859-3,\
849 -*-fixed-medium-r-*--16-*-iso8859-4,\
850 -*-fixed-medium-r-*--16-*-iso8859-5,\
851 -*-fixed-medium-r-*--16-*-iso8859-7,\
852 -*-fixed-medium-r-*--16-*-iso8859-8,\
853 -*-fixed-medium-r-*--16-*-iso8859-9,\
854 -*-fixed-medium-r-*--16-*-viscii1.1-1,\
855 -*-fixed-medium-r-*--16-*-mulearabic-0,\
856 -*-fixed-medium-r-*--16-*-mulearabic-1,\
857 -*-fixed-medium-r-*--16-*-mulearabic-2,\
858 -*-fixed-medium-r-*--16-*-muleipa-1,\
859 -*-fixed-medium-r-*--16-*-jisx0201.1976-*,\
860 -*-fixed-medium-r-*--16-*-jisx0208.1983-*,\
861 -*-fixed-medium-r-*--16-*-jisx0212.1990-*,\
862 -*-medium-r-*--16-*-gb2312.1980-*,\
863 -*-mincho-medium-r-*--16-*-ksc5601.1987-*,\
864 -*-fixed-medium-r-*--16-*-tis620.2529-1
866 -*-fixed-medium-r-*--24-*-iso8859-1,\
867 -*-fixed-medium-r-*--24-*-iso8859-2,\
868 -*-fixed-medium-r-*--24-*-iso8859-3,\
869 -*-fixed-medium-r-*--24-*-iso8859-4,\
870 -*-fixed-medium-r-*--24-*-iso8859-5,\
871 -*-fixed-medium-r-*--24-*-iso8859-7,\
872 -*-fixed-medium-r-*--24-*-iso8859-8,\
873 -*-fixed-medium-r-*--24-*-iso8859-9,\
874 -*-fixed-medium-r-*--24-*-viscii1.1-1,\
875 -*-fixed-medium-r-*--24-*-mulearabic-0,\
876 -*-fixed-medium-r-*--24-*-mulearabic-1,\
877 -*-fixed-medium-r-*--24-*-mulearabic-2,\
878 -*-fixed-medium-r-*--24-*-muleipa-1,\
879 -*-fixed-medium-r-*--24-*-jisx0201.1976-*,\
880 -*-fixed-medium-r-*--24-*-jisx0208.1983-*,\
881 -*-fixed-medium-r-*--24-*-jisx0212.1990-*,\
882 -*-medium-r-*--24-*-gb2312.1980-*,\
883 -*-mincho-medium-r-*--24-*-ksc5601.1987-*,\
884 -*-fixed-medium-r-*--24-*-tis620.2529-1
886 F-2: Why does Mule appear with dirty fonts when I use it under X?
888 TAKAHASHI Naoto <ntakahas@etl.go.jp> and Ken'ichi Handa
889 <handa@etl.go.jp> write:
891 Mule creates a window whose size is based on the width of the
892 ASCII font. If the width of the ASCII font and that of the other
893 fonts do not match, then some characters will not be displayed
894 completely. The width of Japanese, Chinese, and Korean fonts must
895 be exactly twice as wide as that of ASCII fonts; the width of
896 other fonts must be the same as that of ASCII fonts.
898 If you see dirty characters on your screen, it may be caused by
899 the auto-scaling function of X. If an X server receives a request
900 of a font which does not exist but whose specification is LFD
901 compliant, it tries to expand of reduce what is available. For
902 example, a specification
903 "-*-fixed-medium-r-*--*-*-*-*-*-*-jisx0208.1983-*"
904 is LFD compliant, so it may be resized. On the other hand, a
905 specification in mule-init.el:
906 "-*-fixed-medium-r-*--*-*-jisx0208.1983-*"
907 is not LFD compliant (the number of columns are less than it
908 should to be), so auto-scaling is inhibited. (What is described
909 here is what we have learned from experience, not from X documentation.)
911 F-3: How can I set the default font size to 14 pixels under X?
913 The first FontSet in the `Emacs*FontSetList:' field in your X
914 resource will be used as default. So if you want the default to be
915 14 pixels, put `14' as the first element of `Emacs*FontSetList:', and
916 include the specification of FontSet-14. See F-1 for examples of
917 FontSet specification.
919 Note that `emacs*FontSetList:' or `Mule*FontSetList:' are invalid
920 for resource specification. SANETO Takanori <sanewo@cep.sony.co.jp>
923 You can think of `Emacs' as the class name and `mule' as the
926 `Emacs' is used for all Emacs family programs: mule, nemacs,
927 epoch, nepoch, and of course the original GNU emacs.
929 On the other hand, the instance name is used to distinguish each
930 entities. If you rename mule to hoge, the specification
931 `Emacs*...' still has effect but `mule*...' is of no effect. When
932 both specification by instance name and specification by class
933 name are valid, the instance name has priority.
935 You can explicitly specify the instance name by `-rn name'
936 option. Or if the environment variable `WM_RES_NAME' is set, it
937 will be used. If neither the option nor the environment variable
938 is available, the command name will be used.
940 F-4: I turned on visible-bell with (set visible-bell t), but the
941 flashing area is limited to a quarter in the centre.
943 This is a feature. It has changed since GNU Emacs 18.58.
945 F-5: What is a `face'?
947 It is a mechanism used by Emacs when running under the X Window
948 System that attaches attributes like colours or fonts to the
949 displayed strings. Mule 2.x uses this mechanism even for displaying
950 the mode line in reverse video. `hilit19.el' and `font-lock.el' are
951 examples of programs that use face well.
953 F-6: What is `terminal face'? How can I use it?
955 In the original emacs, faces are only available under the X Window
956 System. In Mule, however, you can use face even outside X. We call
957 this mechanism `terminal face'. (The biggest reason why we need a
958 new name is to use it for a compile switch and configure switch.)
960 To enable the terminal face facility, specify `--terminal-face' when
963 F-7: Mule under X has wide line spaces. How can I shrink them?
965 Include the following line in you X resource file:
969 Or invoke Mule with the `-lsp 0+0' command line option. The
970 function `x-set-linespace', which was provided in Mule Ver.1, is not
971 yet available in Mule Ver.2.
976 G-1: A lisp program `xxx', which worked in Mule 1.x, does not work any
977 more. What should I do?
979 Mule 1.x is based on GNU Emacs 18.59, but Mule 2.x is based on GNU
980 Emacs 19. Many features have been modified. But you do not have to
981 be pessimistic, as many programs have now been ported. A
982 checklist is given below:
984 1. The distribution kit of Mule 2.x contains many lisp programs
985 that were optional in the previous release. Check the standard
986 lisp directory first, as these programs have already ported to
987 Mule 2.x. If you find an alternative there, use it.
989 2. In some cases, the author of the program has already finished
990 porting, even though the newer version is not included in the
991 standard distribution. It is worth searching for the latest
992 version with archie or another tool.
994 3. For example, shell-mode, which has many different improved
995 programs, has become much more convenient in Mule 2.x. So the
996 standard version would be an alternative.
998 4. You can port it yourself as a last resort.
1000 G-2: How can I display reserved words and comments in C programs in
1003 Use `hilit19.el' or `font-lock.el'.
1005 G-3: How can I use `hilit19.el'?
1007 All you have to do is load the file. If you want to restrict the
1008 modes in which hilit19 is enabled, list the names of the modes in
1009 `hilit-mode-enable-list'. Also, you can specify the modes in which
1010 hilit19 is disabled like the following:
1012 (setq hilit-mode-enable-list
1013 '(not text-mode emacs-lisp-mode sgml-mode c-mode c++-mode)
1015 A fault of hilit19 is that you must hit `C-S-l' after having entered
1016 strings to reflect the effect. Because of this feature, you may
1017 want to use font-lock only in some specific modes.
1019 G-4: How can I use `font-lock.el'?
1021 Include lines like the following in your .emacs file for each mode
1022 in which you want to enable font-lock:
1024 (setq emacs-lisp-mode-hook '(lambda () (font-lock-mode 1)))
1026 By default, font-lock does not display in colour. If you want
1027 colour strings, specify the face as follows:
1029 (add-hook 'font-lock-mode-hook
1031 (make-face 'keyword-face)
1032 (set-face-foreground 'keyword-face "tomato")
1033 (setq font-lock-keyword-face 'keyword-face)
1035 (make-face 'comment-face)
1036 (set-face-foreground 'comment-face "violetred4")
1037 (setq font-lock-comment-face 'comment-face)
1039 (make-face 'string-face)
1040 (set-face-foreground 'string-face "darkgreen")
1041 (setq font-lock-string-face 'string-face)
1043 (make-face 'function-face)
1044 (set-face-foreground 'function-face "blueviolet")
1045 (setq font-lock-function-name-face 'function-face)
1047 (make-face 'c-type-face)
1048 (set-face-foreground 'c-type-face "darkolivegreen")
1049 (setq font-lock-type-face 'c-type-face)
1053 There are improved versions of font-lock: face-lock can handle
1054 colours and grey scales; fast-lock works faster. These programs are
1055 available via anonymous FTP, and will be integrated into font-lock
1056 in the future version of emacs.
1058 G-5: I want a more convenient c-mode.
1060 Use cc-mode. It supports, for example, various indent styles and
1061 C++. It is more convenient in many respects.
1063 G-6: Are there any packages which automatically use RCS?
1065 `vc.el' is such a one, and can be used in Mule 2.x by default. If
1066 you find-file a file that is controlled by RCS, vc-mode is
1067 automatically turned on, and C-x C-q does `ci -u' or `co -l'
1068 depending on the situation. This is already practical enough, but
1069 if you want to know the detail, refer to info.
1071 G-7: How can I input codes like `ESC $ B $ "' directly from the
1074 You can do it by using `keyboard.el'. Give *junet* to
1075 `set-keyboard-coding-system' and type what you want.
1077 G-8: Why does "M-!" (shell-command) not work when I load my lovely
1080 Many functions, including `write-region' and `insert-file-contents'
1081 (which are modified in Mule), will be replaced by loading ange-ftp.
1083 In Mule, `shell-command' calls the new `write-region' and the new
1084 `insert-file-contents' with extra arguments, but another
1085 `write-region' introduced by ange-ftp cannot interpret these extra
1086 arguments, so the execution fails.
1088 To fix this problem, Masayuki KUWADA <kuwada@soliton.ee.uec.ac.jp>
1091 Add `&rest coding-system' at the end of parameters of the
1092 definition of `ange-ftp-write-region' and that of
1093 `ange-ftp-insert-file-contents' in `ange-ftp.el', and apply the
1094 following modifications. (The modified ange-ftp can be shared
1097 [Caution] The following changes are for an ange-ftp whose version is
1098 RCS: !Header: ange-ftp.el,v 4.20 92/08/14 17:04:34 ange Exp !
1099 Other versions may require different modifications.
1101 In `ange-ftp-write-region', `ange-ftp-real-write-region' is
1102 called twice. Change these occurrences as follows:
1104 (ange-ftp-real-write-region start end temp nil visit)
1106 (apply 'ange-ftp-real-write-region start end temp nil
1107 visit coding-system)
1109 (ange-ftp-real-write-region start end filename append visit)
1111 (apply 'ange-ftp-real-write-region start end filename append
1112 visit coding-system)
1114 And in `ange-ftp-insert-file-contents',
1115 `ange-ftp-real-insert-file-contents' is called twice. Change
1116 these occurrences as follows:
1118 (ange-ftp-real-insert-file-contents temp visit)
1120 (apply 'ange-ftp-real-insert-file-contents
1124 (ange-ftp-real-insert-file-contents filename visit)
1126 (apply 'ange-ftp-real-insert-file-contents
1127 filename visit coding-system)
1130 EMACS LISP PROGRAMMING
1132 H-1: Is Mule upwards-compatible with Nemacs/Emacs?
1134 Although Mule is based on GNU Emacs, they are slightly different at
1135 the level of emacs lisp. Mule is quite different from Nemacs.
1137 Enami TSUGUTOMO <enami@sys.ptg.sony.co.jp> points out the
1138 incompatibility between Mule and Nemacs/Emacs as follows:
1140 * Incompatibility caused by the existence of functions specific to
1142 * Incompatibility caused by the modifications to function
1143 definitions (number of arguments, etc.)
1144 * Incompatibility of byte compiled files caused by the difference
1145 of the internal representation between Mule and Nemacs. Their
1146 byte code is compatible, however. (isn't it? :-)
1147 * Incompatibility of compiled emacs lisp files caused by the
1148 representations of literals between Mule 1.x and Mule 2.x.
1149 * Incompatibility caused by the difference of versions of GNU
1150 Emacs they are based on.
1152 H-2: Give me some hints on porting a program for Mule 1.x to Mule 2.x.
1154 Pay attention to the following points:
1156 * `auto-fill-hook' has been renamed to `auto-fill-function'.
1157 * The structure of keymaps has been changes a little.
1158 * You'd better change obsolete variables:
1159 unread-command-char -> unread-command-event
1162 ----------------------------------------------------------------------
1163 FAQ Part 2: Questions specific to each language
1167 CH-1: I succeeded in compiling Mule, but I cannot input Chinese.
1169 If you want to use foreign languages in Mule, you have to load the
1170 language specific files by specifying them in the site-init.el file.
1171 By default there is no site-init.el file, and this means that you
1172 can input only English.
1174 If you want to use Chinese, include the following line in the
1175 lisp/site-init.el file when you build Mule:
1179 CH-2: How can I input Chinese?
1181 TAMAGO is used to input Chinese. By communicating with cserver
1182 of cWnn, TAMAGO provides a convenient input method for Chinese(GB).
1183 Type "M-x load-library RET chinese RET" and select PinYin mode to
1184 enable Pin-Yin input.
1186 Mule also provides quail-system. This system supports all of the
1187 conversion tables included in `cxterm/dict/tit'.
1189 CH-3: I want to use EUC for displaying Japanese, Chinese, Korean, EC,
1190 etc. simultaneously.
1192 It is impossible, because EUC for each language is the very same
1193 coding system. Use *junet* or *ctext* to display multi-lingual texts.
1196 CH-4: How can I input hanzi in incremental search?
1198 Load `isearch-ext.el' first, then you will be able to input
1199 characters other than ASCII in isearch (incremental search). You
1200 can invoke `TAMAGO' with `C-\' and `quail' with `C-]' to input
1203 CH-5: Mule fails to handle filenames which contain Chinese.
1205 You must specify `--mcpath' to `configure' when you compile Mule.
1206 You also have to specify what coding system will be used in
1207 filenames. Adding the following lines in `site-init.el' may
1208 help. (Note that *autoconv* cannot be specified).
1210 ;;; example: To use Chinese EUC for filenames
1211 (if (fboundp 'set-pathname-coding-system)
1212 (set-pathname-coding-system *euc-china*))
1214 CH-6: Can I read a newsgroup alt.chinese.text[.big5] in Chinese?
1216 In alt.chinese.text ~{ and ~} are used instead of 'ESC $ A' (which
1217 designates Chinese to G0) and 'ESC ( B' (which designates ASCII to
1218 G0) respectively. This is called Hz encoding. In Mule you can read
1219 this newsgroup in Chinese with the combination of `chinese.el',
1220 `gnusutil.el', and GNUS. Load `chinese.el' and `gnusutil.el' in
1221 this order, then invoke GNUS. `gnusutil.el' is included in the
1222 standard distribution kit of Mule Ver.2.
1226 JP-1: What is the advantage of using Mule? Are there any cases in which
1227 Nemacs is better? If there are, what are they?
1229 Some advantages of using Mule are:
1231 * You can use not only English and Japanese, but also Chinese,
1232 Korean, and many other languages. You can use a mixture of these
1234 * The specified regions in a buffer can have various display
1235 attributes. Unlike Nemacs, you can display these attributes on a
1236 normal terminal as long as the terminal supports such functions.
1237 * You can utilise a Japanese input system called "TAKANA" which
1238 gives better performance than the "TAMAGO" system of Nemacs.
1239 * Nemacs is based on GNU Emacs 18.55, while Mule Ver.2 is based on
1241 * Mule has a powerful regular expression compiler.
1243 On the other hand, Mule is much bigger and more complicated than
1244 Nemacs. So if your computer facility is not powerful and the
1245 languages you want to use are limited to English and Japanese, it
1246 may be better to use Nemacs.
1248 Note that Mule is not fully compatible with Nemacs. Some of the
1249 applications developed for Nemacs do not work well with Mule.
1251 JP-2: Will Nemacs disappear?
1253 "Of course not" would be the ideal answer, but Nemacs will not be
1254 supported any more. This means that the final version of Nemacs is
1257 JP-3: Are there any mailing lists for Mule in which discussion is done
1260 Use news (fj.editor.emacs) for discussion in Japanese. (See A-8.)
1262 JP-4: Does Mule has manuals written in Japanese?
1264 See also A-10. Mule has the following Japanese manuals and
1267 * texinfo manual (in $MULE/man)
1269 mule-jp.texi texinfo manual for Mule
1270 egg-jp.texi texinfo manual for TAMAGO
1271 canna-jp.texi texinfo manual for canna
1274 * FAQ (in $MULE/etc/FAQ-Mule.jp)
1276 The document you are reading now is the English translation of this.
1280 You can invoke the Japanese tutorial by C-h T (M-x
1281 help-with-tutorial-for-mule) in Mule.
1283 * documents under the `doc' directory
1285 The directory `$MULE/doc' contains explanations of functions and
1286 sample text. The files whose names end in `.jp' are written in
1289 JP-5: I succeeded in compiling Mule, but I cannot input Japanese.
1291 If you want to use foreign languages in Mule, you have to load the
1292 language specific files by specifying them in the site-init.el file.
1293 By default there is no site-init.el file, and this means that you
1294 can only input English.
1296 If you want to use Japanese, include the following line in the
1297 lisp/site-init.el file when you build Mule:
1303 JP-6: I cannot display Japanese in Mule under the X Window System.
1305 You must set the resource like the following. Do not forget to
1306 include the specification of `FontSet-xxx' that is set as
1312 -*-fixed-medium-r-*--16-*-iso8859-1,\
1313 -*-fixed-medium-r-*--16-*-iso8859-2,\
1314 -*-fixed-medium-r-*--16-*-iso8859-3,\
1315 -*-fixed-medium-r-*--16-*-iso8859-4,\
1316 -*-fixed-medium-r-*--16-*-iso8859-5,\
1317 -*-fixed-medium-r-*--16-*-iso8859-7,\
1318 -*-fixed-medium-r-*--16-*-iso8859-8,\
1319 -*-fixed-medium-r-*--16-*-iso8859-9,\
1320 -*-fixed-medium-r-*--16-*-viscii1.1-1,\
1321 -*-fixed-medium-r-*--16-*-mulearabic-0,\
1322 -*-fixed-medium-r-*--16-*-mulearabic-1,\
1323 -*-fixed-medium-r-*--16-*-mulearabic-2,\
1324 -*-fixed-medium-r-*--16-*-muleipa-1,\
1325 -*-fixed-medium-r-*--16-*-jisx0201.1976-*,\
1326 -*-fixed-medium-r-*--16-*-jisx0208.1983-*,\
1327 -*-fixed-medium-r-*--16-*-jisx0212.1990-*,\
1328 -*-medium-r-*--16-*-gb2312.1980-*,\
1329 -*-mincho-medium-r-*--16-*-ksc5601.1987-*,\
1330 -*-fixed-medium-r-*--16-*-tis620.2529-1
1332 -*-fixed-medium-r-*--24-*-iso8859-1,\
1333 -*-fixed-medium-r-*--24-*-iso8859-2,\
1334 -*-fixed-medium-r-*--24-*-iso8859-3,\
1335 -*-fixed-medium-r-*--24-*-iso8859-4,\
1336 -*-fixed-medium-r-*--24-*-iso8859-5,\
1337 -*-fixed-medium-r-*--24-*-iso8859-7,\
1338 -*-fixed-medium-r-*--24-*-iso8859-8,\
1339 -*-fixed-medium-r-*--24-*-iso8859-9,\
1340 -*-fixed-medium-r-*--24-*-viscii1.1-1,\
1341 -*-fixed-medium-r-*--24-*-mulearabic-0,\
1342 -*-fixed-medium-r-*--24-*-mulearabic-1,\
1343 -*-fixed-medium-r-*--24-*-mulearabic-2,\
1344 -*-fixed-medium-r-*--24-*-muleipa-1,\
1345 -*-fixed-medium-r-*--24-*-jisx0201.1976-*,\
1346 -*-fixed-medium-r-*--24-*-jisx0208.1983-*,\
1347 -*-fixed-medium-r-*--24-*-jisx0212.1990-*,\
1348 -*-medium-r-*--24-*-gb2312.1980-*,\
1349 -*-mincho-medium-r-*--24-*-ksc5601.1987-*,\
1350 -*-fixed-medium-r-*--24-*-tis620.2529-1
1352 JP-7: How can I input Japanese?
1354 The following Japanese input systems are prepared:
1356 * TAMAGO (aka EGG) version TAKANA
1360 All of them offer a Japanese input facility using a romaji-kanji
1361 conversion method, which utilises a network conversion server. For
1362 details, refer to the manuals of each system. These systems must be
1363 set up when building Mule.
1365 * T-CODE input using quail
1367 This requires no conversion server. After loading
1368 `lisp/quail/tcode.el', you can toggle between ASCII and T-CODE mode
1369 by C-]. (CAUTION: `quail/tcode.el' will soon be replaced with
1372 Japanese can be input with `SKK', too. SKK requires no special
1373 settings when Mule is built. It can be used both as a closed system
1374 in Mule and as a system which communicates with a dictionary server.
1375 For Mule Ver.2, use skk7.18.1 or later version.
1377 JP-8: What is TAMAGO (aka EGG) ?
1379 TAMAGO is a system which offers a Japanese/Chinese environment
1380 utilising the network-wide conversion servers (jserver/cserver) of
1381 Wnn. Sometimes TAMAGO is called EGG, which is the translation of
1382 `TAMAGO' in English.
1384 TAMAGO consists of three parts: 1) a input string conversion system
1385 (or romaji-kana conversion system), 2) a kana-kanji (and
1386 pinyin-hanzi) conversion system, and 3) a Japanese editing system.
1387 The input string conversion system can be used not only for hiragana
1388 and katakana but also for pinyin, hangul, and other languages.
1390 JP-9: What is TAKANA?
1392 Toshiaki SHINGU <shingu@cpr.canon.co.jp> writes:
1394 It is a version of TAMAGO made for the Wnn V4 library. The name
1395 stands for "TAmagoyo KAshikoku NA-re (EGG, be clever)". In
1396 addition to the conventional TAMAGO, it has the following
1399 * dai-bunsetsu / sho-bunsetsu conversion
1400 * reverse conversion (kanji to kana)
1401 * word registration according to the POS of V4 server (e.g.
1403 * enabling / disabling a word without deleting it from the
1405 * setting words frequency
1406 * setting comments in the dictionary
1408 TAKANA is not an alternative to TAMAGO but rather an enhancement.
1409 TAMAGO will be integrated into a TAKANA version in the future.
1410 Older versions (Wnn V3, and Wnn V4 for V3 library) will not be
1413 JP-10: What is sj3-egg?
1415 It is another version of TAMAGO which communicates with sj3serv
1416 included in the contrib part of X11R5/R6. It provides very high
1417 conversion efficiency.
1419 JP-11: What is Canna?
1421 It is a kana-kanji conversion system which follows the server-client
1422 method. In Mule, it provides almost the same user interface as
1423 TAMAGO but the conversion server of Canna is used instead.
1427 Masahiko SATO <masahiko@sato.riec.tohoku.ac.jp> writes:
1429 SKK is a system which provides a fast and highly efficient
1430 Japanese input environment. It allows the user to input the
1431 intended sentence easily and "as is". SKK is fast because it
1432 performs the conversion without any grammatical analysis. The
1433 user can let it know his/her intention by specifying the starting
1434 point of OKURIGANA, and this makes the conversion efficiency high.
1435 When registering words in the dictionary it is not necessary for
1436 the user to give information about part of speech, etc., and this
1437 makes it easy to augment the dictionary. You can learn the usage
1438 of SKK in a short time with its tutorial program.
1440 JP-13: How can I input Japanese (or Korean/Chinese) characters whose
1441 shape I am aware of but whose reading I don't know?
1443 TAMAGO supports both BUSYU input (M-x busyu-input) and KAKUSUU input
1444 (M-x kakusuu-input). These functions make it possible to input a
1445 kanji by selecting its busyu or kakusuu from a menu displayed in the
1448 JP-14: I am not able to cut & paste using mouse in kterm.
1450 This happens when 1)Mule is running inside of a kterm, and 2)
1451 keyboard-coding-system of Mule is incompatible with kanji-mode
1452 of that kterm. Make these two compatible.
1454 JP-15: Can I input kanji by kinput2?
1456 You can input kanji by kinput2 when Mule is running in a kterm. Do
1457 not forget to set keyboard-coding-system of Mule compatible with
1458 kanji-mode of that kterm.
1460 JP-16: I set (setq keyboard-coding-system *euc-japan*), but it does not
1463 Do not use `setq' to bind a value to `keyboard-coding-system'. Use
1464 the function `set-keyboard-coding-system'. This comment also
1465 applies to `display-coding-system', `file-coding-system', etc.
1467 JP-17: I want to use EUC for displaying Japanese, Chinese, Korean, EC,
1468 etc. simultaneously.
1470 This is impossible, because EUC for each language is the very same
1471 coding system. Use *junet* or *ctext* to display multi-lingual texts.
1473 JP-18: How can I input kanji in incremental search?
1475 Type C-k to input kanji in incremental search (isearch). In this
1476 mode you can type a string in the minibuffer, so Japanese/Chinese
1477 can also be input by C-\. When the string has been input, hit RET
1478 to restart incremental search.
1480 JP-19: How can I input single-width katakana (JIS X0201 katakana)?
1482 Ken Shibata <shibata@sgi.co.jp> writes:
1484 To input single-width katakana, Mule provides two emacs lisp
1485 files, i.e. `jisx0201.el' and `its/han-kata.el'. The file
1486 `jisx0201.el' defines `fence-hankaku-katakana' (bound to `M-x' in
1487 fence-mode), which converts all double-width katakana and hiragana
1488 in fence-mode at once. The file `its/han-kata.el' defines
1489 `its:select-hankaku-katakana' (bound to `M-C-x' in fence-mode;
1490 `C-x C-k x' otherwise), which converts roma-ji into single-width
1493 Furthermore, `jisx0201.el' defines `hankaku-katakana-region' and
1494 `zenkaku-katakana-region' (or -paragraph/-sentence/-word). These
1495 functions convert strings all at once. The file `its/han-kata.el'
1496 loads `jisx0201.el', so you can load either of them in your .emacs
1497 file. But note that loading these files takes a fairly long time.
1498 If you often input single-width katakana, you should pre-load them
1504 * type M-x to convert kana to single-width.
1505 * type M-h to revert single-width katakana to double-width
1507 * type M-k to revert single-width katakana to double-width
1510 2) Outside fence-mode,
1511 * type C-x C-k x to make typed roma-ji be converted to
1512 single-width katakana.
1513 * type C-x C-k h to make typed roma-ji be converted to
1514 double-width hiragana.
1517 * type M-C-x to make typed roma-ji be converted to single-width
1519 * type M-C-h to make typed roma-ji be converted to double-width
1522 (If you have exchanged BS and DEL by `bobcat.el' or something like
1523 that, and are using ESC key to input Meta, then M-C-h means ESC
1526 JP-20: How can I input Japanese hiragana "
\e$B$s
\e(B" by typing "nn" when I am
1529 Include the following line in your .emacs file.
1531 (setq enable-double-n-syntax t)
1533 JP-21: Mule fails to handle filenames which contain Japanese.
1535 You must specify `--mcpath' to `configure' when you compile Mule.
1536 You also have to specify what coding system will be used in
1537 filenames. Adding the following lines in `site-init.el' may
1538 help. (Note that *autoconv* cannot be specified).
1540 ;;; example: To use Japanese EUC for filenames
1541 (if (fboundp 'set-pathname-coding-system)
1542 (set-pathname-coding-system *euc-japan*))
1544 JP-22: How can I use Wnn and Canna simultaneously?
1546 Sakai Kiyotaka <ksakai@mtl.t.u-tokyo.ac.jp> writes:
1548 First, define both `EGG' and `CANNA' in `mconfig.h' when you
1551 Second, if you have set up to use Canna, your should have
1552 something like the following in your .emacs file:
1554 (if (and (boundp 'CANNA) CANNA)
1556 (load-library "canna")
1560 Change the above like this:
1562 (if (and (boundp 'CANNA) CANNA)
1564 (setq canna-server "mercury")
1565 (cond ((boundp 'egg-version)
1566 (require 'can-n-egg)
1573 Now you can activate Wnn with `\C-\' and Canna with `\C-o'.
1575 JP-23: Is Mule upwards-compatible with Nemacs/Emacs?
1577 Mule is quite different from Nemacs at the level of emacs lisp.
1579 Enami TSUGUTOMO <enami@sys.ptg.sony.co.jp> points out the
1580 incompatibility between Mule and Nemacs/Emacs as follows:
1582 * Incompatibility caused by the existence of functions specific to
1584 * Incompatibility caused by the modification of function
1585 definitions (number of arguments, etc.)
1586 * Incompatibility of byte compiled files caused by the difference
1587 of the internal representation between Mule and Nemacs. Their
1588 byte code is compatible, however. (isn't it? :-)
1589 * Incompatibility caused by the difference of versions of GNU
1590 Emacs they are based on. (only current-column, maybe.)
1592 JP-24: Can Nemacs and Mule share the same .emacs file?
1594 Mule is not compatible with Nemacs. Sometimes a `.emacs' file made
1595 for Nemacs causes trouble when used for Mule.
1597 To share the same .emacs file, you have to divide it into two parts;
1598 one for Mule and the other for Nemacs:
1601 (functions for Mule))
1602 (if (boundp 'NEMACS)
1603 (functions for Nemacs))
1605 There is a sample shared `.emacs' file in the texinfo manual of
1606 Mule. It may help you.
1608 Note that some of the byte-compiled files are NOT sharable. Concerning
1609 about this point, Enami Tsugutomo <enami@sys.ptg.sony.co.jp> writes:
1611 You should prepare two different files for Mule and Nemacs if you
1612 want to byte-compile those files.
1614 As Mule and Nemacs adopt different internal representations of
1615 kanji characters, you must re-byte compile if the files include
1618 JP-25: Some functions work fine with Nemacs, but they show the message
1619 "Symbol's function definition is void: define-program-kanji-code" and
1620 abort. How can I fix this?
1622 Atsushi Furuta <furuta@srarc2.sra.co.jp> writes:
1624 `define-program-kanji-code' is specific to Nemacs, so you have to
1625 modify it to make such functions run on Mule.
1626 `define-program-coding-system' is the counterpart in Mule. For
1629 (define-program-kanji-code nil ".*inc.*" 2)
1631 should be replaced by
1633 (define-program-coding-system nil ".*inc.*" *junet*)
1635 Many functions named `kanji-code-xxx' before have been renamed to
1636 `coding-system-xxx' in Mule. The variable `kanji-flag' has been
1637 renamed to `mc-flag' in Mule.
1639 Fortunately, a package has been written to make Nemacs oriented
1640 codes work in Mule. Ken'ichi Handa <handa@etl.go.jp> writes:
1642 From: handa@etlken.etl.go.jp (Kenichi Handa)
1643 Newsgroups: fj.editor.mule,fj.editor.emacs
1644 Subject: nemacs -> mule
1645 Message-ID: <HANDA.93Oct15215300@etlken.etl.go.jp>
1646 Date: 15 Oct 93 21:53:00 GMT
1648 With the help of members of our mailing list, I have written a
1649 simple package which makes the shift from Nemacs to Mule easier.
1651 First, install the two elisp files below in your load-path. Then
1652 modify your .emacs file as follows. Your configuration for Mule
1653 will be the same as that for Nemacs:
1655 (load-library "nemacs-pre")
1656 ... your original .emacs comes here ...
1657 (load-library "nemacs-post")
1659 The above modification, of course, does not harm the usage of
1662 This package is not yet complete, so please send your requests
1663 like "how can I modify my Nemacs oriented configuration so and so
1666 Both `nemacs-pre.el' and `nemacs-post.el' are available via
1667 anonymous FTP from etlport.etl.go.jp:/pub/mule/contrib/lisp.
1669 JP-26: How can I use Supercite in Japanese environment?
1671 For those who use only English, the configuration shown in E-2 above
1672 suffices. But if you want to use Japanese, you have to change your
1675 Yoichi HIROSE <yoichi@esasd.ksp.fujixerox.co.jp> writes:
1677 Some categories match Japanese strings in Nemacs but do not in
1678 Mule. You do not have to worry if you have not used a category to
1681 See the following regexp. The regexp is very short in Mule, while
1682 it was quite long in Nemacs. For more information, see the part
1683 of char-category in info.
1685 Anyway you have to change sc-cite-regexp as follows if you want to
1688 An example of how to set sc-cite-regexp:
1690 (setq sc-cite-regexp "\\s *\\([a-zA-Z0-9_]\\|\\cj\\)*>+\\s *")
1691 (setq sc-cite-regexp "\\s *\\([a-zA-Z0-9_]\\|\\cc\\|\\cC\\|\\ch\\|\\cH\\|\\ck\\|\\cK\\|\\ca\\|\\cg\\|\\cr\\|\\cu\\)*>+\\s *"))
1693 JP-27: Why dired does not work?
1695 Dired scans the output of ls, but the output should not contain
1698 Akira Kon <kon@quincy.d1.bs2.mt.nec.co.jp> writes:
1700 My machine is a SVR4 and ls gives an output like the following
1701 when LANG is set to Japanese.
1703 -rw-rw-r-- 1 kon com 1002 10
\e$B7n
\e(B30
\e$BF|
\e(B 00
\e$B;~
\e(B22
\e$BJ,
\e(B .bashrc
1704 -rw-r--r-- 1 kon com 26387 11
\e$B7n
\e(B18
\e$BF|
\e(B 10
\e$B;~
\e(B06
\e$BJ,
\e(B .emacs
1706 (The dates are in Japanese, you know.)
1708 But `dired.el' has a fragment of codes like:
1710 (defun dired-get-filename (&optional localp no-error-if-not-filep)
1713 (if (re-search-forward
1714 "\\(Jan\\|Feb\\|Mar\\|Apr\\|May\\|Jun\\|Jul\\|Aug\\|Sep\\|Oct\\|Nov\\|Dec\\)[ ]+[0-9]+"
1716 (progn (skip-chars-forward " ")
1718 and this means, in short, that dired does not accept the output of
1721 I believe that the following modification works for dired, but I
1722 am afraid that there are other programs that scan the output of
1725 --- dired.el.orig Mon Nov 22 23:32:13 1993
1726 +++ dired.el Mon Nov 22 23:33:03 1993
1729 (setq dirname (expand-file-name dirname))
1730 (if (file-directory-p dirname)
1731 - (call-process "ls" nil buffer nil
1732 - dired-listing-switches dirname)
1733 + (call-process "env" nil buffer nil
1734 + "LC_MESSAGES=C" "LC_DATE=C" "LANG=C"
1735 + "ls" dired-listing-switches dirname)
1736 (let ((default-directory (file-name-directory dirname)))
1737 - (call-process shell-file-name nil buffer nil
1738 + (call-process "env" nil buffer nil
1739 + "LC_MESSAGES=C" "LC_DATE=C" "LANG=C"
1741 shell-command-option
1742 (concat "ls " dired-listing-switches " "
1743 (file-name-nondirectory dirname)))))
1745 JP-28: I cannot read the string that follows the single width
1746 `KONNICHIWA' in the file `$MULE/doc/demo'.
1748 Azuma OKAMOTO <lfo@sayori.dais.is.tohoku.ac.jp> writes:
1750 That part contains `ESC $ ( D', so you need a JISX0212 font to
1751 display the characters.
1753 If you have not installed that font, you cannot read it, of
1756 JP-29: Are there any free JIS X0212 (JIS supplemental kanji) fonts?
1760 etlport.etl.go.jp:/pub/mule/fonts/Japanese.tar.gz
1762 Besides the above Japanese.tar.gz, another JISX0212.1990 font was
1763 posted to fj.sources:
1765 From: yasuoka@kudpc.kyoto-u.ac.jp (Koichi Yasuoka)
1766 Newsgroups: fj.sources
1767 Subject: 16x16 JIS Supplementary Kanji Font (1/6)
1768 Date: 28 Jul 1994 00:06:12 +0900
1769 Organization: Data Processing Center, Kyoto University, Kyoto, Japan.
1770 Message-ID: <315t54$et5@kudpc.kudpc.kyoto-u.ac.jp>
1772 This posting is followed by some patches, so you'd better apply them.
1775 HANDLING LATIN CHARACTERS
1777 LT-1: How can I input ISO 8859 characters?
1779 Mule supports all the character sets from Latin-1 (ISO 8859-1) to
1780 Latin-5 (ISO 8859-9). The quail system is used to input these
1781 characters from an ordinary ASCII keyboard.
1783 Following five files are provided to input ISO 8859 characters:
1785 * quail/latin.el : languages written in Latin alphabets (for slow typists)
1787 This file is for naive users. Most of the accented letters are
1788 input by composing two characters. For example, you will get an
\e,Ai
\e(B
1789 (e with acute accent) by typing an e followed by a ' (single
1792 LANGUAGE PACKAGE NAME
1793 --------------------------------
1813 * quail/ltn.el : languages written in Latin alphabets (for quick typists)
1815 This file was made for those who find quail/latin.el is too awkward.
1816 The principle of this file is "the less strokes, the better". Most
1817 of the special letters proper to each language are allocated to
1818 somewhere so that you can type them with a single stroke. You can
1819 type very quickly once you learn the layout by heart.
1821 LANGUAGE PACKAGE NAME
1822 -----------------------------------------------------------
1825 French frnch, azerty
1834 * quail/cyrillic.el : languages written in Cyrillic alphabets
1836 LANGUAGES PACKAGE NAME NOTE
1837 -----------------------------------------------------------------
1838 Russian jcuken standard layout for Russian
1839 jis-russian same as jcuken, but uses
1841 Macedonian macedonian JUS.I.K1.004
1842 Serbian serbian JUS.I.K1.005
1843 Byelorussian byelorussian derived from JUS.I.K1
1844 Ukrainian ukrainian derived from JUS.I.K1
1845 ISO 8859-5 yawerty based on Roman transcription
1848 * quail/greek.el : for Greek
1850 LANGUAGE PACKAGE NAME NOTE
1851 -----------------------------------------------------------------
1853 jis-greek same as greek, but uses
1857 * quail/hebrew.el : for Hebrew
1859 LANGUAGE PACKAGE NAME
1860 --------------------------------
1864 After having loaded the appropriate file(s), you can toggle quail-
1865 minor-mode with "C-]". In the quail mode you can select a package
1866 for a particular language either typing "M-s" or evaluating
1867 (quail-use-package "package-name"). Typing "M-z" shows a brief
1872 1) If you are new to German and want to type German texts, include
1873 the following two lines in your .emacs.
1875 (load "quail/latin")
1876 (quail-use-package "quail-german")
1878 2) If you want to use the azerty layout for French, include the
1879 following two lines in your .emacs.
1882 (quail-use-package "azerty")
1884 LT-2: How can I display Latin-1 characters on a character terminal?
1886 TAKAHASHI Naoto <ntakahas@etl.go.jp> writes:
1888 You have to set `display-coding-system' to *ctext* to display
1889 Latin-1 characters in Mule running on a character terminal.
1890 This can be done either 1) by adding a line which looks like:
1892 (setq display-coding-system *ctext*)
1894 in your .emacs file, or 2) by answering *ctext* to the prompt
1895 "Display-coding-system:" which is shown when you type "M-x
1896 set-display-coding-system".
1898 Even under the X Window System, you have to run one of the
1899 above procedures if you invoke Mule with -nw option.
1901 In either case, your character terminal or terminal emulator should
1902 be able to support Latin-1 characters.