comparison src/normal.c @ 1490:0f3f3090491f v7.1.205

updated for version 7.1-205
author vimboss
date Sat, 05 Jan 2008 12:35:21 +0000
parents c87ce0b2ee2a
children 29c09fa57168
comparison
equal deleted inserted replaced
1489:62716fd61fe9 1490:0f3f3090491f
139 static void nv_dot __ARGS((cmdarg_T *cap)); 139 static void nv_dot __ARGS((cmdarg_T *cap));
140 static void nv_redo __ARGS((cmdarg_T *cap)); 140 static void nv_redo __ARGS((cmdarg_T *cap));
141 static void nv_Undo __ARGS((cmdarg_T *cap)); 141 static void nv_Undo __ARGS((cmdarg_T *cap));
142 static void nv_tilde __ARGS((cmdarg_T *cap)); 142 static void nv_tilde __ARGS((cmdarg_T *cap));
143 static void nv_operator __ARGS((cmdarg_T *cap)); 143 static void nv_operator __ARGS((cmdarg_T *cap));
144 #ifdef FEAT_EVAL
145 static void set_op_var __ARGS((int optype));
146 #endif
144 static void nv_lineop __ARGS((cmdarg_T *cap)); 147 static void nv_lineop __ARGS((cmdarg_T *cap));
145 static void nv_home __ARGS((cmdarg_T *cap)); 148 static void nv_home __ARGS((cmdarg_T *cap));
146 static void nv_pipe __ARGS((cmdarg_T *cap)); 149 static void nv_pipe __ARGS((cmdarg_T *cap));
147 static void nv_bck_word __ARGS((cmdarg_T *cap)); 150 static void nv_bck_word __ARGS((cmdarg_T *cap));
148 static void nv_wordcmd __ARGS((cmdarg_T *cap)); 151 static void nv_wordcmd __ARGS((cmdarg_T *cap));
7178 * either, because "2." should also not use the count. */ 7181 * either, because "2." should also not use the count. */
7179 if (cap->cmdchar == 'D' && vim_strchr(p_cpo, CPO_HASH) != NULL) 7182 if (cap->cmdchar == 'D' && vim_strchr(p_cpo, CPO_HASH) != NULL)
7180 { 7183 {
7181 cap->oap->start = curwin->w_cursor; 7184 cap->oap->start = curwin->w_cursor;
7182 cap->oap->op_type = OP_DELETE; 7185 cap->oap->op_type = OP_DELETE;
7186 #ifdef FEAT_EVAL
7187 set_op_var(OP_DELETE);
7188 #endif
7183 cap->count1 = 1; 7189 cap->count1 = 1;
7184 nv_dollar(cap); 7190 nv_dollar(cap);
7185 finish_op = TRUE; 7191 finish_op = TRUE;
7186 ResetRedobuff(); 7192 ResetRedobuff();
7187 AppendCharToRedobuff('D'); 7193 AppendCharToRedobuff('D');
8217 nv_lineop(cap); 8223 nv_lineop(cap);
8218 else if (!checkclearop(cap->oap)) 8224 else if (!checkclearop(cap->oap))
8219 { 8225 {
8220 cap->oap->start = curwin->w_cursor; 8226 cap->oap->start = curwin->w_cursor;
8221 cap->oap->op_type = op_type; 8227 cap->oap->op_type = op_type;
8222 } 8228 #ifdef FEAT_EVAL
8223 } 8229 set_op_var(op_type);
8230 #endif
8231 }
8232 }
8233
8234 #ifdef FEAT_EVAL
8235 /*
8236 * Set v:operator to the characters for "optype".
8237 */
8238 static void
8239 set_op_var(optype)
8240 int optype;
8241 {
8242 char_u opchars[3];
8243
8244 if (optype == OP_NOP)
8245 set_vim_var_string(VV_OP, NULL, 0);
8246 else
8247 {
8248 opchars[0] = get_op_char(optype);
8249 opchars[1] = get_extra_op_char(optype);
8250 opchars[2] = NUL;
8251 set_vim_var_string(VV_OP, opchars, -1);
8252 }
8253 }
8254 #endif
8224 8255
8225 /* 8256 /*
8226 * Handle linewise operator "dd", "yy", etc. 8257 * Handle linewise operator "dd", "yy", etc.
8227 * 8258 *
8228 * "_" is is a strange motion command that helps make operators more logical. 8259 * "_" is is a strange motion command that helps make operators more logical.