ChangeLog 577 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
2002-05-21  Kenichi Handa  <handa@etl.go.jp>

	* coding.c (ONE_MORE_BYTE_NO_CHECK): Increment consumed_chars.
	(emacs_mule_char): New arg src.  Delete arg `composition'.  Caller
	changed.  Handle 2-byte and 3-byte charsets correctly.
	(DECODE_EMACS_MULE_COMPOSITION_RULE_20): Renamed from
	DECODE_EMACS_MULE_COMPOSITION_RULE.  Caller changed.
	(DECODE_EMACS_MULE_COMPOSITION_RULE_21): New macro.
	(DECODE_EMACS_MULE_21_COMPOSITION): Call
	DECODE_EMACS_MULE_COMPOSITION_RULE_21.  Produce correct annotation
	sequence.
	(decode_coding_emacs_mule): Handle composition correctly.  Rewind
	`src' and `consumed_chars' correctly before calling
	emacs_mule_char.
	(DECODE_COMPOSITION_START): Correctly handle the case of altchar
	and alt&rule composition.
	(decode_coding_iso_2022): Handle composition correctly.
	(init_coding_once): Setup emacs_mule_bytes for private charsets.
	
	* charset.c (Fdefine_charset_internal): Fix bug for the case of
	re-defining a charset.  If the charset has :emacs-mule-id, setup
	emacs_mule_bytes.
Kenichi Handa's avatar
Kenichi Handa committed
23 24
	(Fmake_char): If CODE1 is nil, use the minimum code of the
	charset.
25

Kenichi Handa's avatar
Kenichi Handa committed
26 27 28 29 30 31 32 33 34
2002-05-20  Kenichi Handa  <handa@etl.go.jp>

	* coding.c (encode_coding_iso_2022): If coding requires safe
	encoding, produce a character specified by
	CODING_INHIBIT_CHARACTER_SUBSTITUTION.
	(encode_coding_sjis): Likewise.
	(encode_coding_big5): Likewise.
	(encode_coding_charset): Likewise.

Dave Love's avatar
Dave Love committed
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
2002-05-17  Dave Love  <fx@gnu.org>

	* xterm.c (XSetIMValues): Declare.

	* process.c: Conditionally include sys/wait.h, pty.h.

	* print.c (print_object): Fix print format for 64-bit
	systems.

	* keyboard.c (modify_event_symbol): Fix print format for 64-bit
	systems.

	* buffer.c (emacs_strerror): Declare.
	(MMAP_ALLOCATED_P, mmap_enlarge, syms_of_buffer): Import changes
	from trunk.

	* fontset.c (Fclear_face_cache): Declare.
	(accumulate_font_info): Commented-out (unused).
	(face_for_char, Fset_fontset_font, Ffontset_info): Remove unused
	variables.

	* character.h (string_escape_byte8): Declare.

	* charset.c (load_charset_map, load_charset_map_from_file): Remove
	unused vars.
	(Fdefine_charset_internal, Fsplit_char, syms_of_charset)
	(Fmap_charset_chars): Doc fix.

	* coding.c (Vchar_coding_system_table, Qchar_coding_system):
	Removed.
	(Fset_coding_system_priority, Fset_coding_system_priority) 
	(Fdefine_coding_system_internal): Doc fix.

Dave Love's avatar
Dave Love committed
68 69 70 71
2002-05-16  Dave Love  <fx@gnu.org>

	* s/osf5-0.h (C_SWITCH_SYSTEM) [!__GNUC__]: Remove -nointrinsics.

Kenichi Handa's avatar
Kenichi Handa committed
72 73
2002-05-16  Kenichi Handa  <handa@etl.go.jp>

Kenichi Handa's avatar
Kenichi Handa committed
74 75 76
	* character.c (string_escape_byte8): Make multibyte string with
	correct size.

Kenichi Handa's avatar
Kenichi Handa committed
77 78
	* charset.c (Fmake_char): Delete unnecessary code.

79 80
2002-05-14  Kenichi Handa  <handa@etl.go.jp>

81 82 83
	* xfns.c (x_encode_text): Allocate coding.destination here, and
	call encode_coding_object with dst_object Qnil.

84 85 86
	* buffer.c (Fset_buffer_multibyte): Convert 8-bit bytes to
	multibyte form correctly.

87 88 89
	* fontset.c (fs_load_font): Check fontp->full_name (not fontname)
	against Vfont_encoding_alist.

90 91 92
	* coding.c (Fdecode_sjis_char): Fix typo (0x7F->0xFF).  Fix the
	handling of charset list.
	(encode_coding_iso_2022): Setup coding->safe_charsets in advance.
93 94
	(decode_coding_object): Move point to coding->dst_pos before
	calling post-read-conversion function.
Dave Love's avatar
Dave Love committed
95
	(encode_coding_object): Give correct arguments to
96
	pre-write-conversion.  Ignore the return value of
Kenichi Handa's avatar
Kenichi Handa committed
97
	pre-write-conversion function.  Pay attention to the case that
Dave Love's avatar
Dave Love committed
98
	pre-write-conversion changes the current buffer.  If dst_object is
99 100
	Qt, even if coding->src_bytes is zero, allocate at least one byte
	to coding->destination.
101 102 103

	* coding.h (JIS_TO_SJIS): Fix typo (j1->s1, j2->s2).

104
	* charset.c (Fmake_char): Make it more backward compatible.
105
	(Fmap_charset_chars): Fix docstring.
106

Dave Love's avatar
Dave Love committed
107 108 109 110 111 112
2002-05-13  Dave Love  <fx@gnu.org>

	* coding.c: Doc fixes.
	(Fdefine_coding_system_alias): Use names, not symbols, in
	coding-system-alist.

Kenichi Handa's avatar
Kenichi Handa committed
113 114 115
2002-05-13  Kenichi Handa  <handa@etl.go.jp>

	* fontset.c (free_realized_fontsets): Call Fclear_face_cache instead
Dave Love's avatar
Dave Love committed
116
	of calling free_realized_face.
Kenichi Handa's avatar
Kenichi Handa committed
117

118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
2002-05-10  Yong Lu <lyongu@asia-infonet.com>

	* charset.c (load_charset_map): Fix previous change.
	(read_hex): Don't treat SPC as a comment starter.
	(decode_char): If CODE_POINT_TO_INDEX retruns -1, always return
	-1.
	(Fdecode_char): Fix typo.

2002-05-10  Kenichi Handa  <handa@etl.go.jp>

	* charset.h (struct charset): New member `code_space_mask'.

	* coding.c (coding_set_source): Delete the local variable
	beg_byte.
	(encode_coding_charset): Delete the local variable charset.
	(Fdefine_coding_system_internal): Likewise.
	(Fdefine_coding_system_internal): Setup
	attrs[coding_attr_charset_valids] correctly.

	* charset.c (CODE_POINT_TO_INDEX): Utilize `code_space_mask'
	member to check if CODE is valid or not.
	(Fdefine_charset_internal): Initialize `code_space_mask' member.
	(encode_char): Before calling CODE_POINT_TO_INDEX, check if CODE
	is within the range of charset->min_code and carset->max_code.

Dave Love's avatar
Dave Love committed
143 144 145 146 147 148 149 150 151 152 153 154
2002-05-09  Dave Love  <fx@gnu.org>

	* syntax.h (syntax_temp) [!__GNUC__]: Declare.

	* dispextern.h (generate_ascii_font): Fix return type.

	* xfaces.c (generate_ascii_font): Fix arg declaration.

	* coding.c (coding_inherit_eol_type)
	(Fset_terminal_coding_system_internal)
	(Fset_safe_terminal_coding_system_internal): Fix arg declarations.

Kenichi Handa's avatar
Kenichi Handa committed
155 156 157 158 159
2002-05-08  Kenichi Handa  <handa@etl.go.jp>

	* coding.c (decode_coding_charset, encode_coding_charset): Handle
	multiple charsets correctly.

Kenichi Handa's avatar
Kenichi Handa committed
160 161
2002-05-07  Kenichi Handa  <handa@etl.go.jp>

Kenichi Handa's avatar
Kenichi Handa committed
162 163 164
	* search.c (boyer_moore): Fix handling of mulitbyte character
	translation.

Kenichi Handa's avatar
Kenichi Handa committed
165 166 167
	* xdisp.c (display_mode_element): When the variable `elt' is
	changed, update `this' and `lisp_string'.

168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212
2002-05-07  Kenichi Handa  <handa@etl.go.jp>

	* buffer.c (Fset_buffer_multibyte): Fix 8-bit char handling.

	* callproc.c (Fcall_process): Be sure to give the current buffer
	to decode_coding_c_string.  Update PT and PT_BYTE after the
	insertion.

	* charset.c (struct charset_map_entries): New struct.
	(load_charset_map): Renamed from parse_charset_map.  New args
	entries and n_entries.  Caller changed.
	(load_charset_map_from_file): Renamed from load_charset_map.
	Caller changed.  New arg control_flag.  Call load_charset_map at
	the tail.
	(load_charset_map_from_vector): New function.
	(Fdefine_charset_internal): Setup charset.compact_codes_p.
	(encode_char): If the charset is compact, change a character index
	to a code point.

	* coding.c (coding_alloc_by_making_gap): Check the case that the
	source and destination are the same correctly.
	(decode_coding_raw_text): Set coding->consumed_char and
	coding->consumed to 0.
	(produce_chars): If coding->chars_at_source is nonzero, update
	coding->consumed_char and coding->consumed before calling
	alloc_destination.
	(Fdefine_coding_system_alias): Register ALIAS in
	Vcoding_system_alist.
	(syms_of_coding): Define `no-convesion' coding system at the tail.

	* fileio.c (Finsert_file_contents): Set coding_system instead of
	val.  If the current buffer is multibyte, always call
	decode_coding_gap.

	* xfaces.c (try_font_list): Give higher priority to fontset's
	family than face's family.

2002-04-18  Kenichi Handa  <handa@etl.go.jp>

	* callproc.c (Fcall_process): Be sure to give the current buffer
	to decode_coding_c_string.

	* xfaces.c (try_font_list): Give a family specified in a fontset
	higher priority than a family specified in a face.

Kenichi Handa's avatar
Kenichi Handa committed
213 214 215 216 217 218 219
2002-04-09  Kenichi Handa  <handa@etl.go.jp>

	* fileio.c (Finsert_file_contents): Fix calculation of `inserted'.
	Fix arguments to insert_from_buffer.

	* xdisp.c (display_mode_element): Fix calculation of `bytepos'.

Kenichi Handa's avatar
Kenichi Handa committed
220 221 222 223 224
2002-03-11  Kenichi Handa  <handa@etl.go.jp>

	* coding.c (produce_chars): Set the variable `multibytep' correctly.
	(decode_coding_gap): Set coding->dst_multibyte correctly.

Kenichi Handa's avatar
Kenichi Handa committed
225 226 227 228 229 230 231 232 233 234 235 236
2002-03-07  Kenichi Handa  <handa@etl.go.jp>

	* coding.c (encode_coding_utf_8): Initialize produced_chars to 0.
	(decode_coding_utf_16): Fix converting high and low bytes to
	code-point.
	(encode_coding_utf_16): Substitute coding->default_char for
	non-Unicode characters.
	(decode_coding): Don't call record_insert here.
	(setup_coding_system): Initialize `surrogate' of
	coding->spec.utf_16 to 0.
	(EMIT_ONE_BYTE): Fix for multibyte case.

Kenichi Handa's avatar
Kenichi Handa committed
237 238
	* insdel.c (insert_from_gap): Call record_insert.

Kenichi Handa's avatar
Kenichi Handa committed
239 240 241 242 243 244 245 246 247 248 249 250 251 252 253
2002-03-04  Kenichi Handa  <handa@etl.go.jp>

	* casefiddle.c (casify_region): Fix multibyte case.

	* character.c (c_string_width): Add return type `int'.
	(char_string_with_unification): Arg ADVANCED deleted.

	* character.h (CHAR_VALID_P): Don't call CHARACTERP.
	(CHAR_STRING): Adjusted for the change of
	char_string_with_unification.
	(CHAR_STRING_ADVANCE): Make it do-while statement.

	* chartab.c (sub_char_table_set_range): Optimized for the case
	DEPTH == 3.  Add workaround code for a GCC optimization bug.

Kenichi Handa's avatar
Kenichi Handa committed
254 255
	* charset.c (parse_charset_map): Remove an unused variable.

Kenichi Handa's avatar
Kenichi Handa committed
256 257 258 259 260 261 262 263
	* coding.c: Delete unused variables.

	* fileio.c (Finsert_file_contents): Set coding_system to Qnil
	earlier.  If inserted is zero and the coding system doesn't
	require flushing, don't call decode_coding_gap.

	* syntax.h (SET_RAW_SYNTAX_ENTRY): Don't call make_number.

264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529
2002-03-01  Kenichi Handa  <handa@etl.go.jp>

	The following changes are for using Unicode as an internal
	character model, and use UTF-8 format for buffer/string
	representation.

	* .gdbinit (xchartable): Adjusted for the change of char table
	structure.
	(xsubchartable, xcoding, xcharset, xcurbuf): New commands.
	
	* Makefile.in (obj): Add character.o and chartab.o.
	(lisp, shortlisp): Remove utf-8.elc:
	(*.o): For many files, change dependency on charset.h to
	character.h, and add dependency on character.h.
	(character.o, chartab.o): New targets.
	
	* abbrev.c, bytecode.c, casefiddle.c, cmds.c, dispnew.c, doc.c,
	doprnt.c, dosfns.c, frame.c, marker.c, minibuf.c, msdos.c,
	w16select.c, w32bdf.c, w32console.c: Include "character.h" instead
	of "charset.h".
	
	* dired.c, filelock.c: Include "character.h".

	* alloc.c: Include "character.h" instead of "charset.h".
	(Fmake_char_table): Moved to chartab.c.
	(make_sub_char_table): Likewise.
	(syms_of_alloc): Remove defsubr for Smake_char_table.

	* buffer.c: Include "character.h" instead of "charset.h", don't
	include "coding.h".
	(Fset_buffer_multibyte): Adjuted for UTF-8.

	* buffer.h: EXFUN Fbuffer_live_p.

	* callproc.c: Include "character.h" instead of "charset.h".
	(Fcall_process): Big change for the new code-conversion APIs.

	* casetab.c: Include "character.h" instead of "charset.h".
	(set_canon, set_identity, shuffle): Adjusted for the new
	map_char_table spec.
	(init_casetab_once): Call CHAR_TABLE_SET instead of directly
	accessing the char table structure.

	* chartab.c: New file that implements char table.

	* category.c: Include "character.h".
	(copy_category_entry): New function.
	(copy_category_table): Call map_char_table and copy_category_entry.
	(Fmake_category_table): Initialize all top-vel slots.
	(char_category_set): New function.
	(modify_lower_category_set): Deleted.
	(Fmodify_category_entry): Call char_table_ref_and_range.

	* category.h (CATEGORY_SET): Just call char_category_set.

	* ccl.c: Include "character.h".
	(Qccl, Qcclp): New variables.
	(CCL_WRITE_CHAR): Alway treat the arg CH as a character even if
	it's less than 256.
	(CCL_WRITE_MULTIBYTE_CHAR): Deleted.
	(CCL_WRITE_STRING, CCL_READ_CHAR): Adjusted for the change of SRC
	and DST type.
	(ccl_driver): Types of arguments changed.  Code adjusted for that.
	(Fccl_execute, Fccl_execute_on_string): Adjusted for the change of
	ccl_driver.
	(syms_of_ccl): Intern and staticpro Qccl and Qcclp.

	* ccl.h (struct ccl_program): Members eol_type and multibyte
	deleted.  New members src_multibyte, dst_multibyte, consumed, and
	produced.
	(struct ccl_spec): Members decoder and encoder deleted.  New
	memeber ccl.
	(CODING_SPEC_CCL_PROGRAM): New macro.
	(ccl_driver): Prototype updated.
	(Qccl, Qcclp, Fccl_program_p): Extern them.
	(CHECK_CCL_PROGRAM): New macro.

	* character.c, character.h, chartab.c: New files. 

	* charset.c: Mostly re-written.  Character and multibyte sequence
	handling codes are moved to character.c.

	* charset.h: Mostly re-written.  Character and multibyte sequence
	handling codes are moved to character.h.

	* coding.c, coding.h: Mostly re-written.

	* composite.c: Include "character.h" instead of "charset.h".
	(CHAR_WIDTH): Moved to character.h.
	(HASH_KEY, HASH_VALUE): Deleted.

	* composite.h (enum composition_method): Order of enumeration
	symbols changed.

	* data.c: Include "character.h" instead of "charset.h".
	(Faref): Call CHAR_TABLE_REF for a char table.
	(Faset): Call CHAR_TABLE_SET for a char table.

	* dispextern.h (free_realized_face, check_face_attribytes,
	generate_ascii_font): Extern them.
	(free_realized_multibyte_face): Extern deleted.

	* disptab.h (DISP_CHAR_VECTOR): Adjusted for the change of char
	table structure.
	
	* editfns.c: Include "character.h" instead of "charset.h".
	(Fchar_to_string): Always call CHAR_STRING.

	* emacs.c (main): Call init_charset_once, init_charset,
	syms_of_chartab, and syms_of_character.

	* fileio.c: Include "character.h" instead of "charset.h".
	(Finsert_file_contents): Big change for the new code-conversion
	API.
	(choose_write_coding_system): Likewise.
	(Fwrite_region): Likewise.
	(build_annotations_2): Deleted.
	(e_write): Big change for the new code-conversion API.

	* fns.c: Include "character.h" instead of "charset.h".
	(copy_sub_char_table): Moved to chartab.c.
	(Fcopy_sequence): Call copy_char_table for a char table.
	(concat): Delete codes calling count_multibyte.
	(string_char_to_byte): Adjusted for the new multibyte form.
	(string_byte_to_char): Likewise.
	(internal_equal): Adjusted for the change of char table structure.
	(Fchar_table_subtype, Fchar_table_parent, Fset_char_table_parent,
	Fchar_table_extra_slot, Fset_char_table_extra_slot,
	Fchar_table_range, Fset_char_table_range, Fset_char_table_default,
	char_table_translate, optimize_sub_char_table,
	Foptimize_char_table, map_char_table, Fmap_char_table): Moved to
	chartab.c.
	(char_table_ref_and_index): Deleted.
	(HASH_KEY, HASH_VALUE): Moved to lisp.h.
	(Fmd5): Call preferred_coding_system instead of accessing
	Vcoding_category_list.  Adjusted for the new code-conversion API.
	(syms_of_fns): Defsubr for char table related functions moved to
	chartab.c.

	* fontset.c: Mostly re-written.

	* fontset.h (struct font_info): Type of the member encoding_type
	changed.
	(enum FONT_SPEC_INDEX): New enum.
	(fontset_font_pattern, fs_load_font): Prototype updated.
	(FS_LOAD_FONT): Adjusted for the change of fs_load_font.

	* indent.c: Include "character.h" instead of "charset.h".
	(MULTIBYTE_BYTES_WIDTH): Call CHAR_WIDTH instead of
	WIDTH_BY_CHAR_HEAD.

	* insdel.c: Include "character.h" instead of "charset.h".
	(copy_text): Don't refer to Vnonascii_translation_table.
	(insert_from_gap): New function.

	* keyboard.c: Include "character.h" instead of "charset.h".
	(command_loop_1): Never call direct_output_forward_char before
	a non-ASCII character.
	(read_char): If Vkeyboard_translate_table is a char table, always
	translated a character.

	* keymap.c: Include "character.h".
	(store_in_keymap): Handle the case that IDX is a cons.
	(Fdefine_key): Handle the case that KEY is a cons and the car part
	is also a cons (range).
	(push_key_description): Adjusted for the new character code.
	(describe_vector): Call describe_char_table for a char table.
	(describe_char_table): New function.

	* keymap.h (describe_char_table): Extern it.

	* lisp.h (enum pvec_type): New member PVEC_SUB_CHAR_TABLE.
	(XSUB_CHAR_TABLE, XSETSUB_CHAR_TABLE): New macros.
	(CHAR_TABLE_ORDINARY_SLOTS, CHAR_TABLE_SINGLE_BYTE_SLOTS,
	SUB_CHAR_TABLE_ORDINARY_SLOTS, SUB_CHAR_TABLE_STANDARD_SLOTS):
	Deleted.
	(CHAR_TABLE_REF, CHAR_TABLE_SET): Adjusted for the new char table
	structure.
	(CHAR_TABLE_TRANSLATE): Just call char_table_translate.
	(CHARTAB_SIZE_BITS_0, CHARTAB_SIZE_BITS_1, CHARTAB_SIZE_BITS_2,
	CHARTAB_SIZE_BITS_3): New macros.
	(chartab_size): Extern it.
	(struct Lisp_Char_Table): Re-designed.
	(struct Lisp_Sub_Char_Table): New structure.
	(HASH_KEY, HASH_VALUE): Moved from fns.c.
	(CHARACTERBITS): Defined as 22.
	(GLYPH_MASK_FACE, GLYPH_MASK_CHAR): Adjusted for the above change.
	(SUB_CHAR_TABLE_P): Check PVEC_CHAR_TABLE.
	(GC_SUB_CHAR_TABLE_P): New macro.
	(Fencode_coding_string, Fdecode_coding_string): EXFUN Updated.
	(code_convert_string_norecord): Extern deleted.
	(init_character_once, syms_of_character, init_charset,
	syms_of_composite, Qeq, Fmakehash, insert_from_gap): Extern them.

	* lread.c: Include "character.h".
	(read_multibyte): New arg NBYTES.
	(read_escape): The meaning of returned *BYTEREP changed.
	(to_multibyte): Deleted.
	(read1): Adjuted the handling of char table and string.

	* print.c: Include "character.h" instead of "charset.h".
	(print_string): Convert 8-bit raw bytes to octal form by
	string_escape_byte8.
	(print_object): Adjusted for the new multibyte form.  Print 8-bit
	raw bytes always in octal form.  Handle sub char table correctly.

	* process.c: Include "character.h" instead of "charset.h".
	(read_process_output): Adjusted for the new code-conversion API.
	(send_process): Likewise.

	* puresize.h (BASE_PURESIZE): Increased.

	* regex.c: Include "character.h" instead of "charset.h".
	(BYTE8_TO_CHAR, CHAR_BYTE8_P) [not emacs]: New dummy macros.
	(regex_compile): Accept a range whose starting and ending
	character have different leading bytes.
	(analyse_first): Adjusted for the above change.

	* search.c: Include "character.h" instead of "charset.h".
	(search_buffer, boyer_moore): Adjusted for the new multibyte form.
	(Freplace_match): Adjusted for the change of
	multibyte_char_to_unibyte.

	* syntax.c: Include "character.h" instead of "charset.h".
	(syntax_parent_lookup): Deleted.
	(Fmodify_syntax_entry): Accept a cons as CHAR.
	(skip_chars): Adjusted for the new multibyte form.
	(init_syntax_once): Call char_table_set_range instead of directly
	accessing the structure of a char table.

	* syntax.h (SET_RAW_SYNTAX_ENTRY): Call CHAR_TABLE_SET.
	(SYNTAX_ENTRY_FOLLOW_PARENT): Macro deleted.
	(SET_RAW_SYNTAX_ENTRY_RANGE): New macro.
	(SYNTAX_ENTRY_INT): Call CHAR_TABLE_REF.

	* term.c: Include "buffer.h" and "character.h".
	(encode_terminal_code): Adjusted for the new code-conversion API.
	(write_glyphs): Likewise.
	(produce_glyphs): Call CHAR_WIDTH instead of CHARSET_WIDTH.

	* w32term.c (x_new_font): Adjusted for the change of FS_LOAD_FONT.

	* xdisp.c: Include "character.h".
	(get_next_display_element): Adjusted for the new multibyte form.
	(disp_char_vector): Adjusted for the new char table structure.
	(decode_mode_spec_coding): Adjusted for the new structure of
	coding system.
	(decode_mode_spec): Adjusted for the new code-conversion API.

	* xfaces.c: Include "character.h" instead of "charset.h".
	(load_face_font): Adjusted for the change of choose_face_font and
	FS_LOAD_FONT.
	(generate_ascii_font): New function.
	(set_lface_from_font_name): Adjusted for the change of
	FS_LOAD_FONT.
	(set_font_frame_param): Adjusted for the change of
	choose_face_font.
	(free_realized_face): Make it public.
	(free_realized_faces_for_fontset): Renamed from
	free_realized_multibyte_face.  Free also faces realized for ASCII.
	(choose_face_font): Argments changed.  Adjusted for the change of
	fontset_font_pattern and FS_LOAD_FONT.

	* xfns.c: Include "character.h".
	(x_encode_text): Adjusted for the new code-conversion API.

Kenichi Handa's avatar
Kenichi Handa committed
530 531 532 533
	* xselect.c: Don't include "charset.h".
	(selection_data_to_lisp_data): Adjusted for the new code
	covnersion API.

Kenichi Handa's avatar
Kenichi Handa committed
534 535 536 537 538 539 540 541 542 543 544
	* xterm.c: Include "character.h".
	(x_encode_char): New argument CHARSET.  Caller changed.
	(x_get_char_face_and_encoding): Call ENCODE_CHAR instead of
	SPLIT_CHAR.
	(x_get_glyph_face_and_encoding): Likewise.
	(x_produce_glyphs): Don't check Vnonascii_translation_table Call
	CHAR_WIDTH instead of CHARSET_WIDTH.
	(XTread_socket): Adjusted for the new code-conversion API.
	(x_new_font): Adjusted for the change of FS_LOAD_FONT.
	(x_load_font): Adjusted for the change of struct font.

Kim F. Storm's avatar
Kim F. Storm committed
545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570
2002-02-26  Kim F. Storm  <storm@cua.dk>

	The following changes add a new Vminibuf_selected_window variable
	which is similar to Vminibuf_scroll_window, but which is only set
	on entry to the minibuffer (from a non-minibuffer window):
	
	* window.c: (Vminibuf_selected_window): New variable.
	(struct save_window_data): New member minibuf_selected_window.
	(Fset_window_configuration): Restore Vminibuf_selected_window.
	(Fcurrent_window_configuration): Save Vminibuf_selected_window.
	Set minibuf_scroll_window member to nil if minibuf_level is 0.
	(compare_window_configurations): Compare minibuf_selected_window.

	* window.h: (Vminibuf_selected_window): Declare extern.

	* minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
	entry to minibuffer or on entry from a non-minibuffer window.

	* dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
	Vminibuf_selected_window instead of Vminibuf_scroll_window.

	* xdisp.c (init_iterator): Compare with Vminibuf_selected_window
	instead of Vminibuf_scroll_window when deciding in which window
	the region should be highlighted.  Consequently, the region remains
	highlighteded even when a completion buffer is also displayed.

Eli Zaretskii's avatar
Eli Zaretskii committed
571 572
2002-02-26  Eli Zaretskii  <eliz@is.elta.co.il>

573 574 575
	* fileio.c (Fsubstitute_in_file_name): Fix the change from
	2002-02-08.

Eli Zaretskii's avatar
Eli Zaretskii committed
576 577 578 579
	* xselect.c (Qcompound_text_with_extensions): Renamed from
	Qcompound_text_no_extensions.
	(lisp_data_to_selection_data, syms_of_xselect): Use the new name.

580 581 582 583
2002-02-26  Juanma Barranquero  <lektu@terra.es>

	* w32proc.c (syms_of_ntproc): Doc fix.

Kenichi Handa's avatar
Kenichi Handa committed
584
2002-02-24  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
585 586 587

	* intervals.h: Include "dispextern.h" unconditionally.

588 589 590 591
2002-02-24  Jason Rumney  <jasonr@gnu.org>

	* Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
	and disp-table.elc.
Jason Rumney's avatar
Jason Rumney committed
592
	(lisp): Add emacs-lisp/backquote.elc.
593

594 595 596 597 598 599 600
2002-02-24  Kim F. Storm  <storm@cua.dk>

	* keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
	The validation of the event type was too strict as it didn't
	allow string events; buffer names are used in bindings for
	menu-bar-select-buffer (see `menu-bar-update-buffers').

Kim F. Storm's avatar
Kim F. Storm committed
601
2002-02-23  Kim F. Storm  <storm@cua.dk>
602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626

	The following changes rework my patch of 2002-02-06 which 
	added command remapping by entering the commands directly into
	the keymaps.  Now, command remapping uses an explicit `remap'
	prefix in the keymaps, i.e. [remap COMMAND].
	
	* keymap.c (Qremap, remap_command_vector): New variables.
	(is_command_symbol): Removed function.
	(Fdefine_key): No longer accept a symbol for KEY.  Added
	validation of [remap COMMAND] argument for KEY.  The DEF is no
	longer required to be a symbol when remapping a command.
	(Fremap_command): New function to remap command through keymaps.
	(Flookup_key): Perform command remapping initiated by
	Fremap_command directly for speed.
	(Fkey_binding): Use Fremap_command for command remapping.
	(where_is_internal): Handle new command remapping representation.
	(syms_of_keymap): Intern Qremap, initialize remap_command_vector,
	staticpro them.  Defsubr Fremap_command.

	* keymap.h (Fremap_command): Declare extern.
	(is_command_symbol): Remove extern.
	
	* keyboard.c (command_loop_1): Use Fremap_command for command
	remapping; now try command remapping for all symbols.

627 628 629 630
2002-02-23  Eli Zaretskii  <eliz@is.elta.co.il>

	* coding.h (run_pre_post_conversion_on_str): Add prototype.

Jason Rumney's avatar
Jason Rumney committed
631 632 633 634 635 636 637 638 639
2002-02-23  Jason Rumney  <jasonr@gnu.org>

	* w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
	on the string before encoding it.
	(Fw32_get_clipboard_data): Run post-read-conversion on the string
	after decoding it.

	* w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.

Kenichi Handa's avatar
Kenichi Handa committed
640
2002-02-23  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
641 642 643 644 645 646

	* w32term.c (enter_timestamp): Remove unused static variable to
	prevent warning.

	* xterm.c (enter_timestamp): Put in #if 0 to prevent warning.

647 648 649 650 651 652
2002-02-23  Eli Zaretskii  <eliz@is.elta.co.il>

	* w16select.c (Fw16_get_clipboard_data): Fix last change.

	* xselect.c (selection_data_to_lisp_data): Fix last change.

653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671
2002-02-22  Jason Rumney  <jasonr@gnu.org>

	* w32term.h (struct w32_output): New member menu_command_in_progress.

	* w32menu.c (menubar_selection_callback): Free the menu and
	clear the menu_command_in_progress flag.

	* w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
	(menu_free_timer): New variable.
	(MENU_FREE_ID, MENU_FREE_DELAY): New constants.
	(w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
	<WM_EXITMENULOOP>: Delay before freeing menu.  Do nothing if a
	menu command is in progress.
	<WM_COMMAND>: Set the menu_command_in_progress flag.  Kill
	any menu_free_timer that is running.

	* w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
	Call ExtTextOutA rather than ExtTextOut.

Eli Zaretskii's avatar
Eli Zaretskii committed
672 673 674 675
2002-02-22  Eli Zaretskii  <eliz@gnu.org>

	* puresize.h (BASE_PURESIZE): Increase to 755000.

676 677 678 679 680 681 682
2002-02-22  Eli Zaretskii  <eliz@is.elta.co.il>

	* w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
	on the string before encoding it.
	(Fw16_get_clipboard_data): Run post-read-conversion on the string
	after decoding it.

683 684 685 686
2002-02-22  Eli Zaretskii  <eliz@is.elta.co.il>

	Support for ICCCM  Extended Segments in X selections:

Eli Zaretskii's avatar
Eli Zaretskii committed
687
	* xselect.c <Qcompound_text_no_extensions>: New variable.
688 689 690 691
	(syms_of_xselect): Intern and staticpro it.
	(selection_data_to_lisp_data): Run post-read-conversion on decoded
	selection text.
	(lisp_data_to_selection_data): If next-selection-coding-system is
Eli Zaretskii's avatar
Eli Zaretskii committed
692
	compound-text-no-extensions, set the type of selection to be
693 694 695 696 697 698 699 700
	compound-text.

	* xterm.h (x_encode_text): Update prototype.

	* xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
	callers changed.  If SELECTIONP is non-zero, run the
	pre-write-conversion function before encoding the selection text.

701 702 703
2002-02-21  Kim F. Storm  <storm@cua.dk>

	* frame.c (syms_of_frame): Change mouse-highlight default to t.
704 705 706 707

	* keyboard.c (kbd_buffer_get_event) [WINDOWSNT]: Corrected
	composing of language-change event.

708 709 710 711 712 713 714 715
2002-02-20  Kim F. Storm  <storm@cua.dk>

	* keyboard.c (menu_bar_items): Don't include keymap or local-map
	bindings at PT when building menu (the menu is not updated often
	enough for this to work reliable).
	(tool_bar_items): Likewise.
	(current_active_maps): Removed unused (and buggy) function.

Kenichi Handa's avatar
Kenichi Handa committed
716
2002-02-20  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
717 718 719

	* xfns.c (gif_load): Use correct width and height for GIF images.

Eli Zaretskii's avatar
Eli Zaretskii committed
720 721 722 723 724
2002-02-19  Eli Zaretskii  <eliz@is.elta.co.il>

	* floatfns.c (Fatan): Accept an optional second arg and call
	atan2 if passed 2 args.

Jason Rumney's avatar
Jason Rumney committed
725 726 727 728
2002-02-18  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (glyph_rect): Determine the row and glyph more precisely.

Jason Rumney's avatar
Jason Rumney committed
729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760
2002-02-17  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (x_autoselect_window_p): New variable.
	(syms_of_w32term): DEFVAR_BOOL and initialize it.
	(note_mouse_movement): Use it.

	* w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.

	* w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.

	* w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
	New variables.
	(syms_of_w32fns): Intern and staticpro them.
	(x_frame_parms) <"fullscreen">: New parameter.
	(x_fullscreen_move, x_set_fullscreen): New functions.
	(x_set_frame_parameters): Support Qfullscreen.
	(x_real_positions): Save x/y_pixels_diff frame params. 
	(x_figure_window_size): Support full-screen frames.
	(Fx_create_frame): Default the fullscreen parameter.

	* w32term.c (x_check_fullscreen, x_check_fullscreen_move) 
	(x_fullscreen_adjust): New functions.
	(w32_read_socket) <WM_WINDOWPOSCHANGED>:  Don't	resize to
	fullscreen.  Call x_check_fullscreen_move, and set the
 	want_fullscreen member of output_data.w32
	<WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.

	* w32term.h: New enum for FULLSCREEN_* constants.
	(struct w32_output): New members want_fullscreen, x_pixels_diff,
	y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
	(x-fullscreen-adjust): New prototype.

761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794
2002-02-17  Kim F. Storm  <storm@cua.dk>

	* frame.c: (Vmouse_highlight): New variable.
	(syms_of_frame): DEFVAR_LISP it.

	* frame.h: (Vmouse_highlight): Declare extern.

	* xterm.h (struct x_display_info): Add mouse_face_hidden.

	* xterm.c (disable_mouse_highlight): Removed variable.
	(note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
	(show_mouse_face): Don't show highlight if mouse_face_hidden is	set.
	(XTread_socket): Turn mouse_face_hidden off after mouse movement,
	and on after keyboard input.
	(x_term_init): Initialize mouse_face_hidden.

	* msdos.h (struct display_info): Add mouse_face_hidden.

	* msdos.c (disable_mouse_highlight): Removed variable.
	(show_mouse_face): Don't show highlight if mouse_face_hidden is	set.
	(IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
	(internal_terminal_init): Initialize mouse_face_hidden.
	(dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
	and on after keyboard input.

	* w32term.h (struct w32_display_info): Add mouse_face_hidden.

	* w32term.c (disable_mouse_highlight): Removed variable.
	(note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
	(show_mouse_face): Don't show highlight if mouse_face_hidden is	set.
	(w32_read_socket): Turn mouse_face_hidden off after mouse movement,
	and on after keyboard input.
	(w32_initialize_display_info): Initialize mouse_face_hidden.

Eli Zaretskii's avatar
Eli Zaretskii committed
795 796
2002-02-16  Eli Zaretskii  <eliz@is.elta.co.il>

797 798 799 800
	* msdos.c (last_mouse_window): New variable.
	(dos_rawgetc): Fix last change--if the mouse is in the same window
	as recorded in last_mouse_window, don't select this window.

Eli Zaretskii's avatar
Eli Zaretskii committed
801 802 803
	* Makefile.in (lisp, shortlisp): Use cus-start.elc, not
	cus-start.el.

804 805 806 807 808 809
	* msdos.c (x_autoselect_window_p): New variable.
	(syms_of_msdos): Defvar it.
	(dos_rawgetc): If x_autoselect_window_p is set, select the window
	in which the last mouse movement occured, unless it is already
	selected.

Eli Zaretskii's avatar
Eli Zaretskii committed
810 811 812 813 814 815
	* xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step): New
	variables.
	(syms_of_xdisp): DEVFAR them.
	(hscroll_window_tree): Use automatic_hscroll_margin and
	Vautomatic_hscroll_step to compute the amount of window scrolling.

Kenichi Handa's avatar
Kenichi Handa committed
816
2002-02-16  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
Pavel Janík's avatar
Pavel Janík committed
817

Pavel Janík's avatar
Pavel Janík committed
818 819 820
	* xterm.c (x-autoselect-window): New variable.
	(note_mouse_movement): Use it.

Pavel Janík's avatar
Pavel Janík committed
821 822
	* keyboard.c: Do not include "systime.h" twice.

Andreas Schwab's avatar
Andreas Schwab committed
823 824
2002-02-15  Andreas Schwab  <schwab@suse.de>

825 826
	* puresize.h (BASE_PURESIZE): Increase to 9/5.

Andreas Schwab's avatar
Andreas Schwab committed
827 828
	* alloc.c (NSTATICS): Increase to 1280.

829 830
2002-02-15  Kai Gro,A_(Bjohann  <Kai.Grossjohann@CS.Uni-Dortmund.DE>

Kai Großjohann's avatar
Kai Großjohann committed
831 832
	* alloc.c (NSTATICS): Bump to 1026.

833 834 835 836 837 838 839
	* xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
	(Vx_super_keysym): New variables.
	(syms_of_xterm): DEFVAR_LISP them.
	(x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
	variables to determine which keys to use for the various
	modifiers.

Kim F. Storm's avatar
Kim F. Storm committed
840
2002-02-13  Kim F. Storm  <storm@cua.dk>
841 842 843 844 845 846 847 848 849 850

	* window.c: (Vmode_line_in_non_selected_windows): Removed.
	(mode_line_in_non_selected_windows): New variable.
	(syms_of_window): DEFVAR_BOOL it.

	* dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Use
	mode_line_in_non_selected_windows.
	(mode_line_in_non_selected_windows): Declare extern.
	(Vmode_line_in_non_selected_windows): Removed extern.

851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870
2002-02-13  Richard M. Stallman  <rms@gnu.org>

	* keyboard.c (Fthis_command_keys, Fthis_command_keys_vector) 
	(Fthis_single_command_keys, Fthis_single_command_raw_keys) 
	(Fclear_this_command_keys): Doc fixes.

	* xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face) 
	(update_face_from_frame_parameter): Increment face_change_count
	and windows_or_buffers_changed to force redisplay using changed faces.

	* xdisp.c (QCpropertize): New variable.
	(mode_line_proptrans_alist): New variable.
	(display_mode_element): New arg PROPS; all calls changed.
	Implement this, for strings.
	Handle literal output of strings by sharing the
	main-line code for strings, using local var `literal'.
	Handle :propertize feature.
	(syms_of_xdisp): Initialze and staticpro QCpropertize and 
	mode_line_proptrans_alist.
	
Kim F. Storm's avatar
Kim F. Storm committed
871
2002-02-11  Kim F. Storm  <storm@cua.dk>
872 873 874 875 876 877 878 879 880 881 882

	* window.c: (Vmode_line_in_non_selected_windows): New variable.
	(syms_of_window): DEFVAR_LISP it.

	* dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
	(CURRENT_MODE_LINE_FACE_ID): Use it.
	(Vmode_line_in_non_selected_windows): Declare extern.

	* xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
	to get mode line face.

Eli Zaretskii's avatar
Eli Zaretskii committed
883 884 885 886 887
2002-02-11  Eli Zaretskii  <eliz@is.elta.co.il>

	* msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
	variables; cus-start.el doesn't need them anymore.

888 889 890 891 892 893
2002-02-09  Kim F. Storm  <storm@cua.dk>

	* insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
	reduction.  This fixes a display problem where stray newlines were
	inserted in the window (corrected by C-l).  Clarified code (IMHO).

Eli Zaretskii's avatar
Eli Zaretskii committed
894 895 896 897 898 899
2002-02-09  Eli Zaretskii  <eliz@is.elta.co.il>

	* dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.

	* xdisp.c (display_mode_lines): Fix last change.

Jason Rumney's avatar
Jason Rumney committed
900 901 902 903
2002-02-09  Jason Rumney  <jasonr@gnu.org>

	* w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
	match each other.
Jason Rumney's avatar
Jason Rumney committed
904 905
	(w32_load_system_font): Prevent Cleartype fonts from loading.
	(Fx_show_tip): Ensure tip frames are above other topmost windows.
Jason Rumney's avatar
Jason Rumney committed
906

907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922
2002-02-09  Kim F. Storm  <storm@cua.dk>

	* dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
	(CURRENT_MODE_LINE_HEIGHT): Use it.
	(enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.

	* xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
	(pos_visible_p, handle_face_prop): Likewise.
	(display_mode_lines): Likewise, but for the real selected window.
	(init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.

	* xfaces.c (Qmode_line_inactive): New face variable for mode-line
	in non-selected windows.
	(realize_basic_faces): Realize it.
	(syms_of_term): Intern and staticpro it.

Kim F. Storm's avatar
Kim F. Storm committed
923 924 925 926 927
2002-02-08  Kim F. Storm  <storm@cua.dk>

	* alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK): 
	Changed mail addresses to emacs-devel@gnu.org.

Eli Zaretskii's avatar
Eli Zaretskii committed
928 929
2002-02-08  Eli Zaretskii  <eliz@is.elta.co.il>

Eli Zaretskii's avatar
Eli Zaretskii committed
930 931 932 933
	* fileio.c (Fsubstitute_in_file_name): If the file name includes
	~user, and there's no such user, don't discard everything before
	~user.

Eli Zaretskii's avatar
Eli Zaretskii committed
934 935
	* floatfns.c (Fround): Doc fix.

Kenichi Handa's avatar
Kenichi Handa committed
936
2002-02-08  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
937 938 939

	* sysdep.c (init_system_name): Put unused variable `p' in #if 0.

Stefan Monnier's avatar
Stefan Monnier committed
940 941
2002-02-07  Stefan Monnier  <monnier@cs.yale.edu>

942
	* lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
Stefan Monnier's avatar
Stefan Monnier committed
943

Kim F. Storm's avatar
Kim F. Storm committed
944 945 946 947 948
2002-02-07  Kim F. Storm  <storm@cua.dk>

	* keymap.c (where_is_internal): Only check whether definition is
	remapped if it fulfills is_command_symbol.

949 950 951 952 953 954
2002-02-07  Andreas Schwab  <schwab@suse.de>

	* s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.

	* alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.

Kim F. Storm's avatar
Kim F. Storm committed
955 956 957 958 959 960
2002-02-06  Kim F. Storm  <storm@cua.dk>

	* keymap.c (Fdefine_key): Allow symbol as KEY argument for
	defining command remapping.  Doc updated.
	(Flookup_key): Remap command through keymap if KEY is a symbol.
	(is_command_symbol): New function.
Stefan Monnier's avatar
Stefan Monnier committed
961 962
	(Fkey_binding): Use it.  New optional argument NO-REMAP.
	Doc updated.  Callers changed.  Perform command remapping via
Kim F. Storm's avatar
Kim F. Storm committed
963 964 965 966
	recursive call unless that arg is non-nil.
	(where_is_internal): New argument no_remap.  Callers changed.
	Call recursively to find original key bindings for a remapped
	comand unless that arg is non-nil.
Stefan Monnier's avatar
Stefan Monnier committed
967 968
	(Fwhere_is_internal): New optional argument NO-REMAP.
	Doc updated.  Callers changed.  Pass arg to where_is_internal.
Kim F. Storm's avatar
Kim F. Storm committed
969 970 971 972 973 974 975 976

	* keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
	(is_command_symbol): Added prototype.

	* keyboard.c (Vthis_original_command): New variable.
	(syms_of_keyboard): DEFVAR_LISP it.
	(command_loop_1): Set it, and perform command remapping.

Kenichi Handa's avatar
Kenichi Handa committed
977
2002-02-06  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
Pavel Janík's avatar
Pavel Janík committed
978 979 980 981

	* keyboard.c (recursive_edit_1): Call cancel_hourglass
	unconditionally.

Jason Rumney's avatar
Jason Rumney committed
982 983 984 985
2002-02-06  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.

Eli Zaretskii's avatar
Eli Zaretskii committed
986 987 988 989
2002-02-06  Eli Zaretskii  <eliz@is.elta.co.il>

	* charset.c (get_charset_id): Use if-else instead of ?:.

990 991 992 993
2002-02-06  Richard M. Stallman  <rms@gnu.org>

	* filelock.c (S_ISLNK): Define if not defined.

994 995 996 997 998 999 1000
2002-02-03  Richard M. Stallman  <rms@gnu.org>

	* fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.

	* lread.c (read1): Redesign strategy for force_multibyte and
	force_singlebyte.  Now is_multibyte records whether read_buffer
	is multibyte.  Encountering any multibyte character makes it so.
Stefan Monnier's avatar
Stefan Monnier committed
1001

1002 1003 1004 1005 1006
2002-02-02  Stefan Monnier  <monnier@cs.yale.edu>

	* term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
	with the same sequence, map that sequence to f10 rather than f0.

1007 1008 1009 1010 1011
2002-02-03  Andreas Schwab  <schwab@suse.de>

	* s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
	latter never being defined on GNU/Linux.

Eli Zaretskii's avatar
Eli Zaretskii committed
1012 1013 1014 1015 1016 1017
2002-02-02  Eli Zaretskii  <eliz@is.elta.co.il>

	* xfaces.c (realize_default_face): Don't set the weight and slant
	of the default face to Qnormal, unless these attributes are
	unspecified.

Kenichi Handa's avatar
Kenichi Handa committed
1018
2002-02-02  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
1019

1020 1021
	* keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
	Call cancel_hourglass unconditionally.
1022 1023 1024 1025

	* eval.c (Fsignal): Remove duplicated declaration of
	the variable `display_hourglass_p'.

1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039
2002-01-31  Richard M. Stallman  <rms@gnu.org>

	* editfns.c (region_limit): Nicer error message.

	* coding.c (decode_composition_emacs_mule):
	Give up if NCOMPONENT gets too large to index `component'.

	* callint.c (check_mark): New arg to specify clearer error message.
	Callers changed.

2002-01-27  Richard M. Stallman  <rms@gnu.org>

	* minibuf.c (Fcompleting_read): Doc fix.

Kenichi Handa's avatar
Kenichi Handa committed
1040
2002-01-27  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
Pavel Janík's avatar
Pavel Janík committed
1041 1042

	* minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
1043 1044
	(Fread_variable, Fread_buffer, minibuffer-completion-confirm):
	Fix doc-strings.
Pavel Janík's avatar
Pavel Janík committed
1045

1046 1047 1048 1049 1050 1051 1052
2002-01-26  Richard M. Stallman  <rms@gnu.org>

	* buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.

	* xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
	and scroll_up_aggressively.

Kenichi Handa's avatar
Kenichi Handa committed
1053
2002-01-26  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
Pavel Janík's avatar
Pavel Janík committed
1054 1055 1056

	* keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.

1057 1058 1059 1060 1061 1062
2002-01-25  Stefan Monnier  <monnier@cs.yale.edu>

	* textprop.c (Fnext_property_change, Fnext_single_property_change)
	(Fprevious_property_change, Fprevious_single_property_change):
	Stay within the narrowed-buffer boundaries.

Eli Zaretskii's avatar
Eli Zaretskii committed
1063 1064 1065 1066
2002-01-25  Eli Zaretskii  <eliz@is.elta.co.il>

	* term.c (Ftty_display_color_cells): New function.
	(syms_of_term): Defsubr it.
Eli Zaretskii's avatar
Eli Zaretskii committed
1067 1068
	(Ftty_display_color_cells, Ftty_display_color_p): Change the
	argument name to DISPLAY.  Doc fix.
Eli Zaretskii's avatar
Eli Zaretskii committed
1069 1070 1071 1072

	* dispextern.h: Add prototype for set_tty_color_mode and
	tty_setup_colors.

1073 1074 1075 1076 1077 1078 1079 1080 1081
2002-01-24  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
	If region left to draw is not what was expected, mark the frame as
	garbaged.

	* w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
	Combine the regions returned by BeginPaint and GetUpdateRect.

1082 1083 1084 1085 1086 1087 1088 1089 1090 1091
2002-01-23  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (x_update_window_begin): Only hide caret if
	w32_use_visible_system_caret is set.
	(x_update_window_end): Only show caret if
	w32_use_visible_system_caret is set.
	(syms_of_w32term): Handle SystemParametersInfo call failing.

	* w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.

1092 1093 1094 1095 1096 1097 1098
2002-01-22  Richard M. Stallman  <rms@gnu.org>

	* unexelf.c (unexec): Define n so as to cause compilation error
	for the code where people have often written n instead of nn.

	* .gdbinit (hookpost-run): Defined.

1099 1100 1101 1102
2002-01-22  Jan D.  <Jan.Djarv@mbox200.swipnet.se>

	* xfns.c (x_set_frame_parameters): Typo in previous fix corrected.

1103 1104 1105 1106 1107
2002-01-21  Jan D.  <Jan.Djarv@mbox200.swipnet.se>

	* xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
	if fullscreen is being set.

Kenichi Handa's avatar
Kenichi Handa committed
1108
2002-01-21  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
Pavel Janík's avatar
Pavel Janík committed
1109 1110 1111 1112 1113

	* minibuf.c (Fminibuffer_contents)
	(Fminibuffer_contents_no_properties, Fread_from_minibuffer)
	(Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.

1114 1115 1116 1117
2002-01-21  Richard M. Stallman  <rms@gnu.org>

	* window.c (check_frame_size): Fix minimum height calculation.

1118 1119 1120 1121 1122 1123
2002-01-20  Ken Raeburn  <raeburn@gnu.org>

	* dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
	height before comparison.
	(WINDOW_WANTS_HEADER_LINE_P): Likewise.

Jason Rumney's avatar
Jason Rumney committed
1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140
2002-01-20  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (w32_system_caret_width): Remove.
	(w32_use_visible_system_caret): New user flag.
	(syms_of_w32term): DEFVAR_BOOL it.  Initialize based on whether
	Windows reports a screen reader running.
	(x_update_window_begin): Hide the system caret.
	(x_update_window_end): Show the system caret.
	(x_display_and_set_cursor): Don't draw a cursor when
	w32_use_visible_system_caret is set.  Do not adjust width.

	* w32fns.c (w32_visible_system_caret_hwnd): New static variable.
	(w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
	<WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
	the user requests it.  Use system default width when creating.
	<WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.

1141 1142
	* w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
	New window messages.
Jason Rumney's avatar
Jason Rumney committed
1143

1144 1145 1146 1147
2002-01-20  Richard M. Stallman  <rms@gnu.org>

	* window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.

Kenichi Handa's avatar
Kenichi Handa committed
1148
2002-01-20  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
Pavel Janík's avatar
Pavel Janík committed
1149 1150 1151

	* doprnt.c (doprnt1): Fix typos in error call.

1152 1153 1154 1155
2002-01-20  Eli Zaretskii  <eliz@is.elta.co.il>

	* unexelf.c (unexec) [__sgi]: Support the .got sections.

Jason Rumney's avatar
Jason Rumney committed
1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173
2002-01-20  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (w32_native_per_char_metric): Don't trust the metrics
	that Windows returns.  If a double check fails, try to guess how
	ExtTextOut is going to act.

	* w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
	in place of stricmp.
	(w32_list_synthesized_fonts): Removed.
	(w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
	(struct enumfont_t): New element; list.
	(enum_font_cb2): List all style and charset variations of a font.
	(Fw32_select_font): New optional argument; include_proportional.
	Exclude vertical fonts.  Exclude proportional fonts unless
	include_proportional is non-nil.
	(w32_enable_synthesized_fonts): Change to a boolean.
	(Fw32_send_sys_command): Doc fix.

Kenichi Handa's avatar
Kenichi Handa committed
1174
2002-01-19  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
Pavel Janík's avatar
Pavel Janík committed
1175 1176 1177 1178

	* dispnew.c (update_frame): Move the variable `tem' to the block
	where it is used.

1179 1180 1181 1182 1183
2002-01-19  Jason Rumney  <jasonr@gnu.org>

	* w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
	call to face-set-after-frame-default.

1184 1185
2002-01-18  Richard M. Stallman  <rms@gnu.org>

1186
	* dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
1187 1188
	(WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.

1189 1190 1191 1192 1193
2002-01-17  Richard M. Stallman  <rms@gnu.org>

	* window.c (enlarge_window): When exceeding size of parent,
	directly delete all the siblings instead of trying to resize it.

Kenichi Handa's avatar
Kenichi Handa committed
1194
2002-01-17  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
1195 1196 1197

	* term.c (set_tty_color_mode): Remove unused variable `tem'.

1198 1199
2002-01-16  Henrik Enberg  <henrik@enberg.org>

1200
	* lread.c (init_lread): Move the installed-lisp dirs later in the path.
1201

Kim F. Storm's avatar
Kim F. Storm committed
1202 1203 1204 1205 1206 1207
2002-01-16  Kim F. Storm  <storm@cua.dk>

	* xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
	is invisible.  This can happen if cursor is on top line of a
	window, and we switch to a buffer with a header line.

1208
	* w32term.c (x_erase_phys_cursor): Ditto.
1209

Kenichi Handa's avatar
Kenichi Handa committed
1210
2002-01-16  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
1211 1212 1213 1214 1215 1216

	* xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
	`dont_resize' only when used.

	* xdisp.c: Remove forgotten extern declaration of `Qimage'.

1217 1218 1219
2002-01-15  Eli Zaretskii  <eliz@is.elta.co.il>

	* xdisp.c (display_mode_element): When computing charpos, depend
Eli Zaretskii's avatar
Eli Zaretskii committed
1220
	on multibyteness of elt, not the text in field.
1221

Kenichi Handa's avatar
Kenichi Handa committed
1222
2002-01-15  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
1223 1224 1225 1226

	* buffer.c (Fkill_all_local_variables): Increment
	`update_mode_lines' only once.

Kenichi Handa's avatar
Kenichi Handa committed
1227
2002-01-14  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
1228

Pavel Janík's avatar
Pavel Janík committed
1229 1230 1231
	* lisp.h (adjust_after_replace_noundo)
	(Fupdate_coding_systems_internal): Add prototypes.

1232
	* sound.c (Fplay_sound): Initialize header_size also for :data case.
1233

Eli Zaretskii's avatar
Eli Zaretskii committed
1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254
2002-01-14  Eli Zaretskii  <eliz@is.elta.co.il>

	Support for the --color command-line argument and tty-color-mode
	frame parameter:

	* term.c (tty_default_color_capabilities, tty_setup_colors)
	(set_tty_color_mode): New functions.
	(term_init): Call tty_default_color_capabilities.
	(Qtty_color_mode_alist): New variable.
	(syms_of_term): Intern and staticpro it.

	* frame.c (store_frame_param): Call set_tty_color_mode for termcap
	frames.
	(do_switch_frame): For termcap frames, switch the tty
	color mode as specified by the frame's parameters.
	(Qtty_color_mode): New variable.
	(syms_of_frame): Intern and staticpro it.

	* emacs.c (USAGE2): Add the --color option.
	(standard_args): Ditto.

Eli Zaretskii's avatar
Eli Zaretskii committed
1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267
2002-01-13  Jan Djarv  <Jan.Djarv@mbox200.swipnet.se>

	* xterm.h (struct x_output): New members want_fullscreen,
	x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
	y_pixels_outer_diff.
	New enum for FULLSCREEN_* constants.
	(FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
	is NULL.
	(x_fullscreen_adjust): Add prototype.

	* emacs.c (USAGE2): Add the new full-screen arguments.
	(standard_args): Ditto.

1268 1269
	* xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
	New variables.
Eli Zaretskii's avatar
Eli Zaretskii committed
1270 1271 1272 1273 1274 1275 1276 1277 1278 1279
	(syms_of_xfns): Intern and staticpro them.
	(x_frame_parms) <"fullscreen">: New parameter.
	(x_fullscreen_move, x_set_fullscreen): New functions.
	(x_set_frame_parameters): Support for Qfullscreen.
	(x_real_positions): More accurate computation of the frame position.
	(x_figure_window_size): Support full-screen frames.
	(Fx_create_frame): Default the fullscreen parameter.

	* xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
	(XTread_socket) <Expose>: Call x_check_fullscreen.
1280 1281
	<ConfigureNotify>: Don't resize to fullscreen.
	Call x_check_fullscreen_move, and set the want_fullscreen member of
Eli Zaretskii's avatar
Eli Zaretskii committed
1282 1283
	output_data.x.

Jason Rumney's avatar
Jason Rumney committed
1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295
2002-01-13  Jason Rumney  <jasonr@gnu.org>

	* w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
	for mice with more than 3 buttons.

	* w32term.c (parse_button): New parameter xbutton.  Callers changed.
	(w32_read_socket): Handle new "XBUTTON" messages.

	* w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
	(syms_of_w32fns): DEFVAR_BOOL it.
	(w32_wnd_proc): Handle new "XBUTTON" messages.

Kenichi Handa's avatar
Kenichi Handa committed
1296
2002-01-13  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
1297

1298
	* keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
1299

1300 1301 1302 1303
2002-01-13  Andreas Schwab  <schwab@suse.de>

	* xterm.c (x_load_font): Never set fonts_changed_p to zero.

1304 1305 1306 1307 1308
2002-01-12  Andreas Schwab  <schwab@suse.de>

	* .gdbinit (xbuffer): Remove address operator since data is now a
	pointer.

1309 1310 1311 1312 1313 1314
2002-01-11  Richard M. Stallman  <rms@gnu.org>

	* insdel.c (adjust_after_replace_noundo): New function.

	* coding.c (code_convert_region): Don't copy old text if undo disabled.

1315 1316 1317 1318 1319
2002-01-09  Jason Rumney  <jasonr@gnu.org>

	* xdisp.c (x_consider_frame_title): Don't count the tooltip frame
	when checking for multiple frames.

1320 1321 1322 1323 1324
2002-01-08  Richard M. Stallman  <rms@gnu.org>

	* window.c (delete_window): Rewrite the code for changing the
	selected window to handle the case where WINDOW is not a leaf.

1325 1326 1327 1328 1329
2002-01-07  Eli Zaretskii  <eliz@is.elta.co.il>

	* process.c (send_process): Set src_multibyte to 1 after the call
	top setup_coding_system, not before the call.

1330 1331 1332
2002-01-07  Jason Rumney  <jasonr@gnu.org>

	* xmenu.c (set_frame_menubar, xmenu_show):
1333
	(xdialog_show):	Initialize wv->help to Qnil.
1334 1335 1336 1337

	* w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
	(w32_dialog_show): Initialize wv->help to Qnil.

1338 1339
2002-01-06  Jason Rumney  <jasonr@gnu.org>

1340 1341
	* xmenu.c (single_submenu): Initialize wv->help to Qnil.

1342 1343 1344 1345
	* w32menu.c (w32_menu_display_help): Revert last change.

	* xmenu.c (menu_highlight_callback): Revert last change.

1346 1347 1348 1349 1350
2002-01-06  Andreas Schwab  <schwab@suse.de>

	* insdel.c (make_gap_larger): Make sure buffer size does not
	overflow range of int.

1351 1352
2002-01-05  Jason Rumney  <jasonr@gnu.org>

Jason Rumney's avatar
Jason Rumney committed
1353 1354 1355
	* w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
	OVERLAPS_P.

1356 1357
	* w32menu.c (w32_menu_display_help): Hide any tooltip window.

1358 1359 1360 1361 1362 1363 1364 1365 1366 1367
	* w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
	to the left or to the right of the pointer, put it against
	the left screen edge.
	(x_frame_parms): Add missing braces around initializer.

	* w32term.c (x_setup_relief_colors): Don't compute an image's
	background color if it doesn't have a Pixmap.
	(notice_overwritten_cursor): Don't depend on
	output_cursor and updated_area.  Compare pixel coordinates with
	window's cursor pixel coordinates.
1368 1369
	(x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
	Call notice_overwritten_cursor with new arg list.
1370 1371 1372 1373 1374 1375 1376
	(show_mouse_face): Fix bug setting a row's mouse_face_p flag
	unconditionally.
	(x_draw_image_relief): Use predefined macro instead of
	constant when the value of `tool_bar_button_relief' is negative.

	* w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.

1377 1378 1379 1380
2002-01-04  Richard M. Stallman  <rms@gnu.org>

	* xmenu.c (menu_highlight_callback): Hide any tooltip window.

1381 1382 1383 1384 1385 1386 1387
2002-01-03  Richard M. Stallman  <rms@gnu.org>

	* keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
	(Fkey_binding): Try the `keymap' property map first.
	(Fdescribe_buffer_bindings): Show `keymap' property bindings before
	minor mode bindings.

Kim F. Storm's avatar
Kim F. Storm committed
1388 1389 1390 1391
2002-01-03  Kim F. Storm  <storm@cua.dk>

	* keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.

1392 1393
2002-01-02  Richard M. Stallman  <rms@gnu.org>

1394 1395 1396
	* keyboard.c (read_key_sequence): Handle the keymap property
	before minor mode maps.

1397 1398 1399
	* editfns.c (Fformat): Update thissize from field_width
	based on the actual width, in the string case.

Kenichi Handa's avatar
Kenichi Handa committed
1400
2002-01-01  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
Pavel Janík's avatar
Pavel Janík committed
1401

Pavel Janík's avatar
Pavel Janík committed
1402 1403 1404
	* charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
	when used as truth value to prevent gcc warnings.

Pavel Janík's avatar
Pavel Janík committed
1405 1406 1407
	* sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
	* w32proc.c: Include <config.h>.

1408 1409 1410 1411 1412 1413
2002-01-01  Andreas Schwab  <schwab@suse.de>

	* eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
	not EMACS_INT, to make them compatible with DEFVAR_INT.
	* lisp.h (max_specpdl_size): Adjust declaration.

1414 1415 1416 1417 1418 1419 1420
2002-01-01  Richard M. Stallman  <rms@gnu.org>

	* print.c (print_object): Test print_escape_nonascii only for
	unibyte strings.
	(PRINTPREPARE): Once again bind Qprint_escape_nonascii
	when outputting to a multibyte buffer.

1421 1422 1423 1424 1425 1426 1427 1428 1429 1430
2001-12-29  Richard M. Stallman  <rms@gnu.org>

	* print.c (print_object): In multibyte string, use hex escapes.
	Use octal only for unibyte strings.
	(PRINTPREPARE): Don't ever set Qprint_escape_nonascii.

	* lread.c (read_escape): New arg BYTEREP for reporting whether
	escape forces unibyte or multibyte.
	(read1): When reading a string, take note of that info.

1431 1432 1433 1434 1435
2001-12-29  Ken Raeburn  <raeburn@gnu.org>

	* abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
	comparison to test lisp value returned by Fget.

1436 1437
2001-12-29  Richard M. Stallman  <rms@gnu.org>

1438 1439
	* lisp.h (max_specpdl_size): Add declaration.

1440 1441
	* fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.

1442 1443 1444
	* keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
	Handle modifier bits.  Correct typo in error message.

1445 1446
2001-12-28  Richard M. Stallman  <rms@gnu.org>

1447 1448 1449 1450 1451 1452 1453 1454 1455 1456
	* abbrev.c: Use the plist of an abbrev for multiple params if nec.
	(Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
	(Fdefine_global_abbrev, Fdefine_mode_abbrev):
	Update calls to Fdefine_abbrev.
	(write_abbrev): Update for changed data format.
	Don't list "system" abbrevs.
	(Fexpand_abbrev): Update use count with new data format.
	(describe_abbrev): Update for changed data format.
	(Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.

1457 1458 1459 1460 1461 1462 1463
	* config.in (HAVE_MBSINIT): Add #undef.

	* strftime.c (mbsinit): Define as no-op if not available.

	* s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
	(sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.

1464 1465
	* keymap.c (Flookup_key): Error message if key has wrong data type.
	(Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
1466
	(exclude_key): New variable.
1467

1468 1469
2001-12-28  Gerd Moellmann  <gerd@gnu.org>

1470 1471
	* xterm.c (x_setup_relief_colors): Don't compute an image's
	background color if it doesn't have a Pixmap.
1472

1473 1474 1475
	* xterm.c (notice_overwritten_cursor): Don't depend on
	output_cursor and updated_area.  Compare pixel coordinates with
	window's cursor pixel coordinates.
1476 1477
	(x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
	Call notice_overwritten_cursor with new arg list.
1478 1479
	(show_mouse_face): Fix bug setting a row's mouse_face_p flag
	unconditionally.
1480

1481 1482 1483
	* xdisp.c (try_scrolling) <PT below scroll margin>: Add the
	height of the cursor line to the amount to scroll.

1484 1485 1486 1487 1488
2001-12-27  Richard M. Stallman  <rms@gnu.org>

	* intervals.c (set_point_both): The position after an invisible,
	intangible character is not an acceptable stopping point.

1489 1490 1491 1492 1493
2001-12-27  Ken Raeburn  <raeburn@gnu.org>

	* window.c (enlarge_window): In new preserve_before code, convert
	CURBEG from lisp object to integer before doing arithmetic.

1494 1495 1496 1497
2001-12-27  Richard M. Stallman  <rms@gnu.org>

	* bytecode.c (Fbyte_code): Undo previous change.

Kim F. Storm's avatar
Kim F. Storm committed
1498 1499 1500 1501 1502 1503
2001-12-26  Kim F. Storm  <storm@cua.dk>

	* keyboard.c (record_char): Ignore duplicate help-echo events only
	separated by mouse-movement.  When tracking mouse, only record
	first and last mouse-movement event in same window.
	Don't record mouse-movement events in keyboard macros.
1504

1505 1506
2001-12-25  Richard M. Stallman  <rms@gnu.org>

1507 1508 1509
	* window.c (enlarge_window): New arg PRESERVE_BEFORE.  Callers changed.
	(Fenlarge_window): New arg PRESERVE_BEFORE.

1510 1511 1512
	* bytecode.c (Fbyte_code): Use Fstring_make_unibyte
	instead of Fstring_as_unibyte.

Kenichi Handa's avatar
Kenichi Handa committed
1513
2001-12-22  Pavel Jan,Am(Bk  <Pavel@Janik.cz>
Pavel Janík's avatar
Pavel Janík committed
1514

1515
	The following changes remove mocklisp support:
Pavel Janík's avatar
Pavel Janík committed
1516 1517 1518 1519 1520 1521 1522

	* mocklisp.h, mocklisp.c: Files removed.

	* lisp.h: Remove declarations of variables `Vmocklisp_arguments',
	`Qmocklisp' and `Qmocklisp_arguments'.
	Remove prototype of syms_of_mocklisp.

1523
	* makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
Pavel Janík's avatar
Pavel Janík committed
1524 1525 1526 1527 1528

	* callint.c: Do not include mocklisp.h.
	(Fcall_interactively): Do not test for mocklisp case.

	* eval.c: Remove variables `Qmocklisp_arguments',
1529 1530 1531
	`Vmocklisp_arguments' and `Qmocklisp'.  Remove prototype of ml_apply.
	(Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
	Do not test for mocklisp case.
Pavel Janík's avatar
Pavel Janík committed
1532 1533 1534 1535 1536 1537 1538 1539 1540
	(Fwhile): Remove unused variable `tem'.
	(syms_of_eval): Remove variable `moclisp-arguments'.

	* data.c (wrong_type_argument): Remove mocklisp case.

	* doc.c (Fdocumentation): Remove mocklisp case.

	* emacs.c (main): Do not call syms_of_mocklisp.

1541 1542 1543 1544 1545 1546
2001-12-21  Richard M. Stallman  <rms@gnu.org>

	* xfns.c (compute_tip_xy): If tooltip won't fit on the screen
	to the left or to the right of the pointer, put it against
	the left screen edge.

Eli Zaretskii's avatar
Eli Zaretskii committed
1547 1548 1549 1550 1551
2001-12-21  Eli Zaretskii  <eliz@is.elta.co.il>

	* Makefile.in (distclean): Remove .gdbinit if we are building
	outside the source tree.

1552 1553
2001-12-19  Eli Zaretskii  <eliz@is.elta.co.il>

1554 1555 1556 1557 1558 1559 1560
	* w32.c (emacs_root_dir): New function.

	* msdos.c (emacs_root_dir): New function.

	* fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
	of the current drive as the fallback for default_directory.

Eli Zaretskii's avatar
Eli Zaretskii committed
1561 1562 1563
	* dired.c (file_name_completion): Run the elements of
	completion-ignored-extensions through ENCODE_FILE.

1564 1565 1566
	* lisp.h (scmp): Remove prototype, since it's now a static
	function private to dired.c.

1567 1568 1569 1570 1571 1572