emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] Changes to emacs/src/indent.c [emacs-unicode-2]


From: Miles Bader
Subject: [Emacs-diffs] Changes to emacs/src/indent.c [emacs-unicode-2]
Date: Thu, 04 Nov 2004 04:06:13 -0500

Index: emacs/src/indent.c
diff -c emacs/src/indent.c:1.157.2.6 emacs/src/indent.c:1.157.2.7
*** emacs/src/indent.c:1.157.2.6        Tue Aug 10 07:46:40 2004
--- emacs/src/indent.c  Thu Nov  4 08:55:31 2004
***************
*** 1883,1889 ****
    struct position pos;
    /* vpos is cumulative vertical position, changed as from is changed */
    register int vpos = 0;
!   Lisp_Object prevline;
    register int first;
    int from_byte;
    int lmargin = hscroll > 0 ? 1 - hscroll : 0;
--- 1883,1889 ----
    struct position pos;
    /* vpos is cumulative vertical position, changed as from is changed */
    register int vpos = 0;
!   int prevline;
    register int first;
    int from_byte;
    int lmargin = hscroll > 0 ? 1 - hscroll : 0;
***************
*** 1917,1939 ****
        {
          Lisp_Object propval;
  
!         XSETFASTINT (prevline, find_next_newline_no_quit (from - 1, -1));
!         while (XFASTINT (prevline) > BEGV
                 && ((selective > 0
!                     && indented_beyond_p (XFASTINT (prevline),
!                                           CHAR_TO_BYTE (XFASTINT (prevline)),
                                            (double) selective)) /* iftc */
!                    /* watch out for newlines with `invisible' property */
!                    || (propval = Fget_char_property (prevline,
                                                       Qinvisible,
                                                       text_prop_object),
                         TEXT_PROP_MEANS_INVISIBLE (propval))))
!           XSETFASTINT (prevline,
!                        find_next_newline_no_quit (XFASTINT (prevline) - 1,
!                                                   -1));
!         pos = *compute_motion (XFASTINT (prevline), 0,
!                                lmargin + (XFASTINT (prevline) == BEG
!                                           ? start_hpos : 0),
                                 0,
                                 from,
                                 /* Don't care for VPOS...  */
--- 1917,1937 ----
        {
          Lisp_Object propval;
  
!         prevline = find_next_newline_no_quit (from - 1, -1);
!         while (prevline > BEGV
                 && ((selective > 0
!                     && indented_beyond_p (prevline,
!                                           CHAR_TO_BYTE (prevline),
                                            (double) selective)) /* iftc */
!                    /* Watch out for newlines with `invisible' property.
!                       When moving upward, check the newline before.  */
!                    || (propval = Fget_char_property (make_number (prevline - 
1),
                                                       Qinvisible,
                                                       text_prop_object),
                         TEXT_PROP_MEANS_INVISIBLE (propval))))
!           prevline = find_next_newline_no_quit (prevline - 1, -1);
!         pos = *compute_motion (prevline, 0,
!                                lmargin + (prevline == BEG ? start_hpos : 0),
                                 0,
                                 from,
                                 /* Don't care for VPOS...  */
***************
*** 1944,1955 ****
                                 /* This compensates for start_hpos
                                    so that a tab as first character
                                    still occupies 8 columns.  */
!                                (XFASTINT (prevline) == BEG
!                                 ? -start_hpos : 0),
                                 w);
          vpos -= pos.vpos;
          first = 0;
!         from = XFASTINT (prevline);
        }
  
        /* If we made exactly the desired vertical distance,
--- 1942,1952 ----
                                 /* This compensates for start_hpos
                                    so that a tab as first character
                                    still occupies 8 columns.  */
!                                (prevline == BEG ? -start_hpos : 0),
                                 w);
          vpos -= pos.vpos;
          first = 0;
!         from = prevline;
        }
  
        /* If we made exactly the desired vertical distance,
***************
*** 1977,1997 ****
      {
        Lisp_Object propval;
  
!       XSETFASTINT (prevline, find_next_newline_no_quit (from, -1));
!       while (XFASTINT (prevline) > BEGV
             && ((selective > 0
!                 && indented_beyond_p (XFASTINT (prevline),
!                                       CHAR_TO_BYTE (XFASTINT (prevline)),
                                        (double) selective)) /* iftc */
!                /* watch out for newlines with `invisible' property */
!                || (propval = Fget_char_property (prevline, Qinvisible,
                                                   text_prop_object),
                     TEXT_PROP_MEANS_INVISIBLE (propval))))
!       XSETFASTINT (prevline,
!                    find_next_newline_no_quit (XFASTINT (prevline) - 1,
!                                               -1));
!       pos = *compute_motion (XFASTINT (prevline), 0,
!                            lmargin + (XFASTINT (prevline) == BEG
                                        ? start_hpos : 0),
                             0,
                             from,
--- 1974,1994 ----
      {
        Lisp_Object propval;
  
!       prevline = find_next_newline_no_quit (from, -1);
!       while (prevline > BEGV
             && ((selective > 0
!                 && indented_beyond_p (prevline,
!                                       CHAR_TO_BYTE (prevline),
                                        (double) selective)) /* iftc */
!                /* Watch out for newlines with `invisible' property.
!                   When moving downward, check the newline after.  */
!                || (propval = Fget_char_property (make_number (prevline),
!                                                  Qinvisible,
                                                   text_prop_object),
                     TEXT_PROP_MEANS_INVISIBLE (propval))))
!       prevline = find_next_newline_no_quit (prevline - 1, -1);
!       pos = *compute_motion (prevline, 0,
!                            lmargin + (prevline == BEG
                                        ? start_hpos : 0),
                             0,
                             from,
***************
*** 2000,2006 ****
                             /* ... nor HPOS.  */
                             1 << (BITS_PER_SHORT - 1),
                             -1, hscroll,
!                            (XFASTINT (prevline) == BEG ? -start_hpos : 0),
                             w);
        did_motion = 1;
      }
--- 1997,2003 ----
                             /* ... nor HPOS.  */
                             1 << (BITS_PER_SHORT - 1),
                             -1, hscroll,
!                            (prevline == BEG ? -start_hpos : 0),
                             w);
        did_motion = 1;
      }




reply via email to

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