diff src/ops.c @ 2451:0b8612c2814d vim73

Fix: changing case of a character removed combining characters.
author Bram Moolenaar <bram@vim.org>
date Sun, 01 Aug 2010 14:22:48 +0200
parents 348f64c129df
children c3b5d3fe9404
line wrap: on
line diff
--- a/src/ops.c
+++ b/src/ops.c
@@ -2433,7 +2433,8 @@ swapchar(op_type, pos)
 	    pos_T   sp = curwin->w_cursor;
 
 	    curwin->w_cursor = *pos;
-	    del_char(FALSE);
+	    /* don't use del_char(), it also removes composing chars */
+	    del_bytes(utf_ptr2len(ml_get_cursor()), FALSE, FALSE);
 	    ins_char(nc);
 	    curwin->w_cursor = sp;
 	}