Browse Source

* 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>

Pavel Roskin 22 years ago
parent
commit
07de958369
3 changed files with 14 additions and 2 deletions
  1. 5 0
      edit/ChangeLog
  2. 3 2
      edit/edit.c
  3. 6 0
      edit/editdraw.c

+ 5 - 0
edit/ChangeLog

@@ -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.
 

+ 3 - 2
edit/edit.c

@@ -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;

+ 6 - 0
edit/editdraw.c

@@ -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';
+		    *p |= (256 * MOD_ABNORMAL);
+		    col += 2;
 		    break;
 		default:
 #ifdef HAVE_CHARSET