changeset 88911:ac7fec5a01d4

*** empty log message ***
author Kenichi Handa <handa@m17n.org>
date Fri, 26 Jul 2002 04:08:40 +0000
parents daa40c211bfe
children 8392c10256e6
files lisp/ChangeLog src/ChangeLog
diffstat 2 files changed, 131 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/ChangeLog	Fri Jul 26 04:08:30 2002 +0000
+++ b/lisp/ChangeLog	Fri Jul 26 04:08:40 2002 +0000
@@ -1,3 +1,28 @@
+2002-07-26  Kenichi Handa  <handa@etl.go.jp>
+
+	* international/characters.el: Setup char-script-table.
+
+	* international/fontset.el: 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.
+
+	* international/mule-conf.el (devanagari-glyph): New charset.
+	Unify these charses: korean-ksc5601, ipa, tibetan, ethiopic,
+	japanese-jisx0208, japanese-jisx0212, japanese-jisx0213-1,
+	japanese-jisx0213-2.
+
+	* international/mule-diag.el (print-fontset): Use describe-vector
+	to handle a char table returned by fontset-info.
+
+	* language/indian.el: Don't register ccl-encode-indian-glyph-font
+	and ccl-encode-unicode-font in font-ccl-encoder-alist.
+
 2002-07-18  Dave Love  <fx@gnu.org>
 
 	* startup.el (fancy-splash-head): Warn about status.
--- a/src/ChangeLog	Fri Jul 26 04:08:30 2002 +0000
+++ b/src/ChangeLog	Fri Jul 26 04:08:40 2002 +0000
@@ -1,3 +1,109 @@
+2002-07-26  Kenichi Handa  <handa@etl.go.jp>
+
+	The following changes are to allow specifying multiple font
+	patterns for a character range (specified by script or charset).
+
+	* Makefile.in (abbrev.o): Depend on syntax.h.
+	(xfaces.o): Depend on charset.h.
+
+	* alloc.c (Fmake_string): Use ASCII_CHAR_P, not
+	SINGLE_BYTE_CHAR_P.
+
+	* ccl.c (Fccl_execute_on_string): Add `const' to local variables.
+
+	* chartab.c (Fmake_char_table): Doc fixed.  If PURPOSE doesn't
+	have property char-table-extra-slots, make no extra slot.
+
+	* dispextern.h (struct face): Member `charset' deleted.
+	(FACE_SUITABLE_FOR_CHAR_P): Use ASCII_CHAR_P, not
+	SINGLE_BYTE_CHAR_P.
+	(FACE_FOR_CHAR): Likewise.
+	(choose_face_font, lookup_non_ascii_face, font_name_registry): Add
+	prototypes
+	(lookup_face, lookup_named_face, lookup_derived_face): Prototype
+	fixed.
+	(generate_ascii_font_name): Renamed from generate_ascii_font.
+	
+	* fontset.h (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.
+
+	* fontset.c (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.
+
+	* lisp.h (CHAR_TABLE_REF): Remove unnecessary check (IDX >= 0).
+	(Fset_fotset_font): Fix arguments to 5.
+
+	* msdos.c (XMenuActivate): Adjuted for the change of
+	lookup_derived_face.
+
+	* xdisp.c (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.
+
+	* xfaces.c: 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.
+
+	* xfns.c (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.
+
+	* xterm.h (x_get_font_repertory): Extern it.
+
+	* xterm.c (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.
+
 2002-07-25  Kenichi Handa  <handa@etl.go.jp>
 
 	* coding.c (Ffind_coding_systems_region_internal): Detect an