@@ -1,5 +1,10 @@
2002-09-23 Pavel Roskin <proski@gnu.org>
+ * edit.c (edit_move_forward3): Show '\r' as ^M.
+ * editdraw.c (edit_draw_this_line): Likewise. Use MOD_ABNORMAL
+ attribute.
+ From Alexander Varakin <avarakin00@hotmail.com>
+
* edit.h: Remove all references to O_TEXT, USE_O_TEXT and
MY_O_TEXT.
@@ -1214,8 +1214,9 @@ long edit_move_forward3 (WEdit * edit, long current, int cols, long upto)
return p - 1;
}
c = edit_get_byte (edit, p);
- if (c == '\r')
- continue;
+ /* '\r' is shown as ^M, so we must advance 2 characters */
+ if (c == '\r')
+ col += 2;
else
if (c == '\t')
col += TAB_SIZE - col % TAB_SIZE;
@@ -300,6 +300,12 @@ static void edit_draw_this_line (WEdit * edit, long b, long row, long start_col,
*(p++) = c;
break;
case '\r':
+ /* Display '\r' as ^M, just like vi does */
+ *(p++) = '^';
+ *p |= (256 * MOD_ABNORMAL);
+ *(p++) = 'M';
default:
#ifdef HAVE_CHARSET