Mercurial > hg > xemacs-beta
comparison src/file-coding.c @ 4959:bd169a24a554
merge
| author | Ben Wing <ben@xemacs.org> |
|---|---|
| date | Thu, 28 Jan 2010 04:27:30 -0600 |
| parents | 304aebb79cd3 |
| children | 0d4c9d0f6a8d |
comparison
equal
deleted
inserted
replaced
| 4893:99f2102552d7 | 4959:bd169a24a554 |
|---|---|
| 299 if (print_readably) | 299 if (print_readably) |
| 300 printing_unreadable_lcrecord (obj, 0); | 300 printing_unreadable_lcrecord (obj, 0); |
| 301 | 301 |
| 302 write_fmt_string_lisp (printcharfun, "#<coding-system %s ", 1, c->name); | 302 write_fmt_string_lisp (printcharfun, "#<coding-system %s ", 1, c->name); |
| 303 print_coding_system_properties (obj, printcharfun); | 303 print_coding_system_properties (obj, printcharfun); |
| 304 write_c_string (printcharfun, ">"); | 304 write_ascstring (printcharfun, ">"); |
| 305 } | 305 } |
| 306 | 306 |
| 307 /* Print an abbreviated version of a coding system (but still containing | 307 /* Print an abbreviated version of a coding system (but still containing |
| 308 all the information), for use within a coding system print method. */ | 308 all the information), for use within a coding system print method. */ |
| 309 | 309 |
| 311 print_coding_system_in_print_method (Lisp_Object cs, Lisp_Object printcharfun, | 311 print_coding_system_in_print_method (Lisp_Object cs, Lisp_Object printcharfun, |
| 312 int UNUSED (escapeflag)) | 312 int UNUSED (escapeflag)) |
| 313 { | 313 { |
| 314 write_fmt_string_lisp (printcharfun, "%s[", 1, XCODING_SYSTEM_NAME (cs)); | 314 write_fmt_string_lisp (printcharfun, "%s[", 1, XCODING_SYSTEM_NAME (cs)); |
| 315 print_coding_system_properties (cs, printcharfun); | 315 print_coding_system_properties (cs, printcharfun); |
| 316 write_c_string (printcharfun, "]"); | 316 write_ascstring (printcharfun, "]"); |
| 317 } | 317 } |
| 318 | 318 |
| 319 #ifndef NEW_GC | 319 #ifndef NEW_GC |
| 320 static void | 320 static void |
| 321 finalize_coding_system (void *header, int for_disksave) | 321 finalize_coding_system (void *header, int for_disksave) |
| 519 { | 519 { |
| 520 assert (previous_failed_reason == query_coding_unencodable); | 520 assert (previous_failed_reason == query_coding_unencodable); |
| 521 | 521 |
| 522 if (flags & QUERY_METHOD_ERRORP) | 522 if (flags & QUERY_METHOD_ERRORP) |
| 523 { | 523 { |
| 524 DECLARE_EISTRING (error_details); | 524 signal_error_2 |
| 525 | 525 (Qtext_conversion_error, |
| 526 eicpy_ascii (error_details, "Cannot encode "); | 526 "Cannot encode using coding system", |
| 527 eicat_lstr (error_details, | 527 make_string_from_buffer (buf, fail_range_start, |
| 528 make_string_from_buffer (buf, fail_range_start, | 528 pos - fail_range_start), |
| 529 pos - | 529 XCODING_SYSTEM_NAME (codesys)); |
| 530 fail_range_start)); | |
| 531 eicat_ascii (error_details, " using coding system"); | |
| 532 | |
| 533 signal_error (Qtext_conversion_error, | |
| 534 (const CIbyte *)(eidata (error_details)), | |
| 535 XCODING_SYSTEM_NAME (codesys)); | |
| 536 } | 530 } |
| 537 | 531 |
| 538 if (NILP (result)) | 532 if (NILP (result)) |
| 539 { | 533 { |
| 540 result = Fmake_range_table (Qstart_closed_end_open); | 534 result = Fmake_range_table (Qstart_closed_end_open); |
| 677 eidel (desired_base, length - (sizeof ("-dos") - 1), -1, | 671 eidel (desired_base, length - (sizeof ("-dos") - 1), -1, |
| 678 4, 4); | 672 4, 4); |
| 679 } | 673 } |
| 680 } | 674 } |
| 681 | 675 |
| 682 coding_system_or_name = intern_int (eidata (desired_base)); | 676 coding_system_or_name = intern_istring (eidata (desired_base)); |
| 683 | 677 |
| 684 /* Remove this coding system and its subsidiary coding | 678 /* Remove this coding system and its subsidiary coding |
| 685 systems from the hash, to avoid calling this code recursively. */ | 679 systems from the hash, to avoid calling this code recursively. */ |
| 686 Fremhash (coding_system_or_name, Vcoding_system_hash_table); | 680 Fremhash (coding_system_or_name, Vcoding_system_hash_table); |
| 687 Fremhash (add_suffix_to_symbol(coding_system_or_name, "-unix"), | 681 Fremhash (add_suffix_to_symbol(coding_system_or_name, "-unix"), |
| 695 eicat_lstr (warning_info, XSYMBOL_NAME (coding_system_or_name)); | 689 eicat_lstr (warning_info, XSYMBOL_NAME (coding_system_or_name)); |
| 696 | 690 |
| 697 /* Keep around the form so it doesn't disappear from under | 691 /* Keep around the form so it doesn't disappear from under |
| 698 #'eval's feet. */ | 692 #'eval's feet. */ |
| 699 GCPRO1 (lookup); | 693 GCPRO1 (lookup); |
| 700 call1_trapping_problems ((const CIbyte *)eidata (warning_info), | 694 call1_trapping_problems ((const CIbyte *) eidata (warning_info), |
| 701 Qeval, lookup, 0); | 695 Qeval, lookup, 0); |
| 702 UNGCPRO; | 696 UNGCPRO; |
| 703 | 697 |
| 704 lookup = | 698 lookup = |
| 705 Fgethash (coding_system_or_name, Vcoding_system_hash_table, Qnil); | 699 Fgethash (coding_system_or_name, Vcoding_system_hash_table, Qnil); |
| 1105 const Ascbyte *extension = coding_subsidiary_list[i].extension; | 1099 const Ascbyte *extension = coding_subsidiary_list[i].extension; |
| 1106 const Ascbyte *mnemonic_ext = coding_subsidiary_list[i].mnemonic_ext; | 1100 const Ascbyte *mnemonic_ext = coding_subsidiary_list[i].mnemonic_ext; |
| 1107 enum eol_type eol = coding_subsidiary_list[i].eol; | 1101 enum eol_type eol = coding_subsidiary_list[i].eol; |
| 1108 | 1102 |
| 1109 qxestrcpy_ascii (codesys_name + len, extension); | 1103 qxestrcpy_ascii (codesys_name + len, extension); |
| 1110 codesys_name_sym = intern_int (codesys_name); | 1104 codesys_name_sym = intern_istring (codesys_name); |
| 1111 if (mlen != -1) | 1105 if (mlen != -1) |
| 1112 qxestrcpy_ascii (codesys_mnemonic + mlen, mnemonic_ext); | 1106 qxestrcpy_ascii (codesys_mnemonic + mlen, mnemonic_ext); |
| 1113 | 1107 |
| 1114 sub_codesys = Fcopy_coding_system (codesys, codesys_name_sym); | 1108 sub_codesys = Fcopy_coding_system (codesys, codesys_name_sym); |
| 1115 if (mlen != -1) | 1109 if (mlen != -1) |
| 1116 XCODING_SYSTEM_MNEMONIC (sub_codesys) = | 1110 XCODING_SYSTEM_MNEMONIC (sub_codesys) = |
| 1117 build_intstring (codesys_mnemonic); | 1111 build_istring (codesys_mnemonic); |
| 1118 | 1112 |
| 1119 if (eol != EOL_LF) | 1113 if (eol != EOL_LF) |
| 1120 { | 1114 { |
| 1121 Lisp_Object chain = list2 (get_coding_system_for_text_file | 1115 Lisp_Object chain = list2 (get_coding_system_for_text_file |
| 1122 (codesys, 0), | 1116 (codesys, 0), |
| 1125 Lisp_Object canon = | 1119 Lisp_Object canon = |
| 1126 make_internal_coding_system | 1120 make_internal_coding_system |
| 1127 (sub_codesys, "internal-subsidiary-eol-wrapper", | 1121 (sub_codesys, "internal-subsidiary-eol-wrapper", |
| 1128 Qchain, Qunbound, | 1122 Qchain, Qunbound, |
| 1129 mlen != -1 ? | 1123 mlen != -1 ? |
| 1130 list6 (Qmnemonic, build_intstring (codesys_mnemonic), | 1124 list6 (Qmnemonic, build_istring (codesys_mnemonic), |
| 1131 Qchain, chain, | 1125 Qchain, chain, |
| 1132 Qcanonicalize_after_coding, sub_codesys) : | 1126 Qcanonicalize_after_coding, sub_codesys) : |
| 1133 list4 (Qchain, chain, | 1127 list4 (Qchain, chain, |
| 1134 Qcanonicalize_after_coding, sub_codesys)); | 1128 Qcanonicalize_after_coding, sub_codesys)); |
| 1135 XCODING_SYSTEM_CANONICAL (sub_codesys) = canon; | 1129 XCODING_SYSTEM_CANONICAL (sub_codesys) = canon; |
| 1211 prefix, | 1205 prefix, |
| 1212 NILP (name_or_existing) ? (Ibyte *) "nil" : | 1206 NILP (name_or_existing) ? (Ibyte *) "nil" : |
| 1213 XSTRING_DATA (Fsymbol_name (XCODING_SYSTEM_NAME | 1207 XSTRING_DATA (Fsymbol_name (XCODING_SYSTEM_NAME |
| 1214 (name_or_existing))), | 1208 (name_or_existing))), |
| 1215 ++coding_system_tick); | 1209 ++coding_system_tick); |
| 1216 name_or_existing = intern_int (newname); | 1210 name_or_existing = intern_istring (newname); |
| 1217 xfree (newname, Ibyte *); | 1211 xfree (newname, Ibyte *); |
| 1218 | 1212 |
| 1219 if (UNBOUNDP (description)) | 1213 if (UNBOUNDP (description)) |
| 1220 { | 1214 { |
| 1221 newname = | 1215 newname = |
| 1222 emacs_sprintf_malloc | 1216 emacs_sprintf_malloc |
| 1223 (NULL, "For Internal Use (%s)", | 1217 (NULL, "For Internal Use (%s)", |
| 1224 XSTRING_DATA (Fsymbol_name (name_or_existing))); | 1218 XSTRING_DATA (Fsymbol_name (name_or_existing))); |
| 1225 description = build_intstring (newname); | 1219 description = build_istring (newname); |
| 1226 xfree (newname, Ibyte *); | 1220 xfree (newname, Ibyte *); |
| 1227 } | 1221 } |
| 1228 | 1222 |
| 1229 newname = emacs_sprintf_malloc (NULL, "Int%d", coding_system_tick); | 1223 newname = emacs_sprintf_malloc (NULL, "Int%d", coding_system_tick); |
| 1230 defmnem = build_intstring (newname); | 1224 defmnem = build_istring (newname); |
| 1231 xfree (newname, Ibyte *); | 1225 xfree (newname, Ibyte *); |
| 1232 } | 1226 } |
| 1233 else | 1227 else |
| 1234 CHECK_SYMBOL (name_or_existing); | 1228 CHECK_SYMBOL (name_or_existing); |
| 1235 | 1229 |
| 1246 csobj = wrap_coding_system (cs); | 1240 csobj = wrap_coding_system (cs); |
| 1247 | 1241 |
| 1248 cs->internal_p = !!prefix; | 1242 cs->internal_p = !!prefix; |
| 1249 | 1243 |
| 1250 if (NILP (description)) | 1244 if (NILP (description)) |
| 1251 description = build_string (""); | 1245 description = build_ascstring (""); |
| 1252 else | 1246 else |
| 1253 CHECK_STRING (description); | 1247 CHECK_STRING (description); |
| 1254 CODING_SYSTEM_DESCRIPTION (cs) = description; | 1248 CODING_SYSTEM_DESCRIPTION (cs) = description; |
| 1255 | 1249 |
| 1256 if (!NILP (defmnem)) | 1250 if (!NILP (defmnem)) |
| 1374 Ibyte *newname = | 1368 Ibyte *newname = |
| 1375 emacs_sprintf_malloc | 1369 emacs_sprintf_malloc |
| 1376 (NULL, "internal-eol-copy-%s-%d", | 1370 (NULL, "internal-eol-copy-%s-%d", |
| 1377 XSTRING_DATA (Fsymbol_name (name_or_existing)), | 1371 XSTRING_DATA (Fsymbol_name (name_or_existing)), |
| 1378 ++coding_system_tick); | 1372 ++coding_system_tick); |
| 1379 Lisp_Object newnamesym = intern_int (newname); | 1373 Lisp_Object newnamesym = intern_istring (newname); |
| 1380 Lisp_Object copied = Fcopy_coding_system (csobj, newnamesym); | 1374 Lisp_Object copied = Fcopy_coding_system (csobj, newnamesym); |
| 1381 xfree (newname, Ibyte *); | 1375 xfree (newname, Ibyte *); |
| 1382 | 1376 |
| 1383 XCODING_SYSTEM_CANONICAL (csobj) = | 1377 XCODING_SYSTEM_CANONICAL (csobj) = |
| 1384 make_internal_coding_system | 1378 make_internal_coding_system |
| 2610 static void | 2604 static void |
| 2611 chain_print (Lisp_Object cs, Lisp_Object printcharfun, int escapeflag) | 2605 chain_print (Lisp_Object cs, Lisp_Object printcharfun, int escapeflag) |
| 2612 { | 2606 { |
| 2613 int i; | 2607 int i; |
| 2614 | 2608 |
| 2615 write_c_string (printcharfun, "("); | 2609 write_ascstring (printcharfun, "("); |
| 2616 for (i = 0; i < XCODING_SYSTEM_CHAIN_COUNT (cs); i++) | 2610 for (i = 0; i < XCODING_SYSTEM_CHAIN_COUNT (cs); i++) |
| 2617 { | 2611 { |
| 2618 write_c_string (printcharfun, i == 0 ? "" : "->"); | 2612 write_ascstring (printcharfun, i == 0 ? "" : "->"); |
| 2619 print_coding_system_in_print_method (XCODING_SYSTEM_CHAIN_CHAIN (cs)[i], | 2613 print_coding_system_in_print_method (XCODING_SYSTEM_CHAIN_CHAIN (cs)[i], |
| 2620 printcharfun, escapeflag); | 2614 printcharfun, escapeflag); |
| 2621 } | 2615 } |
| 2622 { | 2616 { |
| 2623 Lisp_Object cac = XCODING_SYSTEM_CHAIN_CANONICALIZE_AFTER_CODING (cs); | 2617 Lisp_Object cac = XCODING_SYSTEM_CHAIN_CANONICALIZE_AFTER_CODING (cs); |
| 2624 if (!NILP (cac)) | 2618 if (!NILP (cac)) |
| 2625 { | 2619 { |
| 2626 if (i > 0) | 2620 if (i > 0) |
| 2627 write_c_string (printcharfun, " "); | 2621 write_ascstring (printcharfun, " "); |
| 2628 write_c_string (printcharfun, "canonicalize-after-coding="); | 2622 write_ascstring (printcharfun, "canonicalize-after-coding="); |
| 2629 print_coding_system_in_print_method (cac, printcharfun, escapeflag); | 2623 print_coding_system_in_print_method (cac, printcharfun, escapeflag); |
| 2630 } | 2624 } |
| 2631 } | 2625 } |
| 2632 | 2626 |
| 2633 write_c_string (printcharfun, ")"); | 2627 write_ascstring (printcharfun, ")"); |
| 2634 } | 2628 } |
| 2635 | 2629 |
| 2636 static void | 2630 static void |
| 2637 chain_rewind_coding_stream_1 (struct chain_coding_stream *data) | 2631 chain_rewind_coding_stream_1 (struct chain_coding_stream *data) |
| 2638 { | 2632 { |
| 3268 { | 3262 { |
| 3269 struct undecided_coding_system *data = | 3263 struct undecided_coding_system *data = |
| 3270 XCODING_SYSTEM_TYPE_DATA (cs, undecided); | 3264 XCODING_SYSTEM_TYPE_DATA (cs, undecided); |
| 3271 int need_space = 0; | 3265 int need_space = 0; |
| 3272 | 3266 |
| 3273 write_c_string (printcharfun, "("); | 3267 write_ascstring (printcharfun, "("); |
| 3274 if (data->do_eol) | 3268 if (data->do_eol) |
| 3275 { | 3269 { |
| 3276 write_c_string (printcharfun, "do-eol"); | 3270 write_ascstring (printcharfun, "do-eol"); |
| 3277 need_space = 1; | 3271 need_space = 1; |
| 3278 } | 3272 } |
| 3279 if (data->do_coding) | 3273 if (data->do_coding) |
| 3280 { | 3274 { |
| 3281 if (need_space) | 3275 if (need_space) |
| 3282 write_c_string (printcharfun, " "); | 3276 write_ascstring (printcharfun, " "); |
| 3283 write_c_string (printcharfun, "do-coding"); | 3277 write_ascstring (printcharfun, "do-coding"); |
| 3284 need_space = 1; | 3278 need_space = 1; |
| 3285 } | 3279 } |
| 3286 if (!NILP (data->cs)) | 3280 if (!NILP (data->cs)) |
| 3287 { | 3281 { |
| 3288 if (need_space) | 3282 if (need_space) |
| 3289 write_c_string (printcharfun, " "); | 3283 write_ascstring (printcharfun, " "); |
| 3290 write_c_string (printcharfun, "coding-system="); | 3284 write_ascstring (printcharfun, "coding-system="); |
| 3291 print_coding_system_in_print_method (data->cs, printcharfun, escapeflag); | 3285 print_coding_system_in_print_method (data->cs, printcharfun, escapeflag); |
| 3292 } | 3286 } |
| 3293 write_c_string (printcharfun, ")"); | 3287 write_ascstring (printcharfun, ")"); |
| 3294 } | 3288 } |
| 3295 | 3289 |
| 3296 static void | 3290 static void |
| 3297 undecided_mark_coding_stream (struct coding_stream *str) | 3291 undecided_mark_coding_stream (struct coding_stream *str) |
| 3298 { | 3292 { |
| 3717 "0123456789" | 3711 "0123456789" |
| 3718 "!$%&*+-.^_{|}~"); | 3712 "!$%&*+-.^_{|}~"); |
| 3719 if (n > 0) | 3713 if (n > 0) |
| 3720 { | 3714 { |
| 3721 name[n] = '\0'; | 3715 name[n] = '\0'; |
| 3722 /* This call to intern_int() is OK because we already verified that | 3716 /* This call to intern_istring() is OK because we already verified that |
| 3723 there are only ASCII characters in the string */ | 3717 there are only ASCII characters in the string */ |
| 3724 return find_coding_system_for_text_file (intern_int ((Ibyte *) name), 0); | 3718 return find_coding_system_for_text_file (intern_istring ((Ibyte *) name), 0); |
| 3725 } | 3719 } |
| 3726 | 3720 |
| 3727 return Qnil; | 3721 return Qnil; |
| 3728 } | 3722 } |
| 3729 | 3723 |
| 4310 static void | 4304 static void |
| 4311 gzip_print (Lisp_Object cs, Lisp_Object printcharfun, int escapeflag) | 4305 gzip_print (Lisp_Object cs, Lisp_Object printcharfun, int escapeflag) |
| 4312 { | 4306 { |
| 4313 struct gzip_coding_system *data = XCODING_SYSTEM_TYPE_DATA (cs, gzip); | 4307 struct gzip_coding_system *data = XCODING_SYSTEM_TYPE_DATA (cs, gzip); |
| 4314 | 4308 |
| 4315 write_c_string (printcharfun, "("); | 4309 write_ascstring (printcharfun, "("); |
| 4316 if (data->level == -1) | 4310 if (data->level == -1) |
| 4317 write_c_string (printcharfun, "default"); | 4311 write_ascstring (printcharfun, "default"); |
| 4318 else | 4312 else |
| 4319 print_internal (make_int (data->level), printcharfun, 0); | 4313 print_internal (make_int (data->level), printcharfun, 0); |
| 4320 write_c_string (printcharfun, ")"); | 4314 write_ascstring (printcharfun, ")"); |
| 4321 } | 4315 } |
| 4322 | 4316 |
| 4323 static int | 4317 static int |
| 4324 gzip_putprop (Lisp_Object codesys, Lisp_Object key, Lisp_Object value) | 4318 gzip_putprop (Lisp_Object codesys, Lisp_Object key, Lisp_Object value) |
| 4325 { | 4319 { |
| 4748 vars_of_file_coding (void) | 4742 vars_of_file_coding (void) |
| 4749 { | 4743 { |
| 4750 /* We always have file-coding support */ | 4744 /* We always have file-coding support */ |
| 4751 Fprovide (intern ("file-coding")); | 4745 Fprovide (intern ("file-coding")); |
| 4752 | 4746 |
| 4753 QScoding_system_cookie = build_string (";;;###coding system: "); | 4747 QScoding_system_cookie = build_ascstring (";;;###coding system: "); |
| 4754 staticpro (&QScoding_system_cookie); | 4748 staticpro (&QScoding_system_cookie); |
| 4755 | 4749 |
| 4756 #ifdef HAVE_DEFAULT_EOL_DETECTION | 4750 #ifdef HAVE_DEFAULT_EOL_DETECTION |
| 4757 /* #### Find a more appropriate place for this comment. | 4751 /* #### Find a more appropriate place for this comment. |
| 4758 WARNING: The existing categories are intimately tied to the function | 4752 WARNING: The existing categories are intimately tied to the function |
| 4836 void | 4830 void |
| 4837 complex_vars_of_file_coding (void) | 4831 complex_vars_of_file_coding (void) |
| 4838 { | 4832 { |
| 4839 Fmake_coding_system_internal | 4833 Fmake_coding_system_internal |
| 4840 (Qconvert_eol_cr, Qconvert_eol, | 4834 (Qconvert_eol_cr, Qconvert_eol, |
| 4841 build_msg_string ("Convert CR to LF"), | 4835 build_defer_string ("Convert CR to LF"), |
| 4842 nconc2 (list6 (Qdocumentation, | 4836 nconc2 (list6 (Qdocumentation, |
| 4843 build_msg_string ( | 4837 build_defer_string ( |
| 4844 "Converts CR (used to mark the end of a line on Macintosh systems) to LF\n" | 4838 "Converts CR (used to mark the end of a line on Macintosh systems) to LF\n" |
| 4845 "(used internally and under Unix to mark the end of a line)."), | 4839 "(used internally and under Unix to mark the end of a line)."), |
| 4846 Qmnemonic, build_string ("CR->LF"), | 4840 Qmnemonic, build_ascstring ("CR->LF"), |
| 4847 Qsubtype, Qcr), | 4841 Qsubtype, Qcr), |
| 4848 /* VERY IMPORTANT! Tell make-coding-system not to generate | 4842 /* VERY IMPORTANT! Tell make-coding-system not to generate |
| 4849 subsidiaries -- it needs the coding systems we're creating | 4843 subsidiaries -- it needs the coding systems we're creating |
| 4850 to do so! */ | 4844 to do so! */ |
| 4851 list4 (Qeol_type, Qlf, | 4845 list4 (Qeol_type, Qlf, |
| 4852 Qsafe_charsets, Qt))); | 4846 Qsafe_charsets, Qt))); |
| 4853 | 4847 |
| 4854 Fmake_coding_system_internal | 4848 Fmake_coding_system_internal |
| 4855 (Qconvert_eol_lf, Qconvert_eol, | 4849 (Qconvert_eol_lf, Qconvert_eol, |
| 4856 build_msg_string ("Convert LF to LF (do nothing)"), | 4850 build_defer_string ("Convert LF to LF (do nothing)"), |
| 4857 nconc2 (list6 (Qdocumentation, | 4851 nconc2 (list6 (Qdocumentation, |
| 4858 build_msg_string ( | 4852 build_defer_string ( |
| 4859 "Do nothing."), | 4853 "Do nothing."), |
| 4860 Qmnemonic, build_string ("LF->LF"), | 4854 Qmnemonic, build_ascstring ("LF->LF"), |
| 4861 Qsubtype, Qlf), | 4855 Qsubtype, Qlf), |
| 4862 /* VERY IMPORTANT! Tell make-coding-system not to generate | 4856 /* VERY IMPORTANT! Tell make-coding-system not to generate |
| 4863 subsidiaries -- it needs the coding systems we're creating | 4857 subsidiaries -- it needs the coding systems we're creating |
| 4864 to do so! */ | 4858 to do so! */ |
| 4865 list4 (Qeol_type, Qlf, | 4859 list4 (Qeol_type, Qlf, |
| 4866 Qsafe_charsets, Qt))); | 4860 Qsafe_charsets, Qt))); |
| 4867 | 4861 |
| 4868 Fmake_coding_system_internal | 4862 Fmake_coding_system_internal |
| 4869 (Qconvert_eol_crlf, Qconvert_eol, | 4863 (Qconvert_eol_crlf, Qconvert_eol, |
| 4870 build_msg_string ("Convert CRLF to LF"), | 4864 build_defer_string ("Convert CRLF to LF"), |
| 4871 nconc2 (list6 (Qdocumentation, | 4865 nconc2 (list6 (Qdocumentation, |
| 4872 build_msg_string ( | 4866 build_defer_string ( |
| 4873 "Converts CR+LF (used to mark the end of a line on Macintosh systems) to LF\n" | 4867 "Converts CR+LF (used to mark the end of a line on Macintosh systems) to LF\n" |
| 4874 "(used internally and under Unix to mark the end of a line)."), | 4868 "(used internally and under Unix to mark the end of a line)."), |
| 4875 Qmnemonic, build_string ("CRLF->LF"), | 4869 Qmnemonic, build_ascstring ("CRLF->LF"), |
| 4876 Qsubtype, Qcrlf), | 4870 Qsubtype, Qcrlf), |
| 4877 | 4871 |
| 4878 /* VERY IMPORTANT! Tell make-coding-system not to generate | 4872 /* VERY IMPORTANT! Tell make-coding-system not to generate |
| 4879 subsidiaries -- it needs the coding systems we're creating | 4873 subsidiaries -- it needs the coding systems we're creating |
| 4880 to do so! */ | 4874 to do so! */ |
| 4881 list4 (Qeol_type, Qlf, | 4875 list4 (Qeol_type, Qlf, |
| 4882 Qsafe_charsets, Qt))); | 4876 Qsafe_charsets, Qt))); |
| 4883 | 4877 |
| 4884 Fmake_coding_system_internal | 4878 Fmake_coding_system_internal |
| 4885 (Qconvert_eol_autodetect, Qconvert_eol, | 4879 (Qconvert_eol_autodetect, Qconvert_eol, |
| 4886 build_msg_string ("Autodetect EOL type"), | 4880 build_defer_string ("Autodetect EOL type"), |
| 4887 nconc2 (list6 (Qdocumentation, | 4881 nconc2 (list6 (Qdocumentation, |
| 4888 build_msg_string ( | 4882 build_defer_string ( |
| 4889 "Autodetect the end-of-line type."), | 4883 "Autodetect the end-of-line type."), |
| 4890 Qmnemonic, build_string ("Auto-EOL"), | 4884 Qmnemonic, build_ascstring ("Auto-EOL"), |
| 4891 Qsubtype, Qnil), | 4885 Qsubtype, Qnil), |
| 4892 /* VERY IMPORTANT! Tell make-coding-system not to generate | 4886 /* VERY IMPORTANT! Tell make-coding-system not to generate |
| 4893 subsidiaries -- it needs the coding systems we're creating | 4887 subsidiaries -- it needs the coding systems we're creating |
| 4894 to do so! */ | 4888 to do so! */ |
| 4895 list4 (Qeol_type, Qlf, | 4889 list4 (Qeol_type, Qlf, |
| 4896 Qsafe_charsets, Qt))); | 4890 Qsafe_charsets, Qt))); |
| 4897 | 4891 |
| 4898 Fmake_coding_system_internal | 4892 Fmake_coding_system_internal |
| 4899 (Qundecided, Qundecided, | 4893 (Qundecided, Qundecided, |
| 4900 build_msg_string ("Undecided (auto-detect)"), | 4894 build_defer_string ("Undecided (auto-detect)"), |
| 4901 nconc2 (list4 (Qdocumentation, | 4895 nconc2 (list4 (Qdocumentation, |
| 4902 build_msg_string | 4896 build_defer_string |
| 4903 ("Automatically detects the correct encoding."), | 4897 ("Automatically detects the correct encoding."), |
| 4904 Qmnemonic, build_string ("Auto")), | 4898 Qmnemonic, build_ascstring ("Auto")), |
| 4905 list6 (Qdo_eol, Qt, Qdo_coding, Qt, | 4899 list6 (Qdo_eol, Qt, Qdo_coding, Qt, |
| 4906 /* We do EOL detection ourselves so we don't need to be | 4900 /* We do EOL detection ourselves so we don't need to be |
| 4907 wrapped in an EOL detector. (It doesn't actually hurt, | 4901 wrapped in an EOL detector. (It doesn't actually hurt, |
| 4908 though, I don't think.) */ | 4902 though, I don't think.) */ |
| 4909 Qeol_type, Qlf))); | 4903 Qeol_type, Qlf))); |
| 4910 | 4904 |
| 4911 Fmake_coding_system_internal | 4905 Fmake_coding_system_internal |
| 4912 (intern ("undecided-dos"), Qundecided, | 4906 (intern ("undecided-dos"), Qundecided, |
| 4913 build_msg_string ("Undecided (auto-detect) (CRLF)"), | 4907 build_defer_string ("Undecided (auto-detect) (CRLF)"), |
| 4914 nconc2 (list4 (Qdocumentation, | 4908 nconc2 (list4 (Qdocumentation, |
| 4915 build_msg_string | 4909 build_defer_string |
| 4916 ("Automatically detects the correct encoding; EOL type of CRLF forced."), | 4910 ("Automatically detects the correct encoding; EOL type of CRLF forced."), |
| 4917 Qmnemonic, build_string ("Auto")), | 4911 Qmnemonic, build_ascstring ("Auto")), |
| 4918 list4 (Qdo_coding, Qt, | 4912 list4 (Qdo_coding, Qt, |
| 4919 Qeol_type, Qcrlf))); | 4913 Qeol_type, Qcrlf))); |
| 4920 | 4914 |
| 4921 Fmake_coding_system_internal | 4915 Fmake_coding_system_internal |
| 4922 (intern ("undecided-unix"), Qundecided, | 4916 (intern ("undecided-unix"), Qundecided, |
| 4923 build_msg_string ("Undecided (auto-detect) (LF)"), | 4917 build_defer_string ("Undecided (auto-detect) (LF)"), |
| 4924 nconc2 (list4 (Qdocumentation, | 4918 nconc2 (list4 (Qdocumentation, |
| 4925 build_msg_string | 4919 build_defer_string |
| 4926 ("Automatically detects the correct encoding; EOL type of LF forced."), | 4920 ("Automatically detects the correct encoding; EOL type of LF forced."), |
| 4927 Qmnemonic, build_string ("Auto")), | 4921 Qmnemonic, build_ascstring ("Auto")), |
| 4928 list4 (Qdo_coding, Qt, | 4922 list4 (Qdo_coding, Qt, |
| 4929 Qeol_type, Qlf))); | 4923 Qeol_type, Qlf))); |
| 4930 | 4924 |
| 4931 Fmake_coding_system_internal | 4925 Fmake_coding_system_internal |
| 4932 (intern ("undecided-mac"), Qundecided, | 4926 (intern ("undecided-mac"), Qundecided, |
| 4933 build_msg_string ("Undecided (auto-detect) (CR)"), | 4927 build_defer_string ("Undecided (auto-detect) (CR)"), |
| 4934 nconc2 (list4 (Qdocumentation, | 4928 nconc2 (list4 (Qdocumentation, |
| 4935 build_msg_string | 4929 build_defer_string |
| 4936 ("Automatically detects the correct encoding; EOL type of CR forced."), | 4930 ("Automatically detects the correct encoding; EOL type of CR forced."), |
| 4937 Qmnemonic, build_string ("Auto")), | 4931 Qmnemonic, build_ascstring ("Auto")), |
| 4938 list4 (Qdo_coding, Qt, | 4932 list4 (Qdo_coding, Qt, |
| 4939 Qeol_type, Qcr))); | 4933 Qeol_type, Qcr))); |
| 4940 | 4934 |
| 4941 /* Need to create this here or we're really screwed. */ | 4935 /* Need to create this here or we're really screwed. */ |
| 4942 Fmake_coding_system_internal | 4936 Fmake_coding_system_internal |
| 4943 (Qraw_text, Qno_conversion, | 4937 (Qraw_text, Qno_conversion, |
| 4944 build_msg_string ("Raw Text"), | 4938 build_defer_string ("Raw Text"), |
| 4945 nconc2 (list4 (Qdocumentation, | 4939 nconc2 (list4 (Qdocumentation, |
| 4946 build_msg_string ("Raw text converts only line-break " | 4940 build_defer_string ("Raw text converts only line-break " |
| 4947 "codes, and acts otherwise like " | 4941 "codes, and acts otherwise like " |
| 4948 "`binary'."), | 4942 "`binary'."), |
| 4949 Qmnemonic, build_string ("Raw")), | 4943 Qmnemonic, build_ascstring ("Raw")), |
| 4950 #ifdef MULE | 4944 #ifdef MULE |
| 4951 list2 (Qsafe_charsets, list3 (Vcharset_ascii, Vcharset_control_1, | 4945 list2 (Qsafe_charsets, list3 (Vcharset_ascii, Vcharset_control_1, |
| 4952 Vcharset_latin_iso8859_1)))); | 4946 Vcharset_latin_iso8859_1)))); |
| 4953 | 4947 |
| 4954 #else | 4948 #else |
| 4955 Qnil)); | 4949 Qnil)); |
| 4956 #endif | 4950 #endif |
| 4957 | 4951 |
| 4958 Fmake_coding_system_internal | 4952 Fmake_coding_system_internal |
| 4959 (Qbinary, Qno_conversion, | 4953 (Qbinary, Qno_conversion, |
| 4960 build_msg_string ("Binary"), | 4954 build_defer_string ("Binary"), |
| 4961 nconc2 (list6 (Qdocumentation, | 4955 nconc2 (list6 (Qdocumentation, |
| 4962 build_msg_string ( | 4956 build_defer_string ( |
| 4963 "This coding system is as close as it comes to doing no conversion.\n" | 4957 "This coding system is as close as it comes to doing no conversion.\n" |
| 4964 "On input, each byte is converted directly into the character\n" | 4958 "On input, each byte is converted directly into the character\n" |
| 4965 "with the corresponding code -- i.e. from the `ascii', `control-1',\n" | 4959 "with the corresponding code -- i.e. from the `ascii', `control-1',\n" |
| 4966 "or `latin-1' character sets. On output, these characters are\n" | 4960 "or `latin-1' character sets. On output, these characters are\n" |
| 4967 "converted back to the corresponding bytes, and other characters\n" | 4961 "converted back to the corresponding bytes, and other characters\n" |
| 4968 "are converted to the default character, i.e. `~'."), | 4962 "are converted to the default character, i.e. `~'."), |
| 4969 Qeol_type, Qlf, | 4963 Qeol_type, Qlf, |
| 4970 Qmnemonic, build_string ("Binary")), | 4964 Qmnemonic, build_ascstring ("Binary")), |
| 4971 #ifdef MULE | 4965 #ifdef MULE |
| 4972 list2 (Qsafe_charsets, list3 (Vcharset_ascii, Vcharset_control_1, | 4966 list2 (Qsafe_charsets, list3 (Vcharset_ascii, Vcharset_control_1, |
| 4973 Vcharset_latin_iso8859_1)))); | 4967 Vcharset_latin_iso8859_1)))); |
| 4974 | 4968 |
| 4975 #else | 4969 #else |
