Mercurial > emacs
comparison man/mule.texi @ 33745:78ec4a7ba765
(Undisplayable Characters): New node.
Tweaks elsewhere.
author | Dave Love <fx@gnu.org> |
---|---|
date | Wed, 22 Nov 2000 14:04:22 +0000 |
parents | d65f9772ee72 |
children | a80251dea213 |
comparison
equal
deleted
inserted
replaced
33744:67204e92850a | 33745:78ec4a7ba765 |
---|---|
54 * Recognize Coding:: How Emacs figures out which conversion to use. | 54 * Recognize Coding:: How Emacs figures out which conversion to use. |
55 * Specify Coding:: Various ways to choose which conversion to use. | 55 * Specify Coding:: Various ways to choose which conversion to use. |
56 * Fontsets:: Fontsets are collections of fonts | 56 * Fontsets:: Fontsets are collections of fonts |
57 that cover the whole spectrum of characters. | 57 that cover the whole spectrum of characters. |
58 * Defining Fontsets:: Defining a new fontset. | 58 * Defining Fontsets:: Defining a new fontset. |
59 * Undisplayable Characters:: When characters don't display. | |
59 * Single-Byte Character Support:: | 60 * Single-Byte Character Support:: |
60 You can pick one European character set | 61 You can pick one European character set |
61 to use without multibyte characters. | 62 to use without multibyte characters. |
62 @end menu | 63 @end menu |
63 | 64 |
78 @findex view-hello-file | 79 @findex view-hello-file |
79 The command @kbd{C-h h} (@code{view-hello-file}) displays the file | 80 The command @kbd{C-h h} (@code{view-hello-file}) displays the file |
80 @file{etc/HELLO}, which shows how to say ``hello'' in many languages. | 81 @file{etc/HELLO}, which shows how to say ``hello'' in many languages. |
81 This illustrates various scripts. If the font you're using doesn't have | 82 This illustrates various scripts. If the font you're using doesn't have |
82 characters for all those different languages, you will see some hollow | 83 characters for all those different languages, you will see some hollow |
83 boxes instead of characters; see @ref{Fontsets}. | 84 boxes instead of characters; see @ref{Fontsets}. On non-windowing |
85 displays, @samp{?} is displayed in place of the hollow box. | |
84 | 86 |
85 @findex list-charset-chars | 87 @findex list-charset-chars |
86 @cindex characters in a certain charset | 88 @cindex characters in a certain charset |
87 The command @kbd{M-x list-charset-chars} prompts for a name of a | 89 The command @kbd{M-x list-charset-chars} prompts for a name of a |
88 character set, and displays all the characters in that character set. | 90 character set, and displays all the characters in that character set. |
185 @code{current-language-environment} or use the command @kbd{M-x | 187 @code{current-language-environment} or use the command @kbd{M-x |
186 set-language-environment}. It makes no difference which buffer is | 188 set-language-environment}. It makes no difference which buffer is |
187 current when you use this command, because the effects apply globally to | 189 current when you use this command, because the effects apply globally to |
188 the Emacs session. The supported language environments include: | 190 the Emacs session. The supported language environments include: |
189 | 191 |
190 @cindex euro sign | 192 @cindex Euro sign |
191 @quotation | 193 @quotation |
192 Chinese-BIG5, Chinese-CNS, Chinese-GB, Cyrillic-ALT, Cyrillic-ISO, | 194 Chinese-BIG5, Chinese-CNS, Chinese-GB, Cyrillic-ALT, Cyrillic-ISO, |
193 Cyrillic-KOI8, Czech, Devanagari, English, Ethiopic, German, Greek, | 195 Cyrillic-KOI8, Czech, Devanagari, English, Ethiopic, German, Greek, |
194 Hebrew, IPA, Japanese, Korean, Lao, Latin-1, Latin-2, Latin-3, Latin-4, | 196 Hebrew, IPA, Japanese, Korean, Lao, Latin-1, Latin-2, Latin-3, Latin-4, |
195 Latin-5, Latin-8 (Celtic), Latin-9 (updated Latin-1, with the Euro | 197 Latin-5, Latin-8 (Celtic), Latin-9 (updated Latin-1, with the Euro |
206 fonts. | 208 fonts. |
207 | 209 |
208 @findex set-locale-environment | 210 @findex set-locale-environment |
209 @vindex locale-language-names | 211 @vindex locale-language-names |
210 @vindex locale-charset-language-names | 212 @vindex locale-charset-language-names |
213 @cindex locales | |
211 Some operating systems let you specify the language you are using by | 214 Some operating systems let you specify the language you are using by |
212 setting the locale environment variables @env{LC_ALL}, @env{LC_CTYPE}, | 215 setting the locale environment variables @env{LC_ALL}, @env{LC_CTYPE}, |
213 and @env{LANG}; the first of these which is nonempty specifies your | 216 and @env{LANG}; the first of these which is nonempty specifies your |
214 locale. Emacs handles this during startup by invoking the | 217 locale. Emacs handles this during startup by invoking the |
215 @code{set-locale-environment} function, which matches your locale | 218 @code{set-locale-environment} function, which matches your locale |
431 | 434 |
432 When multibyte characters are enabled, character codes 0240 (octal) | 435 When multibyte characters are enabled, character codes 0240 (octal) |
433 through 0377 (octal) are not really legitimate in the buffer. The valid | 436 through 0377 (octal) are not really legitimate in the buffer. The valid |
434 non-ASCII printing characters have codes that start from 0400. | 437 non-ASCII printing characters have codes that start from 0400. |
435 | 438 |
436 If you type a self-inserting character in the invalid range 0240 | 439 If you type a self-inserting character in the range 0240 |
437 through 0377, Emacs assumes you intended to use one of the ISO | 440 through 0377, Emacs assumes you intended to use one of the ISO |
438 Latin-@var{n} character sets, and converts it to the Emacs code | 441 Latin-@var{n} character sets, and converts it to the Emacs code |
439 representing that Latin-@var{n} character. You select @emph{which} ISO | 442 representing that Latin-@var{n} character. You select @emph{which} ISO |
440 Latin character set to use through your choice of language environment | 443 Latin character set to use through your choice of language environment |
441 @iftex | 444 @iftex |
445 (@pxref{Language Environments}). | 448 (@pxref{Language Environments}). |
446 @end ifinfo | 449 @end ifinfo |
447 If you do not specify a choice, the default is Latin-1. | 450 If you do not specify a choice, the default is Latin-1. |
448 | 451 |
449 The same thing happens when you use @kbd{C-q} to enter an octal code | 452 The same thing happens when you use @kbd{C-q} to enter an octal code |
450 in this range. | 453 in this range. If you enter a code in the range 0200 through 0237, |
454 which forms the @code{eight-bit-control} character set, it is inserted | |
455 literally. You should normally avoid doing this since buffers | |
456 containing such characters have to be written out in either the | |
457 @code{emacs-mule} or @code{raw-text} coding system, which is usually not | |
458 what you want. | |
451 | 459 |
452 @node Coding Systems | 460 @node Coding Systems |
453 @section Coding Systems | 461 @section Coding Systems |
454 @cindex coding systems | 462 @cindex coding systems |
455 | 463 |
828 terminals that support one of the ISO Latin character sets. You need to | 836 terminals that support one of the ISO Latin character sets. You need to |
829 specify the terminal coding system when using multibyte text, so that | 837 specify the terminal coding system when using multibyte text, so that |
830 Emacs knows which characters the terminal can actually handle. | 838 Emacs knows which characters the terminal can actually handle. |
831 | 839 |
832 By default, output to the terminal is not translated at all, unless | 840 By default, output to the terminal is not translated at all, unless |
833 Emacs can deduce the proper coding system from your terminal type. | 841 Emacs can deduce the proper coding system from your terminal type or |
842 your locale specification (@pxref{Language Environments}). | |
834 | 843 |
835 @kindex C-x RET k | 844 @kindex C-x RET k |
836 @findex set-keyboard-coding-system | 845 @findex set-keyboard-coding-system |
837 The command @kbd{C-x @key{RET} k} (@code{set-keyboard-coding-system}) | 846 The command @kbd{C-x @key{RET} k} (@code{set-keyboard-coding-system}) |
838 specifies the coding system for keyboard input. Character-code | 847 specifies the coding system for keyboard input. Character-code |
921 itself. Once you have defined a fontset, you can use it within Emacs by | 930 itself. Once you have defined a fontset, you can use it within Emacs by |
922 specifying its name, anywhere that you could use a single font. Of | 931 specifying its name, anywhere that you could use a single font. Of |
923 course, Emacs fontsets can use only the fonts that the X server | 932 course, Emacs fontsets can use only the fonts that the X server |
924 supports; if certain characters appear on the screen as hollow boxes, | 933 supports; if certain characters appear on the screen as hollow boxes, |
925 this means that the fontset in use for them has no font for those | 934 this means that the fontset in use for them has no font for those |
926 characters. | 935 characters.@footnote{The installation instructions have information on |
936 additional font support.} | |
927 | 937 |
928 Emacs creates two fontsets automatically: the @dfn{standard fontset} | 938 Emacs creates two fontsets automatically: the @dfn{standard fontset} |
929 and the @dfn{startup fontset}. The standard fontset is most likely to | 939 and the @dfn{startup fontset}. The standard fontset is most likely to |
930 have fonts for a wide variety of non-ASCII characters; however, this is | 940 have fonts for a wide variety of non-ASCII characters; however, this is |
931 not the default for Emacs to use. (By default, Emacs tries to find a | 941 not the default for Emacs to use. (By default, Emacs tries to find a |
1074 The function that processes the fontset resource value to create the | 1084 The function that processes the fontset resource value to create the |
1075 fontset is called @code{create-fontset-from-fontset-spec}. You can also | 1085 fontset is called @code{create-fontset-from-fontset-spec}. You can also |
1076 call this function explicitly to create a fontset. | 1086 call this function explicitly to create a fontset. |
1077 | 1087 |
1078 @xref{Font X}, for more information about font naming in X. | 1088 @xref{Font X}, for more information about font naming in X. |
1089 | |
1090 @node Undisplayable Characters | |
1091 @section Undisplayable Characters | |
1092 | |
1093 Your terminal may not be able to display some non-@sc{ascii} characters. | |
1094 Most non-windowing terminals can only use a single character set, | |
1095 specified by the variable @code{default-terminal-coding-system} | |
1096 (@pxref{Specify Coding}) and characters which can't be encoded in it are | |
1097 displayed as @samp{?} by default. Windowing terminals may not have the | |
1098 necessary font available to display a given character and display a | |
1099 hollow box instead. You can change the default behavior. | |
1100 | |
1101 If you use Latin-1 characters but your terminal can't display Latin-1, | |
1102 you can arrange to display mnemonic @sc{ascii} sequences instead, e.g.@: | |
1103 @samp{"o} for o-umlaut. Load the library @file{iso-ascii} to do this. | |
1104 | |
1105 If your terminal can display Latin-1, you can display characters from | |
1106 other European character sets using a mixture of equivalent Latin-1 | |
1107 characters and @sc{ascii} mnemonics. Use the Custom option | |
1108 @code{latin1-display} to enable this. The mnemonic @sc{ascii} sequences | |
1109 mostly correspond to those of the prefix input methods. | |
1079 | 1110 |
1080 @node Single-Byte Character Support | 1111 @node Single-Byte Character Support |
1081 @section Single-byte Character Set Support | 1112 @section Single-byte Character Set Support |
1082 | 1113 |
1083 @cindex European character sets | 1114 @cindex European character sets |