2006-10-26 Kenichi Handa <handa@m17n.org>
+ * composite.el (terminal-composition-function): New function.
+ (terminal-composition-function-table): New variable.
+ (auto-compose-chars): If running on a terminal, use
+ terminal-composition-function-table.
+
+ * loadup.el: Load "composite" after "international/characters".
+
* international/characters.el: Delete codes for setting up charset
property nospace-between-words. Fix setting up of
char-width-table. Don't make ethiopic and tibetan double column.
+2006-10-26 Kenichi Handa <handa@m17n.org>
+
+ * term.c: Include "composite.h".
+ (encode_terminal_code): Output all components of composition.
+ Check the size of encode_terminal_src.
+ (produce_glyphs): For compostion, call produce_composite_glyph.
+ (append_composite_glyph, produce_composite_glyph): New functions.
+
+ * xdisp.c (x_produce_glyphs): In handling composition, if a font
+ is not found, get font_info from the current ascii face.
+
2006-10-23 Kenichi Handa <handa@m17n.org>
* fileio.c (Finsert_file_contents): On replacing, temporarily bind
/* When no suitable font found, use the default font. */
font_not_found_p = font == NULL;
if (font_not_found_p)
- font = FACE_FROM_ID (it->f, it->face_id)->font;
- font_info
- = FONT_INFO_FROM_FACE (it->f, FACE_FROM_ID (it->f, face_id));
+ {
+ font = FACE_FROM_ID (it->f, it->face_id)->font;
+ font_info
+ = FONT_INFO_FROM_FACE (it->f,
+ FACE_FROM_ID (it->f, it->face_id));
+ }
+ else
+ font_info
+ = FONT_INFO_FROM_FACE (it->f, FACE_FROM_ID (it->f, face_id));
boff = font_info->baseline_offset;
if (font_info->vertical_centering)
boff = VCENTER_BASELINE_OFFSET (font, it->f) - boff;