emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/editfns.c


From: Miles Bader
Subject: [Emacs-diffs] Changes to emacs/src/editfns.c
Date: Thu, 14 Mar 2002 03:11:03 -0500

Index: emacs/src/editfns.c
diff -c emacs/src/editfns.c:1.327 emacs/src/editfns.c:1.328
*** emacs/src/editfns.c:1.327   Tue Mar 12 12:24:10 2002
--- emacs/src/editfns.c Thu Mar 14 03:11:03 2002
***************
*** 1,5 ****
  /* Lisp functions pertaining to editing.
!    Copyright (C) 1985,86,87,89,93,94,95,96,97,98, 1999, 2000, 2001
        Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
--- 1,5 ----
  /* Lisp functions pertaining to editing.
!    Copyright (C) 1985,86,87,89,93,94,95,96,97,98, 1999, 2000, 2001, 2002
        Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
***************
*** 321,402 ****
       ()
  {
    return current_buffer->mark;
- }
- 
- 
- #if 0 /* Not used.  */
- 
- /* Return nonzero if POS1 and POS2 have the same value
-    for the text property PROP.  */
- 
- static int
- char_property_eq (prop, pos1, pos2)
-      Lisp_Object prop;
-      Lisp_Object pos1, pos2;
- {
-   Lisp_Object pval1, pval2;
- 
-   pval1 = Fget_char_property (pos1, prop, Qnil);
-   pval2 = Fget_char_property (pos2, prop, Qnil);
- 
-   return EQ (pval1, pval2);
- }
- 
- #endif /* 0 */
- 
- /* Return the direction from which the text-property PROP would be
-    inherited by any new text inserted at POS: 1 if it would be
-    inherited from the char after POS, -1 if it would be inherited from
-    the char before POS, and 0 if from neither.  */
- 
- static int
- text_property_stickiness (prop, pos)
-      Lisp_Object prop;
-      Lisp_Object pos;
- {
-   Lisp_Object prev_pos, front_sticky;
-   int is_rear_sticky = 1, is_front_sticky = 0; /* defaults */
- 
-   if (XINT (pos) > BEGV)
-     /* Consider previous character.  */
-     {
-       Lisp_Object rear_non_sticky;
- 
-       prev_pos = make_number (XINT (pos) - 1);
-       rear_non_sticky = Fget_text_property (prev_pos, Qrear_nonsticky, Qnil);
- 
-       if (!NILP (CONSP (rear_non_sticky)
-                ? Fmemq (prop, rear_non_sticky)
-                : rear_non_sticky))
-       /* PROP is rear-non-sticky.  */
-       is_rear_sticky = 0;
-     }
- 
-   /* Consider following character.  */
-   front_sticky = Fget_text_property (pos, Qfront_sticky, Qnil);
- 
-   if (EQ (front_sticky, Qt)
-       || (CONSP (front_sticky)
-         && !NILP (Fmemq (prop, front_sticky))))
-     /* PROP is inherited from after.  */
-     is_front_sticky = 1;
- 
-   /* Simple cases, where the properties are consistent.  */
-   if (is_rear_sticky && !is_front_sticky)
-     return -1;
-   else if (!is_rear_sticky && is_front_sticky)
-     return 1;
-   else if (!is_rear_sticky && !is_front_sticky)
-     return 0;
- 
-   /* The stickiness properties are inconsistent, so we have to
-      disambiguate.  Basically, rear-sticky wins, _except_ if the
-      property that would be inherited has a value of nil, in which case
-      front-sticky wins.  */
-   if (XINT (pos) == BEGV || NILP (Fget_text_property (prev_pos, prop, Qnil)))
-     return 1;
-   else
-     return -1;
  }
  
  
--- 321,326 ----



reply via email to

[Prev in Thread] Current Thread [Next in Thread]