[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: C-n doesn't move point when selective-display enabled
From: |
Richard Stallman |
Subject: |
Re: C-n doesn't move point when selective-display enabled |
Date: |
Tue, 02 Mar 2004 10:51:52 -0500 |
Do you get good results with this fix?
*** indent.c.~1.158.~ Thu Sep 11 09:51:23 2003
--- indent.c Tue Mar 2 10:21:14 2004
***************
*** 1197,1203 ****
= (INTEGERP (current_buffer->selective_display)
? XINT (current_buffer->selective_display)
: !NILP (current_buffer->selective_display) ? -1 : 0);
- int prev_hpos = 0;
int selective_rlen
= (selective && dp && VECTORP (DISP_INVIS_VECTOR (dp))
? XVECTOR (DISP_INVIS_VECTOR (dp))->size : 0);
--- 1197,1202 ----
***************
*** 1225,1230 ****
--- 1224,1231 ----
int wide_column_end_hpos = 0;
int prev_pos; /* Previous buffer position. */
int prev_pos_byte; /* Previous buffer position. */
+ int prev_hpos = 0;
+ int prev_vpos = 0;
int contin_hpos; /* HPOS of last column of continued line. */
int prev_tab_offset; /* Previous tab offset. */
***************
*** 1273,1278 ****
--- 1274,1280 ----
pos = prev_pos;
pos_byte = prev_pos_byte;
hpos = prev_hpos;
+ vpos = prev_vpos;
tab_offset = prev_tab_offset;
}
break;
***************
*** 1382,1387 ****
--- 1384,1390 ----
if (pos >= next_boundary)
next_boundary = pos + 1;
prev_hpos = width;
+ prev_vpos = vpos;
prev_tab_offset = tab_offset;
}
}
***************
*** 1414,1419 ****
--- 1417,1423 ----
pos = prev_pos;
pos_byte = prev_pos_byte;
hpos = prev_hpos;
+ vpos = prev_vpos;
tab_offset = prev_tab_offset;
/* NOTE on contin_hpos, hpos, and prev_hpos.
***************
*** 1434,1443 ****
hpos = contin_hpos;
vpos = vpos - 1;
}
- else if (c == '\n')
- /* If previous character is NEWLINE,
- set VPOS back to previous line */
- vpos = vpos - 1;
break;
}
--- 1438,1443 ----
***************
*** 1455,1460 ****
--- 1455,1461 ----
pos = prev_pos;
pos_byte = prev_pos_byte;
hpos = prev_hpos;
+ vpos = prev_vpos;
tab_offset = prev_tab_offset;
}
break;
***************
*** 1463,1468 ****
--- 1464,1470 ----
break;
prev_hpos = hpos;
+ prev_vpos = vpos;
prev_pos = pos;
prev_pos_byte = pos_byte;
wide_column_end_hpos = 0;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: C-n doesn't move point when selective-display enabled,
Richard Stallman <=