Mercurial > emacs
comparison src/coding.c @ 18002:a14261786239
(encode_invocation_designation): Use macro
CODING_SPEC_ISO_NO_REQUESTED_DESIGNATION.
(encode_designation_at_bol, setup_coding_system): Likewise.
Fset_terminal_coding_system_internal): Renamed from
Fset_terminal_coding_system. Make it non-interactive. Do not
call Fredraw_display ().
(Fset_keyboard_coding_system_internal): Renamed from
Fset_keyboard_coding_system. Make it non-interactive.
| author | Kenichi Handa <handa@m17n.org> |
|---|---|
| date | Wed, 28 May 1997 04:36:27 +0000 |
| parents | f36ffb6f1208 |
| children | 5f4c4da24e75 |
comparison
equal
deleted
inserted
replaced
| 18001:9846609c4fd5 | 18002:a14261786239 |
|---|---|
| 1216 if (reg >= 4) | 1216 if (reg >= 4) |
| 1217 { | 1217 { |
| 1218 /* CHARSET is not yet designated to any graphic registers. */ | 1218 /* CHARSET is not yet designated to any graphic registers. */ |
| 1219 /* At first check the requested designation. */ | 1219 /* At first check the requested designation. */ |
| 1220 reg = CODING_SPEC_ISO_REQUESTED_DESIGNATION (coding, charset); | 1220 reg = CODING_SPEC_ISO_REQUESTED_DESIGNATION (coding, charset); |
| 1221 if (reg < 0) | 1221 if (reg == CODING_SPEC_ISO_NO_REQUESTED_DESIGNATION) |
| 1222 /* Since CHARSET requests no special designation, designate to | 1222 /* Since CHARSET requests no special designation, designate it |
| 1223 graphic register 0. */ | 1223 to graphic register 0. */ |
| 1224 reg = 0; | 1224 reg = 0; |
| 1225 | 1225 |
| 1226 ENCODE_DESIGNATION (charset, reg, coding); | 1226 ENCODE_DESIGNATION (charset, reg, coding); |
| 1227 } | 1227 } |
| 1228 | 1228 |
| 1327 if ((c_alt = unify_char (table, -1, charset, c1, c2)) >= 0) | 1327 if ((c_alt = unify_char (table, -1, charset, c1, c2)) >= 0) |
| 1328 charset = CHAR_CHARSET (c_alt); | 1328 charset = CHAR_CHARSET (c_alt); |
| 1329 } | 1329 } |
| 1330 | 1330 |
| 1331 reg = CODING_SPEC_ISO_REQUESTED_DESIGNATION (coding, charset); | 1331 reg = CODING_SPEC_ISO_REQUESTED_DESIGNATION (coding, charset); |
| 1332 if (r[reg] < 0) | 1332 if (r[reg] == CODING_SPEC_ISO_NO_REQUESTED_DESIGNATION) |
| 1333 { | 1333 { |
| 1334 found++; | 1334 found++; |
| 1335 r[reg] = charset; | 1335 r[reg] = charset; |
| 1336 } | 1336 } |
| 1337 | 1337 |
| 2191 element (if integer) to REG initially, the remaining | 2191 element (if integer) to REG initially, the remaining |
| 2192 elements (if integer) is designated to REG on request, | 2192 elements (if integer) is designated to REG on request, |
| 2193 if an element is t, REG can be used by any charset, | 2193 if an element is t, REG can be used by any charset, |
| 2194 nil: REG is never used. */ | 2194 nil: REG is never used. */ |
| 2195 for (charset = 0; charset <= MAX_CHARSET; charset++) | 2195 for (charset = 0; charset <= MAX_CHARSET; charset++) |
| 2196 CODING_SPEC_ISO_REQUESTED_DESIGNATION (coding, charset) = -1; | 2196 CODING_SPEC_ISO_REQUESTED_DESIGNATION (coding, charset) |
| 2197 = CODING_SPEC_ISO_NO_REQUESTED_DESIGNATION; | |
| 2197 for (i = 0; i < 4; i++) | 2198 for (i = 0; i < 4; i++) |
| 2198 { | 2199 { |
| 2199 if (INTEGERP (flags[i]) | 2200 if (INTEGERP (flags[i]) |
| 2200 && (charset = XINT (flags[i]), CHARSET_VALID_P (charset)) | 2201 && (charset = XINT (flags[i]), CHARSET_VALID_P (charset)) |
| 2201 || (charset = get_charset_id (flags[i])) >= 0) | 2202 || (charset = get_charset_id (flags[i])) >= 0) |
| 2253 default_reg_bits &= 3; | 2254 default_reg_bits &= 3; |
| 2254 } | 2255 } |
| 2255 | 2256 |
| 2256 for (charset = 0; charset <= MAX_CHARSET; charset++) | 2257 for (charset = 0; charset <= MAX_CHARSET; charset++) |
| 2257 if (CHARSET_VALID_P (charset) | 2258 if (CHARSET_VALID_P (charset) |
| 2258 && CODING_SPEC_ISO_REQUESTED_DESIGNATION (coding, charset) < 0) | 2259 && (CODING_SPEC_ISO_REQUESTED_DESIGNATION (coding, charset) |
| 2260 == CODING_SPEC_ISO_NO_REQUESTED_DESIGNATION)) | |
| 2259 { | 2261 { |
| 2260 /* We have not yet decided where to designate CHARSET. */ | 2262 /* We have not yet decided where to designate CHARSET. */ |
| 2261 int reg_bits = default_reg_bits; | 2263 int reg_bits = default_reg_bits; |
| 2262 | 2264 |
| 2263 if (CHARSET_CHARS (charset) == 96) | 2265 if (CHARSET_CHARS (charset) == 96) |
| 3332 else | 3334 else |
| 3333 XSETFASTINT (val, 0); | 3335 XSETFASTINT (val, 0); |
| 3334 return val; | 3336 return val; |
| 3335 } | 3337 } |
| 3336 | 3338 |
| 3337 DEFUN ("set-terminal-coding-system", | 3339 DEFUN ("set-terminal-coding-system-internal", |
| 3338 Fset_terminal_coding_system, Sset_terminal_coding_system, 1, 1, | 3340 Fset_terminal_coding_system_internal, |
| 3339 "zCoding-system for terminal display: ", | 3341 Sset_terminal_coding_system_internal, 1, 1, 0, "") |
| 3340 "Set coding-system of your terminal to CODING-SYSTEM.\n\ | |
| 3341 All outputs to terminal are encoded to this coding-system.") | |
| 3342 (coding_system) | 3342 (coding_system) |
| 3343 Lisp_Object coding_system; | 3343 Lisp_Object coding_system; |
| 3344 { | 3344 { |
| 3345 CHECK_SYMBOL (coding_system, 0); | 3345 CHECK_SYMBOL (coding_system, 0); |
| 3346 setup_coding_system (Fcheck_coding_system (coding_system), &terminal_coding); | 3346 setup_coding_system (Fcheck_coding_system (coding_system), &terminal_coding); |
| 3347 update_mode_lines++; | |
| 3348 if (!NILP (Finteractive_p ())) | |
| 3349 Fredraw_display (); | |
| 3350 return Qnil; | 3347 return Qnil; |
| 3351 } | 3348 } |
| 3352 | 3349 |
| 3353 DEFUN ("terminal-coding-system", | 3350 DEFUN ("terminal-coding-system", |
| 3354 Fterminal_coding_system, Sterminal_coding_system, 0, 0, 0, | 3351 Fterminal_coding_system, Sterminal_coding_system, 0, 0, 0, |
| 3356 () | 3353 () |
| 3357 { | 3354 { |
| 3358 return terminal_coding.symbol; | 3355 return terminal_coding.symbol; |
| 3359 } | 3356 } |
| 3360 | 3357 |
| 3361 DEFUN ("set-keyboard-coding-system", | 3358 DEFUN ("set-keyboard-coding-system-internal", |
| 3362 Fset_keyboard_coding_system, Sset_keyboard_coding_system, 1, 1, 0, | 3359 Fset_keyboard_coding_system_internal, |
| 3363 "Set coding-system of codes sent from terminal keyboard to CODING-SYSTEM.\n\ | 3360 Sset_keyboard_coding_system_internal, 1, 1, 0, "") |
| 3364 In Encoded-kbd minor mode, user inputs are decoded\n\ | |
| 3365 accoding to CODING-SYSTEM.\n\ | |
| 3366 Do not call this function directly, but use the command\n\ | |
| 3367 encoded-kbd-set-coding-system to activate Encoded-kbd mode\n\ | |
| 3368 with a specific coding system.") | |
| 3369 (coding_system) | 3361 (coding_system) |
| 3370 Lisp_Object coding_system; | 3362 Lisp_Object coding_system; |
| 3371 { | 3363 { |
| 3372 CHECK_SYMBOL (coding_system, 0); | 3364 CHECK_SYMBOL (coding_system, 0); |
| 3373 setup_coding_system (Fcheck_coding_system (coding_system), &keyboard_coding); | 3365 setup_coding_system (Fcheck_coding_system (coding_system), &keyboard_coding); |
| 3592 defsubr (&Sencode_coding_string); | 3584 defsubr (&Sencode_coding_string); |
| 3593 defsubr (&Sdecode_sjis_char); | 3585 defsubr (&Sdecode_sjis_char); |
| 3594 defsubr (&Sencode_sjis_char); | 3586 defsubr (&Sencode_sjis_char); |
| 3595 defsubr (&Sdecode_big5_char); | 3587 defsubr (&Sdecode_big5_char); |
| 3596 defsubr (&Sencode_big5_char); | 3588 defsubr (&Sencode_big5_char); |
| 3597 defsubr (&Sset_terminal_coding_system); | 3589 defsubr (&Sset_terminal_coding_system_internal); |
| 3598 defsubr (&Sterminal_coding_system); | 3590 defsubr (&Sterminal_coding_system); |
| 3599 defsubr (&Sset_keyboard_coding_system); | 3591 defsubr (&Sset_keyboard_coding_system_internal); |
| 3600 defsubr (&Skeyboard_coding_system); | 3592 defsubr (&Skeyboard_coding_system); |
| 3601 defsubr (&Sfind_coding_system); | 3593 defsubr (&Sfind_coding_system); |
| 3602 | 3594 |
| 3603 DEFVAR_LISP ("coding-category-list", &Vcoding_category_list, | 3595 DEFVAR_LISP ("coding-category-list", &Vcoding_category_list, |
| 3604 "List of coding-categories (symbols) ordered by priority."); | 3596 "List of coding-categories (symbols) ordered by priority."); |
