(Vscript_alist): This variable deleted.
(Vchar_script_table, Qchar_script_table): New variable.
(syms_of_character): Declare Vchar_script_table as a lisp variable
and initialize it.
(x_produce_glyphs): Use ASCII_CHAR_P, not
SINGLE_BYTE_CHAR_P. Fix the logic of handling non-ASCII char when
it->multibyte_p is zero.
(XTread_socket): Use ASCII_CHAR_P, not SINGLE_BYTE_CHAR_P.
(x_new_fontset): If FONTSETNAME doesn't match any existing
fontsets, create a new one.
(x_get_font_repertory): New function.
(x_set_font): Always call x_new_fontset and
store_frame_parameter.
(Fx_create_frame): Call x_new_fontset, not x_new_font.
(syms_of_xfns): Set get_font_repertory_func to
x_get_font_repertory.
Include charset.h.
(load_face_font): Argument C deleted. Caller changed.
(generate_ascii_font_name): Renamed from generate_ascii_font.
(font_name_registry): New function.
(cache_face): Store ascii faces before non-ascii faces in buckets.
(lookup_face): Arguments C and BASE_FACE deleted. Caller changed.
Lookup only ascii faces.
(lookup_non_ascii_face): New function.
(lookup_named_face): Argument C deleted. Caller changed.
(lookup_derived_face): Argument C deleted. Caller changed.
(try_font_list): New arg PATTERN. Caller changed. If PATTERN is
a string, just call font_list with it.
(choose_face_font): Arguments FACE and C deleted. New arg
FONT_SPEC. Caller changed.
(realize_face): Arguments C and BASE_FACE deleted. Caller
(realize_x_face): Likewise.
(realize_non_ascii_face): New function.
(realize_x_face): Call load_face_font here.
(realize_tty_face): Argument C deleted. Caller changed.
(compute_char_face): If CH is not ascii, call FACE_FOR_CHAR to
get a face ID.
(dump_realized_face): Don't print charset of FACE.
(message_dolog, set_message_1,
extend_face_to_end_of_line): Use ASCII_CHAR_P, not
SINGLE_BYTE_CHAR_P.
(highlight_trailing_whitespace): Adjusted for the change of
lookup_named_face.
(Qprepend, Qappend): New variables.
(FONTSET_CHARSET_ALIST, FONTSET_FACE_ALIST): These macros deleted.
(FONTSET_NOFONT_FACE, FONTSET_REPERTORY): New macros.
(FONTSET_REF): Optimize if FONTSET is Vdefault_fontset.
(FONTSET_REF_AND_RANGE, FONTSET_ADD): New macros.
(fontset_ref_and_range, fontset_add, reorder_font_vector)
(load_font_get_repertory): New functions.
(fontset_set): This function deleted.
(fontset_face): New arg FACE. Return face ID, not face.
Completely re-written to handle new fontset structure. Caller
changed.
(free_face_fontset): Use ASET istead of AREF (X) = Y.
(face_for_char): Don't call lookup_face.
(make_fontset_for_ascii_face): New arg FACE.
(fs_load_font): New arg CHARSET_ID. Don't check
Vfont_encoding_alist here.
(find_font_encoding): New function.
(list_fontsets): Use STRINGP, not ! NILP.
(accumulate_script_ranges): New function.
(Fset_fontset_font, Fnew_fontset, Ffontset_info): Completely
re-written to handle new fontset structure.
(Ffontset_font): Return a copy of element.
(syms_of_fontset): Define symbols Qprepend and Qappend. Fix
docstring of font-encoding-alist.
(get_font_repertory_func): New prototype.
(make_fontset_for_ascii_face, fs_load_font): Prototypes fixed.
(FS_LOAD_FONT): Call fs_load_font with the 3rd arg charset_ascii.
Setup the default fontset by the new
script based way.
(x-complement-fontset-spec): Change the format of arg FONTLIST to
an alist of charsets vs font name lists.
(charset-script-alist): New variable.
(create-fontset-from-fontset-spec): Allow script name in
FONTSET-SPEC. If charset is specified in FONTSET-SPEC, change it
to the corresponding script name.
(create-fontset-from-ascii-font): Slightly tuned.
Include "coding.h".
(Qget_emacs_mule_file_char, Qload_force_doc_strings,
load_each_byte, unread_char): New variables.
(readchar_backlog): This variable deleted.
(readchar): Return a character unless load_each_byte is nonzero.
Handle the case that readcharfun is Qget_emacs_mule_file_char or a
cons. If unread_char is not -1, simply return it.
(unreadchar): Handle the case that readcharfun is
Qget_emacs_mule_file_char or a cons. Set unread_char if
necessary.
(read_multibyte): This function deleted.
(readbyte_for_lambda, readbyte_from_file, readbyte_from_string)
(read_emacs_mule_char): New functions.
(Fload): Even if the file doesn't have the extention ".elc", if
safe_to_load_p returns a positive version number, assume that the
file contains bytecompiled code. If the version is less than 22,
load the file while decoding multibyte sequences by emacs-mule.
(readevalloop): Don't use readchar_backlog.
(Fread): Likewise. Pay attention to the case that STREAM is a
cons.
(Fread_from_string): Pay attention to the case that STREAM is a
cons.
(read_escape): The arg BYTEREP deleted.
(read1): Set load_each_byte to 1 temporarily while handling
#@NUMBER. Don't call read_multibyte.
(read_vector): Call Fread with a cons. If readcharfun is
Qget_emacs_mule_file_char, decode the read string by emacs-mule.
(read_list): If doc_reference is 2, make the cdr part string as
unibyte.
(syms_of_lread): Intern and staticpro Qget_emacs_mule_file_char
and Qload_force_doc_strings.
(Vscript_alist): New variable.
(string_char_with_unification): Add `const' to local variables.
(str_as_unibyte): Likewise.
(string_escape_byte8): Likewise.
(syms_of_character): Declare script-alist as a Lisp variable.
(LEADING_CODE_PRIVATE_11, LEADING_CODE_PRIVATE_12,
LEADING_CODE_PRIVATE_21, LEADING_CODE_PRIVATE_22): Macros
deleted. Callers changes to use
EMACS_MULE_LEADING_CODE_PRIVATE_11, etc.
(decode_coding_ccl): Add `const' to local variables.
(consume_chars): Likewise.
(Ffind_coding_systems_region_internal): Likewise.
(Fcheck_coding_systems_region): Likewise.
(Vcharset_ordered_list): Extern it.
(charset_ordered_list_tick): Extern it.
(EMACS_MULE_LEADING_CODE_PRIVATE_11,
EMACS_MULE_LEADING_CODE_PRIVATE_12,
EMACS_MULE_LEADING_CODE_PRIVATE_21,
EMACS_MULE_LEADING_CODE_PRIVATE_22): New macros
(Funify_charset): Adjusted for the change of Funify_charset.
(charset_ordered_list_tick): New variable.
(Fdefine_charset_internal): Increment charset_ordered_list_tick.
(Funify_charset): New optional arg DEUNIFY. If it is non-nil,
deunify intead of unify a charset.
(string_xstring_p): Add `const' to local variables.
(find_charsets_in_text): Add `const' to arguemnts and local
variables.
(encode_char): Adjusted for the change of Funify_charset. Fix
detecting of invalid code.
(Fset_charset_priority): Increment charset_ordered_list_tick.
(TRAILING_CODE_P): New macro.
(MAYBE_UNIFY_CHAR): Adjusted for the change of Funify_charset.
(string_char_with_unification): Fix prototype.
(Vscript_alist): Extern it.
Dave Love [Thu, 27 Jun 2002 21:54:39 +0000 (21:54 +0000)]
("German", "French", "Spanish"): Add
latin-9 as alternative coding system.
("Slovenian", "Polish"): Add windows-1250 as alternative coding
system.
("Dutch"): Add latin-9 as alternative coding system. Add input
method.
("Turkish"): Add windows-1254 and latin-3 as alternative coding
systems.
("Lithuanian", "Latvian"): Add windows-1257 as alternative coding
system.