Lines Matching refs:vp
69 v_iA(SCR *sp, VICMD *vp) in v_iA() argument
73 if (!db_get(sp, vp->m_start.lno, 0, NULL, &len)) in v_iA()
78 return (v_ia(sp, vp)); in v_iA()
89 v_ia(SCR *sp, VICMD *vp) in v_ia() argument
96 flags = set_txt_std(sp, vp, 0); in v_ia()
98 sp->lno = vp->m_start.lno; in v_ia()
115 return (v_txt(sp, vp, NULL, p, len, in v_ia()
116 0, OOBLNO, F_ISSET(vp, VC_C1SET) ? vp->count : 1, flags)); in v_ia()
126 v_iI(SCR *sp, VICMD *vp) in v_iI() argument
129 if (nonblank(sp, vp->m_start.lno, &sp->cno)) in v_iI()
134 return (v_ii(sp, vp)); in v_iI()
145 v_ii(SCR *sp, VICMD *vp) in v_ii() argument
152 flags = set_txt_std(sp, vp, 0); in v_ii()
154 sp->lno = vp->m_start.lno; in v_ii()
164 return (v_txt(sp, vp, NULL, p, len, in v_ii()
165 0, OOBLNO, F_ISSET(vp, VC_C1SET) ? vp->count : 1, flags)); in v_ii()
178 v_iO(SCR *sp, VICMD *vp) in v_iO() argument
180 return (io(sp, vp, O_cmd)); in v_iO()
190 v_io(SCR *sp, VICMD *vp) in v_io() argument
192 return (io(sp, vp, o_cmd)); in v_io()
196 io(SCR *sp, VICMD *vp, enum which cmd) in io() argument
203 flags = set_txt_std(sp, vp, TXT_ADDNEWLINE | TXT_APPENDEOL); in io()
233 return (v_txt(sp, vp, NULL, p, len, in io()
234 0, ai_line, F_ISSET(vp, VC_C1SET) ? vp->count : 1, flags)); in io()
246 v_change(SCR *sp, VICMD *vp) in v_change() argument
260 F_CLR(vp, VM_RCM_MASK); in v_change()
261 F_SET(vp, VM_RCM_SET); in v_change()
267 if (vp->m_start.lno == vp->m_stop.lno && in v_change()
268 db_eget(sp, vp->m_start.lno, &p, &len, &isempty)) { in v_change()
271 return (v_ia(sp, vp)); in v_change()
274 flags = set_txt_std(sp, vp, 0); in v_change()
284 lmode = F_ISSET(vp, VM_LMODE) ? CUT_LINEMODE : 0; in v_change()
286 vp->m_start.cno = 0; in v_change()
288 if (nonblank(sp, vp->m_start.lno, &vp->m_start.cno)) in v_change()
293 sp->lno = vp->m_start.lno; in v_change()
294 sp->cno = vp->m_start.cno; in v_change()
302 if (!lmode && vp->m_start.lno == vp->m_stop.lno) { in v_change()
309 F_ISSET(vp, VC_BUFFER) ? &vp->buffer : NULL, in v_change()
310 &vp->m_start, &vp->m_stop, lmode)) in v_change()
315 return (v_txt(sp, vp, &vp->m_stop, p, len, in v_change()
316 0, OOBLNO, F_ISSET(vp, VC_C1SET) ? vp->count : 1, flags)); in v_change()
331 F_ISSET(vp, VC_BUFFER) ? &vp->buffer : NULL, in v_change()
332 &vp->m_start, &vp->m_stop, lmode)) in v_change()
336 if (lmode && vp->m_start.cno) { in v_change()
341 if (db_get(sp, vp->m_start.lno, DBG_FATAL, &p, &len)) in v_change()
343 GET_SPACE_RETW(sp, bp, blen, vp->m_start.cno); in v_change()
344 MEMMOVE(bp, p, vp->m_start.cno); in v_change()
349 if (del(sp, &vp->m_start, &vp->m_stop, lmode)) in v_change()
354 if (db_insert(sp, vp->m_start.lno, bp, vp->m_start.cno)) in v_change()
356 sp->lno = vp->m_start.lno; in v_change()
357 len = sp->cno = vp->m_start.cno; in v_change()
361 if (db_eget(sp, vp->m_start.lno, &p, &len, &isempty)) { in v_change()
368 if (vp->m_start.cno >= len) in v_change()
371 rval = v_txt(sp, vp, NULL, p, len, in v_change()
372 0, OOBLNO, F_ISSET(vp, VC_C1SET) ? vp->count : 1, flags); in v_change()
386 v_Replace(SCR *sp, VICMD *vp) in v_Replace() argument
393 flags = set_txt_std(sp, vp, 0); in v_Replace()
396 if (db_eget(sp, vp->m_start.lno, &p, &len, &isempty)) { in v_Replace()
406 vp->m_stop.lno = vp->m_start.lno; in v_Replace()
407 vp->m_stop.cno = len ? len - 1 : 0; in v_Replace()
409 return (v_txt(sp, vp, &vp->m_stop, p, len, in v_Replace()
410 0, OOBLNO, F_ISSET(vp, VC_C1SET) ? vp->count : 1, flags)); in v_Replace()
420 v_subst(SCR *sp, VICMD *vp) in v_subst() argument
427 flags = set_txt_std(sp, vp, 0); in v_subst()
430 if (db_eget(sp, vp->m_start.lno, &p, &len, &isempty)) { in v_subst()
441 vp->m_stop.lno = vp->m_start.lno; in v_subst()
442 vp->m_stop.cno = in v_subst()
443 vp->m_start.cno + (F_ISSET(vp, VC_C1SET) ? vp->count - 1 : 0); in v_subst()
444 if (vp->m_stop.cno > len - 1) in v_subst()
445 vp->m_stop.cno = len - 1; in v_subst()
448 F_ISSET(vp, VC_BUFFER) ? &vp->buffer : NULL, in v_subst()
449 &vp->m_start, &vp->m_stop, 0)) in v_subst()
452 return (v_txt(sp, vp, &vp->m_stop, p, len, 0, OOBLNO, 1, flags)); in v_subst()
460 set_txt_std(SCR *sp, VICMD *vp, u_int32_t flags) in set_txt_std() argument
465 if (F_ISSET(vp, VC_ISDOT)) in set_txt_std()
511 (!MAPPED_KEYS_WAITING(sp) || !F_ISSET(vp, VC_C1SET))) in set_txt_std()