diff options
author | Richard M. Stallman <rms@gnu.org> | 1993-07-31 21:55:38 +0000 |
---|---|---|
committer | Richard M. Stallman <rms@gnu.org> | 1993-07-31 21:55:38 +0000 |
commit | 58943db0069c771583df071c58f88ece0cdf8820 (patch) | |
tree | cf8427b9ddb9d66c0494c306f0e06b5e659884f4 /src/intervals.h | |
parent | 19e1c4260a37d64f4533d30524a767fb4c4d9807 (diff) | |
download | emacs-58943db0069c771583df071c58f88ece0cdf8820.tar.gz |
(MERGE_INSERTIONS): Define as 1.
(FRONT_STICKY): Add real definition.
(END_NONSTICKY): New macro.
(END_STICKY): Deleted.
(textget_direct, Qfront_sticky, Qrear_nonsticky): Declared.
(Qhidden): Declared.
Diffstat (limited to 'src/intervals.h')
-rw-r--r-- | src/intervals.h | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/src/intervals.h b/src/intervals.h index 86c0d137bdf..444c2cdaad8 100644 --- a/src/intervals.h +++ b/src/intervals.h @@ -129,7 +129,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ /* Macro determining whether the properties of an interval being inserted should be merged with the properties of the text where they are being inserted. */ -#define MERGE_INSERTIONS(i) 0 +#define MERGE_INSERTIONS(i) 1 /* Macro determining if an invisible interval should be displayed as a special glyph, or not at all. */ @@ -150,8 +150,13 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ /* Macros to tell whether insertions before or after this interval should stick to it. */ -#define FRONT_STICKY_P(i) ((i)->front_sticky != 0) -#define END_STICKY_P(i) ((i)->rear_sticky != 0) +/* Replace later with cache access */ +/*#define FRONT_STICKY_P(i) ((i)->front_sticky != 0) + #define END_STICKY_P(i) ((i)->rear_sticky != 0)*/ +#define FRONT_STICKY_P(i) \ + (! NULL_INTERVAL_P (i) && ! NILP (textget ((i)->plist, Qfront_sticky))) +#define END_NONSTICKY_P(i) \ + (! NULL_INTERVAL_P (i) && ! NILP (textget ((i)->plist, Qrear_nonsticky))) /* Declared in alloc.c */ @@ -180,6 +185,7 @@ extern INTERVAL balance_intervals (); extern INLINE void copy_intervals_to_string (); extern INTERVAL copy_intervals (); extern Lisp_Object textget (); +extern Lisp_Object textget_direct (); extern Lisp_Object get_local_map (); /* Declared in textprop.c */ @@ -195,10 +201,13 @@ extern Lisp_Object Qlocal_map; /* Visual properties text (including strings) may have. */ extern Lisp_Object Qforeground, Qbackground, Qfont, Qunderline, Qstipple; -extern Lisp_Object Qinvisible, Qread_only; +extern Lisp_Object Qinvisible, Qhidden, Qread_only; extern Lisp_Object Vinhibit_point_motion_hooks; +/* Sticky properties */ +extern Lisp_Object Qfront_sticky, Qrear_nonsticky; + extern Lisp_Object Ftext_properties_at (); extern Lisp_Object Fnext_property_change (), Fprevious_property_change (); extern Lisp_Object Fadd_text_properties (), Fset_text_properties (); |