]> git.pld-linux.org Git - packages/vim.git/blame - 7.0.067
- new
[packages/vim.git] / 7.0.067
CommitLineData
dbf7c229
AG
1To: vim-dev@vim.org
2Subject: Patch 7.0.067
3Fcc: outbox
4From: Bram Moolenaar <Bram@moolenaar.net>
5Mime-Version: 1.0
6Content-Type: text/plain; charset=ISO-8859-1
7Content-Transfer-Encoding: 8bit
8------------
9
10Patch 7.0.067
11Problem: Undo doesn't always work properly when using "scim" input method.
12 Undo is split up when using preediting.
13Solution: Reset xim_has_preediting also when preedit_start_col is not
14 MAXCOL. Don't split undo when <Left> is used while preediting.
15 (Yukihiro Nakadaira)
16Files: src/edit.c, src/mbyte.c
17
18
19*** ../vim-7.0.066/src/edit.c Tue Aug 22 19:58:22 2006
20--- src/edit.c Tue Aug 29 14:57:46 2006
21***************
22*** 8597,8603 ****
23 tpos = curwin->w_cursor;
24 if (oneleft() == OK)
25 {
26! start_arrow(&tpos);
27 #ifdef FEAT_RIGHTLEFT
28 /* If exit reversed string, position is fixed */
29 if (revins_scol != -1 && (int)curwin->w_cursor.col >= revins_scol)
30--- 8597,8608 ----
31 tpos = curwin->w_cursor;
32 if (oneleft() == OK)
33 {
34! #if defined(FEAT_XIM) && defined(FEAT_GUI_GTK)
35! /* Only call start_arrow() when not busy with preediting, it will
36! * break undo. K_LEFT is inserted in im_correct_cursor(). */
37! if (!im_is_preediting())
38! #endif
39! start_arrow(&tpos);
40 #ifdef FEAT_RIGHTLEFT
41 /* If exit reversed string, position is fixed */
42 if (revins_scol != -1 && (int)curwin->w_cursor.col >= revins_scol)
43*** ../vim-7.0.066/src/mbyte.c Wed Aug 16 18:05:36 2006
44--- src/mbyte.c Tue Aug 29 14:41:45 2006
45***************
46*** 3514,3519 ****
47--- 3514,3524 ----
48 add_to_input_buf(delkey, (int)sizeof(delkey));
49 }
50
51+ /*
52+ * Move the cursor left by "num_move_back" characters.
53+ * Note that ins_left() checks im_is_preediting() to avoid breaking undo for
54+ * these K_LEFT keys.
55+ */
56 static void
57 im_correct_cursor(int num_move_back)
58 {
59***************
60*** 3741,3748 ****
61 }
62 else if (cursor_index == 0 && preedit_string[0] == '\0')
63 {
64! if (preedit_start_col == MAXCOL)
65! xim_has_preediting = FALSE;
66
67 /* If at the start position (after typing backspace)
68 * preedit_start_col must be reset. */
69--- 3746,3752 ----
70 }
71 else if (cursor_index == 0 && preedit_string[0] == '\0')
72 {
73! xim_has_preediting = FALSE;
74
75 /* If at the start position (after typing backspace)
76 * preedit_start_col must be reset. */
77*** ../vim-7.0.066/src/version.c Tue Aug 22 21:51:18 2006
78--- src/version.c Tue Aug 29 16:09:35 2006
79***************
80*** 668,669 ****
81--- 668,671 ----
82 { /* Add new patch number below this line */
83+ /**/
84+ 67,
85 /**/
86
87--
88hundred-and-one symptoms of being an internet addict:
89265. Your reason for not staying in touch with family is that
90 they do not have e-mail addresses.
91
92 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
93/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
94\\\ download, build and distribute -- http://www.A-A-P.org ///
95 \\\ help me help AIDS victims -- http://ICCF-Holland.org ///
This page took 0.042103 seconds and 4 git commands to generate.