annotate src/m/next.h @ 4383:d4a36c1669e6

(adjust_intervals_for_insertion): Handle insertion between two unlike intervals via merge_properties_sticky. (merge_properties_sticky): New function. (graft_intervals_into_buffer): Leave handling of `sticky'-ness to adjust_intervals_for_insertion, then merge properties of the inserted text onto the old ones. (textget_direct): New function. (set_point): Fix calculating of fromprev. (verify_interval_modification): Check for `read-only' property and take its `sticky'-ness into account. (set_point): Ignore `invisible' property unless property value is `hidden'.
author Richard M. Stallman <rms@gnu.org>
date Sat, 31 Jul 1993 21:58:03 +0000
parents d1bca0e276d2
children 0c076c714598
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1643
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
1 /* Configuration file for the NeXT machine.
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
2 Copyright (C) 1990 Free Software Foundation, Inc.
51
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
4 This file is part of GNU Emacs.
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
5
1643
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
6 GNU Emacs is free software; you can redistribute it and/or modify
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
7 it under the terms of the GNU General Public License as published by
3699
7be0f0a02725 Updated GPL version to 2.
Jim Blandy <jimb@redhat.com>
parents: 3040
diff changeset
8 the Free Software Foundation; either version 2, or (at your option)
1643
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
9 any later version.
51
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
10
1643
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
11 GNU Emacs is distributed in the hope that it will be useful,
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
14 GNU General Public License for more details.
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
15
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
16 You should have received a copy of the GNU General Public License
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
17 along with GNU Emacs; see the file COPYING. If not, write to
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
18 the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
51
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
19
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
20
1643
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
21 /* Say this machine is a next if not previously defined */
51
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
22
1643
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
23 #ifndef NeXT
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
24 #define NeXT
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
25 #endif
51
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
26
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
27 /* The following three symbols give information on
1643
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
28 the size of various data types. */
51
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
29
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
30 #define SHORTBITS 16 /* Number of bits in a short */
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
31
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
32 #define INTBITS 32 /* Number of bits in an int */
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
33
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
34 #define LONGBITS 32 /* Number of bits in a long */
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
35
1643
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
36 /* Let the compiler tell us what byte order architecture we're compiling for */
51
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
37
1643
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
38 #ifdef __BIG_ENDIAN__
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
39 #define BIG_ENDIAN
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
40 #endif
51
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
41
1643
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
42 /* Define how to take a char and sign-extend into an int.
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
43 On machines where char is signed, this is a no-op. */
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
44
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
45 #define SIGN_EXTEND_CHAR(c) (c)
51
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
46
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
47 /* Use type int rather than a union, to represent Lisp_Object */
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
48
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
49 #define NO_UNION_TYPE
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
50
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
51 /* XINT must explicitly sign-extend */
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
52
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
53 #define EXPLICIT_SIGN_EXTEND
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
54
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
55 /* Data type of load average, as read out of kmem. */
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
56
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
57 #define LOAD_AVE_TYPE long
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
58
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
59 /* Convert that into an integer that is 100 for a load average of 1.0 */
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
60
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
61 #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
62
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
63 /* Say that the text segment of a.out includes the header;
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
64 the header actually occupies the first few bytes of the text segment
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
65 and is counted in hdr.a_text. */
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
66
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
67 #define A_TEXT_OFFSET(HDR) sizeof (HDR)
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
68
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
69 /* Use dk.h, not dkstat.h, in loadst.c. */
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
70
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
71 #define DK_HEADER_FILE
1643
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
72
51
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
73 /* Mask for address bits within a memory segment */
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
74
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
75 #define SEGSIZ 0x20000
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
76 #define SEGMENT_MASK (SEGSIZ - 1)
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
77
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
78 #define HAVE_ALLOCA
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
79
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
80 #define SYSTEM_MALLOC
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
81
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
82 #define HAVE_UNIX_DOMAIN
38d1425bbae4 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
83
1643
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
84 #define LIB_X11_LIB -L/usr/lib/X11 -lX11
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
85
4192
d1bca0e276d2 (X_NOT_POSIX): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 3699
diff changeset
86 /* This avoids a problem in Xos.h when using co-Xist 3.01. */
d1bca0e276d2 (X_NOT_POSIX): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 3699
diff changeset
87 #define X_NOT_POSIX
d1bca0e276d2 (X_NOT_POSIX): Defined.
Richard M. Stallman <rms@gnu.org>
parents: 3699
diff changeset
88
1643
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
89 /* Conflicts in process.c between ioctl.h & tty.h use of t_foo fields */
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
90
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
91 #define NO_T_CHARS_DEFINES
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
92
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
93 /* Use our own unexec routines */
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
94
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
95 #define UNEXEC unexnext.o
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
96
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
97 /* We don't have a g library either, so override the -lg LIBS_DEBUG switch */
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
98
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
99 #define LIBS_DEBUG
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
100
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
101 /* We don't have a libgcc.a, so we can't let LIB_GCC default to -lgcc */
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
102
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
103 #define LIB_GCC
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
104
3040
aa7dcfbfa478 (C_SWITCH_MACHINE): Definition deleted.
Richard M. Stallman <rms@gnu.org>
parents: 1643
diff changeset
105 #if 0 /* ohl@chico.harvard.edu says to do this. */
1643
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
106 /* Compile "strict bsd" to avoid warnings from include files */
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
107
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
108 #define C_SWITCH_MACHINE -bsd
3040
aa7dcfbfa478 (C_SWITCH_MACHINE): Definition deleted.
Richard M. Stallman <rms@gnu.org>
parents: 1643
diff changeset
109 #endif
1643
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
110
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
111 /* Link this program just by running cc. */
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
112 #define ORDINARY_LINK
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
113
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
114 /* start_of_text isn't actually used, so make it compile without error. */
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
115 #define TEXT_START 0
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
116 /* This seems to be right for end_of_text, but it may not be used anyway. */
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
117 #define TEXT_END get_etext ()
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
118 /* This seems to be right for end_of_data, but it may not be used anyway. */
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
119 #define DATA_END get_edata ()
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
120
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
121 /* Defining KERNEL_FILE causes lossage because sys/file.h
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
122 stupidly gets confused by it. */
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
123 #undef KERNEL_FILE
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
124
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
125 #define LD_SWITCH_MACHINE -X -noseglinkedit
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
126
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
127 #define environ _environ
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
128
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
129 #if 0 /* This is ok for NeXT system version 3.0 or above. */
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
130 /* Where to find the kernel, for load average. */
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
131 #define KERNEL_FILE "/mach"
150011471634 Copy changes from 18.59:
Richard M. Stallman <rms@gnu.org>
parents: 750
diff changeset
132 #endif