Kenichi Handa [Wed, 15 Dec 1999 00:17:03 +0000 (00:17 +0000)]
(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.
Kenichi Handa [Wed, 15 Dec 1999 00:16:30 +0000 (00:16 +0000)]
(QCtest, QCweakness, Qequal): Extern them.
(hash_put): Adjusted for the change of the definition.
(signal_after_change): Likewise.
(check_point_in_composition): Extern it.
Kenichi Handa [Wed, 15 Dec 1999 00:15:16 +0000 (00:15 +0000)]
(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.
Kenichi Handa [Wed, 15 Dec 1999 00:14:44 +0000 (00:14 +0000)]
(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.
Kenichi Handa [Wed, 15 Dec 1999 00:13:13 +0000 (00:13 +0000)]
(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.
Kenichi Handa [Wed, 15 Dec 1999 00:12:47 +0000 (00:12 +0000)]
(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.
Kenichi Handa [Wed, 15 Dec 1999 00:11:56 +0000 (00:11 +0000)]
(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.
Kenichi Handa [Wed, 15 Dec 1999 00:11:24 +0000 (00:11 +0000)]
(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.
Kenichi Handa [Wed, 15 Dec 1999 00:09:03 +0000 (00:09 +0000)]
(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.
Kenichi Handa [Wed, 15 Dec 1999 00:06:45 +0000 (00:06 +0000)]
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.
Kenichi Handa [Wed, 15 Dec 1999 00:02:33 +0000 (00:02 +0000)]
Include composite.h.
(casify_object): Use MAX_MULTIBYTE_LENGTH to allocate memory for a
multibyte character. Adjusted for the change of CHAR_STRING.
(casify_region): Likewise. Call update_compositions.
(custom-save-delete): Delete all occurrences,
leave point where the first occurrence was.
(custom-save-faces): Insert a newline at the end of the comment.
Avoid a double newline there.
If final closeparen is at bol, put a space before it.
(custom-save-variables): Likewise.
(custom-file): Doc fix.
Stefan Monnier [Fri, 10 Dec 1999 01:40:47 +0000 (01:40 +0000)]
(#includes): Allow compilation with only Xaw.
(xaw3d_arrow_scroll, xaw3d_pick_top): New variables.
(xt_action_hook): Replace XAW3D by XAW.
(xaw3d_jump_callback): Renamed to xaw_jump_callback.
(xaw_jump_callback): Renamed from xaw3d_jump_callback.
Determine epsilon dynamically and don't try to be too clever.
(xaw3d_scroll_callback): Renamed to xaw_scroll_callback.
(xaw_scroll_callback): Renamed from xaw3d_scroll_callback.
Handle both Xaw3d with arrow-scrollbars and with Xaw-style
scrollbar (using `ratio').
(x_create_toolkit_scroll_bar): Try to detect which style of Xaw3d
scrollbar we have so as to set it up more optimally and to fix
xaw3d_arrow_scroll and xaw3d_pick_top.
(x_set_toolkit_scroll_bar_thumb): Try to maintain 2 spare pixels at the
bottom of the Xaw3d scrollbar, to work around its tendency to refuse
shrinking the thumb. Also make sure that `XawScrollbarSetThumb'
is not ignored, using a major gross hack.
(x_initialize): Init default values for xaw3d_arrow_scroll and
xaw3d_pick_top.
Stefan Monnier [Thu, 9 Dec 1999 12:52:34 +0000 (12:52 +0000)]
(font-lock-multiline): New variable.
(font-lock-add-keywords): Rename `major-mode' into `mode'.
(font-lock-remove-keywords): Added a dummy `mode' argument for
potential future support.
(font-lock-fontify-anchored-keywords,
(font-lock-fontify-keywords-region): Only handle multiline strings
if necessary (avoids a pathological behavior in (f.ex) diff-mode).