]> git.pld-linux.org Git - packages/vim.git/blob - 7.3.513
- add patches 7.3.619-743
[packages/vim.git] / 7.3.513
1 To: vim_dev@googlegroups.com
2 Subject: Patch 7.3.513
3 Fcc: outbox
4 From: Bram Moolenaar <Bram@moolenaar.net>
5 Mime-Version: 1.0
6 Content-Type: text/plain; charset=UTF-8
7 Content-Transfer-Encoding: 8bit
8 ------------
9
10 Patch 7.3.513
11 Problem:    Cannot use CTRL-E and CTRL-Y with "r".
12 Solution:   Make CTRL-E and CTRL-Y work like in Insert mode. (Christian
13             Brabandt)
14 Files:      src/edit.c, src/normal.c, src/proto/edit.pro
15
16
17 *** ../vim-7.3.512/src/edit.c   2012-04-05 16:07:01.000000000 +0200
18 --- src/edit.c  2012-04-30 17:53:47.000000000 +0200
19 ***************
20 *** 253,259 ****
21   #ifdef FEAT_DIGRAPHS
22   static int  ins_digraph __ARGS((void));
23   #endif
24 - static int  ins_copychar __ARGS((linenr_T lnum));
25   static int  ins_ctrl_ey __ARGS((int tc));
26   #ifdef FEAT_SMARTINDENT
27   static void ins_try_si __ARGS((int c));
28 --- 253,258 ----
29 ***************
30 *** 9899,9905 ****
31    * Handle CTRL-E and CTRL-Y in Insert mode: copy char from other line.
32    * Returns the char to be inserted, or NUL if none found.
33    */
34 !     static int
35   ins_copychar(lnum)
36       linenr_T  lnum;
37   {
38 --- 9898,9904 ----
39    * Handle CTRL-E and CTRL-Y in Insert mode: copy char from other line.
40    * Returns the char to be inserted, or NUL if none found.
41    */
42 !     int
43   ins_copychar(lnum)
44       linenr_T  lnum;
45   {
46 *** ../vim-7.3.512/src/normal.c 2012-03-28 12:59:53.000000000 +0200
47 --- src/normal.c        2012-04-30 18:06:13.000000000 +0200
48 ***************
49 *** 7070,7076 ****
50             for (n = cap->count1; n > 0; --n)
51             {
52                 State = REPLACE;
53 !               ins_char(cap->nchar);
54                 State = old_State;
55                 if (cap->ncharC1 != 0)
56                     ins_char(cap->ncharC1);
57 --- 7070,7087 ----
58             for (n = cap->count1; n > 0; --n)
59             {
60                 State = REPLACE;
61 !               if (cap->nchar == Ctrl_E || cap->nchar == Ctrl_Y)
62 !               {
63 !                   int c = ins_copychar(curwin->w_cursor.lnum
64 !                                          + (cap->nchar == Ctrl_Y ? -1 : 1));
65 !                   if (c != NUL)
66 !                       ins_char(c);
67 !                   else
68 !                       /* will be decremented further down */
69 !                       ++curwin->w_cursor.col;
70 !               }
71 !               else
72 !                   ins_char(cap->nchar);
73                 State = old_State;
74                 if (cap->ncharC1 != 0)
75                     ins_char(cap->ncharC1);
76 ***************
77 *** 7092,7098 ****
78                  * line will be changed.
79                  */
80                 ptr = ml_get_buf(curbuf, curwin->w_cursor.lnum, TRUE);
81 !               ptr[curwin->w_cursor.col] = cap->nchar;
82                 if (p_sm && msg_silent == 0)
83                     showmatch(cap->nchar);
84                 ++curwin->w_cursor.col;
85 --- 7103,7117 ----
86                  * line will be changed.
87                  */
88                 ptr = ml_get_buf(curbuf, curwin->w_cursor.lnum, TRUE);
89 !               if (cap->nchar == Ctrl_E || cap->nchar == Ctrl_Y)
90 !               {
91 !                 int c = ins_copychar(curwin->w_cursor.lnum
92 !                                          + (cap->nchar == Ctrl_Y ? -1 : 1));
93 !                 if (c != NUL)
94 !                   ptr[curwin->w_cursor.col] = c;
95 !               }
96 !               else
97 !                   ptr[curwin->w_cursor.col] = cap->nchar;
98                 if (p_sm && msg_silent == 0)
99                     showmatch(cap->nchar);
100                 ++curwin->w_cursor.col;
101 *** ../vim-7.3.512/src/proto/edit.pro   2010-08-15 21:57:28.000000000 +0200
102 --- src/proto/edit.pro  2012-04-30 17:54:41.000000000 +0200
103 ***************
104 *** 39,42 ****
105 --- 39,43 ----
106   int hkmap __ARGS((int c));
107   void ins_scroll __ARGS((void));
108   void ins_horscroll __ARGS((void));
109 + int ins_copychar __ARGS((linenr_T lnum));
110   /* vim: set ft=c : */
111 *** ../vim-7.3.512/src/version.c        2012-04-30 17:35:44.000000000 +0200
112 --- src/version.c       2012-04-30 18:17:52.000000000 +0200
113 ***************
114 *** 716,717 ****
115 --- 716,719 ----
116   {   /* Add new patch number below this line */
117 + /**/
118 +     513,
119   /**/
120
121 -- 
122 It is illegal for anyone to try and stop a child from playfully jumping over
123 puddles of water.
124                 [real standing law in California, United States of America]
125
126  /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
127 ///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
128 \\\  an exciting new programming language -- http://www.Zimbu.org        ///
129  \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///
This page took 0.155744 seconds and 3 git commands to generate.