1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-04-27 08:43:40 -07:00
Commit graph

26669 commits

Author SHA1 Message Date
Kenichi Handa
72594565db (set-nested-alist): Set BRANCHES (if
non-nil) at the tail of ALIST.
(compose-region, decompose-region, decompse-string,
reference-point-alist, compose-chars): Moved to composite.el.
(compose-chars-component, compose-chars-rule,
decompose-composite-char): Deleted.
1999-12-15 00:42:14 +00:00
Kenichi Handa
ccac3d772c (iso-2022-7bit, iso-2022-7bit-ss2
iso-2022-7bit-lock, iso-2022-7bit-lock-ss2, iso-2022-8bit-ss2,
x-ctext): Give `composition' property t.
1999-12-15 00:41:44 +00:00
Kenichi Handa
5b8d2ff502 (encode-coding-char): Don't check
composite character.
1999-12-15 00:41:22 +00:00
Kenichi Handa
35554641be (mule-version): Updated to 5.0 (AOI).
(mule-version-date): Updated to 1999.12.7.
(with-category-table): New macro.
1999-12-15 00:40:48 +00:00
Kenichi Handa
0c4f97d011 (vertical-centering-font-regexp): New
variable.
1999-12-15 00:40:24 +00:00
Kenichi Handa
d5f05a67da Fix cateogries of Lao symbols. 1999-12-15 00:39:59 +00:00
Kenichi Handa
f0d16a7fec (what-cursor-position): Show "(composed)" if the
character is composed.
1999-12-15 00:39:33 +00:00
Kenichi Handa
9d4d60c169 (ps-plot-region): Handle new composition. 1999-12-15 00:38:58 +00:00
Kenichi Handa
d0da93b3a1 Define encode-composition-rule and find-composition
for Emacs 20.4 and the earlier versions.
(ps-mule-init-external-library): Just require a feature for
external libraries.
(ps-mule-prologue): Postscript code modified for new composition.
(ps-mule-find-wrappoint): New arg COMPOSITION.
(ps-mule-plot-string): Delete code for composite characaters.
(ps-mule-plot-composition): New funcion.
(ps-mule-prepare-font-for-components): New function.
(ps-mule-plot-components): New function.
(ps-mule-composition-prologue-generated): Renamed from
ps-mule-cmpchar-prologue-generated.
(ps-mule-composition-prologue): New named from
ps-mule-cmpchar-prologue.  Modified for new composition.
(ps-mule-plot-rule-cmpchar, ps-mule-plot-cmpchar,
ps-mule-prepare-cmpchar-font): Deleted.
(ps-mule-string-encoding): New arg NO-SETFONT.
(ps-mule-bitmap-prologue): In Postscript code of BuildGlyphCommon,
check Composing, not Cmpchar
(ps-mule-initialize): Set ps-mule-composition-prologue-generated
to nil.
(ps-mule-begin-job): Check existence of new composition.
1999-12-15 00:34:01 +00:00
Kenichi Handa
653b6bad98 Rewritten for new composition. 1999-12-15 00:32:16 +00:00
Kenichi Handa
c674f3518f New file. 1999-12-15 00:28:11 +00:00
Kenichi Handa
b4192550b1 (x_append_glyph): Setup members of struct glyph properly
for composition.
(x_append_composite_glyph): New function.
(VCENTER_BASELINE_OFFSET): New macro.
(x_produce_glyphs): If it->what == IT_COMPOSITION, setup members
of struct it for the composition.  Cache pixel offsets in the
struct composition.  Delete codes for a composite character.
Handle Vignore_relative_composition in composition code.
(struct glyph_string): Delete member cmpcharp, add new member cmp.
(x_set_cursor_gc): Check s->cmp, not s->cmpcharp.
(x_compute_glyph_string_overhangs): Likewise.
(x_get_glyph_overhangs): Delete codes for a composite character.
(x_right_overwritten): Check s->cmp, not s->cmpcharp.
(x_draw_glyph_string_background): Likewise.  Delete codes for
checking s->gidx for a composition.
(x_draw_glyph_string_foreground): Delete code for a composite
character.
(x_draw_composite_glyph_string_foreground): New function.
(x_draw_glyph_string_box): Check s->cmp, not s->cmpcharp.
(x_draw_glyph_string): Handle the case of COMPOSITE_GLYPH.
(struct work): Deleted.
(x_fill_composite_glyph_string): Argument changed.  Mostly
rewritten for that.
(x_fill_glyph_string): Don't check CHARSET_COMPOSITION.
(BUILD_CHAR_GLYPH_STRINGS): Don't handle composition here.
(BUILD_COMPOSITE_GLYPH_STRING): New macro.
(BUILD_GLYPH_STRINGS): For composition, call
BUILD_COMPOSITE_GLYPH_STRING.
(x_new_font): Initialize f->output_data.x->baseline_offset, not
f->output_data.x->font_baseline.
1999-12-15 00:27:21 +00:00
Kenichi Handa
b6c3d03479 (struct x_output): Change member font_baseline to
baseline_offset.
1999-12-15 00:26:32 +00:00
Kenichi Handa
99e1184e5c (lisp_data_to_selection_data): Adjusted for the change
for find_charset_in_str.
1999-12-15 00:26:05 +00:00
Kenichi Handa
58cad5ed4f Include intervals.h.
(syms_of_xfns): Make `display' property nonsticky by default.
1999-12-15 00:25:34 +00:00
Kenichi Handa
78d2079c49 (choose_face_fontset_font): Delete codes for a
composite character.
(realize_x_face): Likewise.  Change a place to set local variable
`f' to avoid a bug of GCC 2.8.1 on Solaris.
1999-12-15 00:24:07 +00:00
Kenichi Handa
260a86a07c (it_props): Add an entry for composition.
(face_before_or_after_it_pos): For composition, check face of a
character after the composition.
(handle_composition_prop): New function.
(get_next_display_element): Adjusted for the change of
CHAR_STRING.
(set_iterator_to_next): Handle the case that it->method ==
next_element_from_composition.
(next_element_from_composition): New function.
(message_dolog): Adjusted for the change of CHAR_STRING.
(set_message_1): Likewise.
(check_point_in_composition): New function.
(reconsider_clip_changes): If point moved into or out of
composition, set b->clip_changed to 1 to force updating of the
screen.
(disp_char_vector): Delete codes for a composite character.
(decode_mode_spec_coding): Adjusted for the change of CHAR_STRING.
1999-12-15 00:23:27 +00:00
Kenichi Handa
f02d6d5cbb (Frecenter): Clear all caches of compositions. 1999-12-15 00:22:26 +00:00
Kenichi Handa
abc2f676d6 (Vtext_property_default_nonsticky): New variable
(syms_of_textprop): Declare it as a Lisp variable.
1999-12-15 00:21:42 +00:00
Kenichi Handa
c7cba11dec (encode_terminal_code): Delete codes for a composite
character.  Adjusted for the change of CHAR_STRING.
(produce_glyphs): When called, it->what can be IT_COMPOSITION.
Delete codes for a composite character.
1999-12-15 00:21:15 +00:00
Kenichi Handa
aa9b6dd66b (SYNTAX_ENTRY_INT): Delete codes for a composite
character.
1999-12-15 00:20:44 +00:00
Kenichi Handa
daaa6ed868 (search_buffer): Adjusted for the change of CHAR_STRING. 1999-12-15 00:20:26 +00:00
Kenichi Handa
e0016554c4 Include composite.h.
(read_process_output): Call update_compositions.
1999-12-15 00:17:54 +00:00
Kenichi Handa
19a86a032e (printchar): Adjusted for the change of CHAR_STRING. 1999-12-15 00:17:25 +00:00
Kenichi Handa
449fea3977 (readchar): Adjusted for the change of CHAR_STRING.
Delete a code that handles an invalid too-long multibyte sequence
because we are now sure that we never encounter with such a
sequence.
(read_multibyte): Use macro MAX_MULTIBYTE_LENGTH, not
MAX_LENGTH_OF_MULTI_BYTE_FORM.
(init_obarray): Likewise.
(read1): Likewise.  Adjusted for the change of CHAR_STRING.
1999-12-15 00:17:03 +00:00
Kenichi Handa
1948175262 (QCtest, QCweakness, Qequal): Extern them.
(hash_put): Adjusted for the change of the definition.
(signal_after_change): Likewise.
(check_point_in_composition): Extern it.
1999-12-15 00:16:30 +00:00
Kenichi Handa
0a16479ffe (push_key_description): Adjusted for the change of
CHAR_STRING.
(Ftext_char_description): Likewise.
1999-12-15 00:15:57 +00:00
Kenichi Handa
adf5cb9c38 (Vdisable_point_adjustment): New variable.
(Vglobal_disable_point_adjustment): New variable.
(syms_of_keyboard): Declare them as Lisp variables.
(command_loop_1): Check them and call adjust_point_for_property if
necessary.
(adjust_point_for_property): New function.
1999-12-15 00:15:16 +00:00
Kenichi Handa
f56b42ac9e (adjust_intervals_for_insertion): To check stickines
of properties, pay attention to text-property-default-nonsticky.
(merge_properties_sticky): Likewise.
(get_property_and_range): New function.
1999-12-15 00:14:44 +00:00
Kenichi Handa
a5ecc8a315 Include composite.h.
(get_property_and_range): Extern it.
(Vtext_property_default_nonsticky): Extern it.
1999-12-15 00:14:19 +00:00
Kenichi Handa
0ef71121ca (copy_text): Adjusted for the change of CHAR_STRING.
(insert_char): Likewise.
(insert): Call update_compositions.
(insert_and_inherit): Likewise.
(insert_before_markers): Likewise.
(insert_before_markers_and_inherit): Likewise.
(insert_from_string): Likewise.
(insert_from_string_before_markers): Likewise.
(insert_from_buffer): Likewise.
(replace_range): Likewise.
(count_combining_composition): Deleted.
(count_combining_before): Delete codes for a composite character.
(count_combining_after): Likewise.
(del_range_1): Call update_compositions.
(del_range_byte): Likewise.
(del_range_both): Likewise.
(Fcombine_after_change_execute): Likewise.
1999-12-15 00:13:49 +00:00
Kenichi Handa
012fd715d2 (check_composition): New function.
(MULTIBYTE_BYTES_WIDTH): Call STRING_CHAR_AND_LENGTH with
MAX_MULTIBYTE_LENGTH, not MAX_LENGTH_OF_MULTI_BYTE_FORM.
(current_column_1): Handle new way of composition.
(Fmove_to_column): Likewise.
(compute_motion): Likewise.
1999-12-15 00:13:13 +00:00
Kenichi Handa
810abb8758 (Vvertical_centering_font_regexp): New variable.
(syms_of_fontset): Declare it as a Lisp variable and initialize.
Set Vignore_relative_composition to nil.
(fs_load_font): Initialize `vertical_centering' of struct
font_info.
1999-12-15 00:12:47 +00:00
Kenichi Handa
21fa1afa72 (struct font_info): New member vertical_centering.
(Vvertical_centering_font_regexp): Extern it.
1999-12-15 00:12:19 +00:00
Kenichi Handa
64a5094a4a (Flength): The length of char-table is MAX_CHAR.
(concat): Adjusted for the change of CHAR_STRING.
(Ffillarray): Adjusted for the change of CHAR_STRING.
(Fset_char_table_default): Delete codes for a composite character.
(hash_put): Return hash index.
1999-12-15 00:11:56 +00:00
Kenichi Handa
ce51c54c3f (Fsubstitute_in_file_name): Adjusted for the change of
CHAR_STRING.
(Finsert_file_contents): Set Vlast_coding_system_used before
calling signal_after_change.  Call update_compositions if some
texts are inserted..
(Fwrite_region): Adjusted for the change of a_write and e_write.
(a_write): Argument changed.  Work based on character position,
not byte position.
(e_write): Argument changed.  Handle new way of composition.
1999-12-15 00:11:24 +00:00
Kenichi Handa
9d100795e3 (main): Call syms_of_composite. 1999-12-15 00:10:49 +00:00
Kenichi Handa
d5c2c40348 (Fchar_to_string): Adjusted for the change of
CHAR_STRING.
(general_insert_function): Likewise.
(Finsert_char): Likewise.
(Fsubst_char_in_region): Likewise.  Call update_compositions.
(Ftranslate_region): Call update_compositions.
(Ftranspose_regions): Call update_compositions.
1999-12-15 00:10:23 +00:00
Kenichi Handa
91f045dfa3 (doprnt1): Adjusted for the change of CHAR_STRING. 1999-12-15 00:09:57 +00:00
Kenichi Handa
959804a08d (direct_output_forward_char): Check point moving into
or out of a composition.  If so, give up direct method.
1999-12-15 00:09:32 +00:00
Kenichi Handa
a90fbbf691 (enum glyph_type): New member COMPOSITE_GLYPH.
(struct glyph): Add new sub-structure cmp to the union `u'.
(enum display_element_type): New member IT_COMPOSITION.
(enum prop_idx): New member COMPOSITION_PROP_IDX.
(struct it): New members cmp_id, cmp_len.
1999-12-15 00:09:03 +00:00
Kenichi Handa
e19c1eb40e (Faref): Delete codes for a composite character..
(Faset): Likewise.  Adjusted for the change of CHAR_STRING.
1999-12-15 00:08:39 +00:00
Kenichi Handa
ca4c9455f8 New file 1999-12-15 00:08:01 +00:00
Kenichi Handa
ec6d2bb84b Include composite.h.
(DECODE_CHARACTER_ASCII): Don't handle composition here.
(DECODE_CHARACTER_DIMENSION1): Likewise.  Don't check the validity
of multibyte code here.
(DECODE_CHARACTER_DIMENSION2): Likewise.
(detect_coding_emacs_mule): Change the case label from
EMACS_leading_code_composition to 0x80.
(detect_coding_iso2022): Handle new composition sequence.
(DECODE_ISO_CHARACTER): Likewise.
(check_composing_code): Deleted.
(coding_allocate_composition_data): New function.
(CODING_ADD_COMPOSITION_START) (CODING_ADD_COMPOSITION_END)
(CODING_ADD_COMPOSITION_COMPONENT) (DECODE_COMPOSITION_START)
(DECODE_COMPOSITION_END) (DECODE_COMPOSITION_RULE): New macros.
(decode_coding_iso2022): Handle new composition sequence.
(ENCODE_ISO_CHARACTER): Don't check composition here.
(ENCODE_COMPOSITION_RULE) (ENCODE_COMPOSITION_START): New macros.
(ENCODE_COMPOSITION_NO_RULE_START)
(ENCODE_COMPOSITION_WITH_RULE_START): Deleted.
(ENCODE_COMPOSITION_END): Handle new composition sequence.
(ENCODE_COMPOSITION_FAKE_START): New macro.
(encode_coding_iso2022): Handle new composition sequence.
(ENCODE_SJIS_BIG5_CHARACTER): Delete superfluous `;' at the tail.
(encode_coding_sjis_big5): Ignore composition.
(setup_coding_system): Initialize new members of struct
coding_system.  Enable composition only when the coding system has
`composition' property t.
(coding_free_composition_data) (coding_adjust_composition_offset)
(coding_save_composition) (coding_restore_composition): New
functions.
(code_convert_region): Call coding_save_composition for encoding
and coding_allocate_composition_data for decoding.  Don't skip
ASCII characters if we handle composition on encoding.  Call
signal_after_change with Check_BORDER.
(code_convert_string): Call coding_save_composition for encoding
and coding_allocate_composition_data for decoding.  Don't skip
ASCII characters if we handle composition on encoding.
(code_convert_string1): Set Vlast_coding_system_used after calling
code_convert_string.
(code_convert_string_norecord): Disable composition.
(Fset_terminal_coding_system_internal): Likewise.
(Fset_safe_terminal_coding_system_internal): Likewise.
(Fset_keyboard_coding_system_internal): Likewise.
(init_coding_once): Set emacs_code_class[0x80] to
EMACS_invalid_code.
1999-12-15 00:06:45 +00:00
Kenichi Handa
279d9f7b8d (emacs_code_class_type): Delete the member
EMACS_leading_code_composition.
(COMPOSING_NO) (COMPOSING_WITH_RULE_HEAD) (COMPOSING_NO_RULE_HEAD)
(COMPOSING_WITH_RULE_TAIL) (COMPOSING_NO_RULE_TAIL)
(COMPOSING_WITH_RULE_RULE) (COMPOSING_HEAD_P)
(COMPOSING_WITH_RULE_P): Macros deleted.
(COMPOSITION_DATA_SIZE) (COMPOSITION_DATA_MAX_BUNCH_LENGTH): New
macros.
(struct composition_data): New structure.
(CODING_FINISH_INSUFFICIENT_CMP): New macro.
(struct coding_system): New members composition_rule_follows,
cmp_data, cmp_data_start, cmp_data_index.
(coding_save_composition) (coding_free_composition_data)
(coding_adjust_composition_offset): Extern them.
1999-12-15 00:05:57 +00:00
Kenichi Handa
e55d9cfd36 (internal_self_insert): Adjusted for the change of
CHAR_STRING.
1999-12-15 00:05:19 +00:00
Kenichi Handa
99529c2c73 In this entry, just `Modified' means that codes for a
composite character is deleted.
(Qcomposition) (leading_code_composition)
(charset_composition) (min_composite_char) (cmpchar_table)
(cmpchar_table_size) (n_cmpchars): Deleted.
(SPLIT_COMPOSITE_SEQ): Deleted.
(SPLIT_MULTIBYTE_SEQ): Modified.
(char_to_string): Renamed from non_ascii_char_to_string.
Modified.
(string_to_char): Renamed from string_to_non_ascii_char.
(split_string): Renamed from split_non_ascii_string.
(char_printable_p) (Fsplit_char)
(Ffind_charset_region) (Ffind_charset_string) (char_valid_p)
(char_bytes) (Fchar_width) (strwidth): Modified.
(find_charset_in_str): Argument CMPCHARP deleted.  Modified.
(Fstring): Adjusted for the change of CHAR_STRING.  Modified.
(hash_string) (CMPCHAR_HASH_TABLE_SIZE) (cmpchar_hash_table)
(CMPCHAR_HASH_SIZE) (CMPCHAR_HASH_USED) (CMPCHAR_HASH_CMPCHAR_ID)
(str_cmpchar_id) (cmpchar_component) (Fcmpcharp)
(Fcmpchar_component) (Fcmpchar_cmp_rule) (Fcmpchar_cmp_rule_p)
(Fcmpchar_cmp_count): Deleted.
(Fcompose_string): Implemented by Emacs Lisp in composite.el.
(init_charset_once): Modified.
(syms_of_charset): Modified.
1999-12-15 00:04:59 +00:00
Kenichi Handa
f49b37c9a3 In this entry, just `Modified' means that codes for a
composite character is deleted.
(LEADING_CODE_COMPOSITION) (CHARSET_COMPOSITION)
(charset_composition) (MIN_CHAR_COMPOSITION)
(MAX_CHAR_COMPOSITION) (GENERIC_COMPOSITION_CHAR)
(COMPOSITE_CHAR_P) (MAKE_COMPOSITE_CHAR) (COMPOSITE_CHAR_ID)
(PARSE_COMPOSITE_SEQ) (PARSE_CHARACTER_SEQ): Deleted.
(MAX_CHAR) (CHARSET_VALID_P) (CHARSET_DEFINED_P) (CHARSET_AT)
(FIRST_CHARSET_AT) (SAME_CHARSET_P) (MAKE_NON_ASCII_CHAR)
(PARSE_MULTIBYTE_SEQ) (SPLIT_NON_ASCII_CHAR) (CHAR_PRINTABLE_P):
Modified.
(SPLIT_STRING): Call split_string, not split_non_ascii_string.
(CHAR_STRING): Delete WORKBUF argument.  Call char_string, not
non_ascii_char_to_string.
(STRING_CHAR): Call string_to_char, not string_to_non_ascii_char.
(STRING_CHAR_AND_LENGTH): Likewise.
(FETCH_CHAR_ADVANCE): New macro.
(MAX_COMPONENT_COUNT) (struct cmpchar_info): Deleted.
(MAX_MULTIBYTE_LENGTH): New macro.
(MAX_LENGTH_OF_MULTI_BYTE_FORM): Deleted.
(find_charset_in_str): Argument adjusted.
(CHAR_LEN): Modified.
1999-12-15 00:04:14 +00:00
Kenichi Handa
6982083b65 (CCL_WRITE_CHAR): Adjusted for the change of CHAR_STRING.
(ccl_driver): Delete codes for a composite character.
1999-12-15 00:03:45 +00:00
Kenichi Handa
70414a3dac (word_boundary_p): Delete codes for a composite
character.
(Fmake_category_table): New function.
(syms_of_category): Defsubr it.
1999-12-15 00:03:16 +00:00