# HG changeset patch # User Kenichi Handa # Date 1054855282 0 # Node ID e911ca706166741156d6fa07c162aafebe5de62a # Parent 7bae1aa5a973d94a5ac5c1e7a2a44e174f2798b1 (Fset_coding_system_priority): Doc fix. Update values of codng-category-XXX, and coding-category-list. (syms_of_coding): Set all elements of Vcoding_category_table and their symbol values. diff -r 7bae1aa5a973 -r e911ca706166 src/coding.c --- a/src/coding.c Thu Jun 05 23:18:23 2003 +0000 +++ b/src/coding.c Thu Jun 05 23:21:22 2003 +0000 @@ -7763,7 +7763,8 @@ DEFUN ("set-coding-system-priority", Fset_coding_system_priority, Sset_coding_system_priority, 0, MANY, 0, doc: /* Assign higher priority to the coding systems given as arguments. -usage: (set-coding-system-priority CODING-SYSTEM ...) */) +If multiple coding systems belongs to the same category, +all but the first one are ignored. */) (nargs, args) int nargs; Lisp_Object *args; @@ -7791,6 +7792,7 @@ if (coding_categories[category].id >= 0 && ! EQ (args[i], CODING_ID_NAME (coding_categories[category].id))) setup_coding_system (args[i], &coding_categories[category]); + Fset (AREF (Vcoding_category_table, category), args[i]); } /* Now we have decided top J priorities. Reflect the order of the @@ -7807,6 +7809,14 @@ } bcopy (priorities, coding_priorities, sizeof priorities); + + /* Update `coding-category-list'. */ + Vcoding_category_list = Qnil; + for (i = coding_category_max - 1; i >= 0; i--) + Vcoding_category_list + = Fcons (AREF (Vcoding_category_table, priorities[i]), + Vcoding_category_list); + return Qnil; } @@ -8633,6 +8643,8 @@ intern ("coding-category-utf-8")); ASET (Vcoding_category_table, coding_category_utf_16_be, intern ("coding-category-utf-16-be")); + ASET (Vcoding_category_table, coding_category_utf_16_auto, + intern ("coding-category-utf-16-auto")); ASET (Vcoding_category_table, coding_category_utf_16_le, intern ("coding-category-utf-16-le")); ASET (Vcoding_category_table, coding_category_utf_16_be_nosig, @@ -8954,6 +8966,13 @@ setup_coding_system (Qno_conversion, &keyboard_coding); setup_coding_system (Qno_conversion, &terminal_coding); setup_coding_system (Qno_conversion, &safe_terminal_coding); + + { + int i; + + for (i = 0; i < coding_category_max; i++) + Fset (AREF (Vcoding_category_table, i), Qno_conversion); + } } char *