Lines Matching refs:vp

72 	VICMD cmd, *vp;
82 vp = &cmd;
83 memset(vp, 0, sizeof(VICMD));
86 F_SET(vp, VM_RCM_SET);
113 if (F_ISSET(vp, VM_RCM_SET | VM_RCM_SETFNB | VM_RCM_SETNNB)) {
137 vp->kp = &vikeys[':'];
142 memset(vp, 0, sizeof(VICMD));
157 switch (v_cmd(sp, DOT, vp, NULL, &comcount, &mapped)) {
172 if (F_ISSET(vp->kp, V_SECURE) && O_ISSET(sp, O_SECURE)) {
173 ex_emsg(sp, (const char *)KEY_NAME(sp, vp->key),
183 if (F_ISSET(vp, VC_ISDOT) && comcount)
187 F_SET(vp, vp->kp->flags);
190 if (F_ISSET(vp, V_ABS | V_ABS_C | V_ABS_L)) {
201 vp->m_start.lno = vp->m_stop.lno = vp->m_final.lno = sp->lno;
202 vp->m_start.cno = vp->m_stop.cno = vp->m_final.cno = sp->cno;
208 if (F_ISSET(vp, V_MOTION) &&
209 v_motion(sp, DOTMOTION, vp, &mapped)) {
225 if (F_ISSET(vp, VC_C1SET) && F_ISSET(vp, VM_LMODE))
226 vp->m_stop.lno += vp->count - 1;
232 v_comlog(sp, vp);
235 ex_continue: if (vp->kp->func(sp, vp))
283 if (F_ISSET(vp, V_DOT) && !mapped) {
292 if (F_ISSET(vp, VC_C1RESET))
318 switch (F_ISSET(vp, VM_RCM_MASK)) {
323 vp->m_final.cno = vs_rcm(sp,
324 vp->m_final.lno, F_ISSET(vip, VIP_RCM_LAST));
330 vp->m_final.cno = 0;
333 if (nonblank(sp, vp->m_final.lno, &vp->m_final.cno))
341 sp->lno = vp->m_final.lno;
342 sp->cno = vp->m_final.cno;
348 if ((F_ISSET(vp, V_ABS) ||
349 (F_ISSET(vp, V_ABS_L) && sp->lno != abst.lno) ||
350 (F_ISSET(vp, V_ABS_C) &&
417 if ((gcret = v_key(sp, vp, 0, ec_flags)) != GC_OK) \
419 if (vp->ev.e_value == K_ESCAPE) \
421 if (FL_ISSET(vp->ev.e_flags, CH_MAPPED)) \
423 key = vp->ev.e_c; \
446 v_cmd(SCR *sp, VICMD *dp, VICMD *vp, VICMD *ismotion, int *comcountp, int *mappedp)
464 gcret = v_key(sp, vp, 1, EC_MAPCOMMAND);
468 if (v_event(sp, vp))
470 if (ismotion != NULL && !F_ISSET(vp->kp, V_MOVE))
471 v_event_err(sp, &vp->ev);
495 if (vp->ev.e_value == K_ESCAPE)
502 if (FL_ISSET(vp->ev.e_flags, CH_MAPPED))
504 key = vp->ev.e_c;
516 KEY(vp->buffer, 0);
517 F_SET(vp, VC_BUFFER);
528 if (v_count(sp, vp, key, &vp->count))
531 F_SET(vp, VC_C1SET);
541 if (F_ISSET(vp, VC_BUFFER)) {
549 KEY(vp->buffer, 0);
550 F_SET(vp, VC_BUFFER);
561 kp = &vikeys[vp->key = key];
567 if (vp->key == 'D' && F_ISSET(vp, VC_C1SET)) {
569 vp->count = 0;
570 F_CLR(vp, VC_C1SET);
578 if (kp->func == NULL && (kp = v_alias(sp, vp, kp)) == NULL)
585 vp->kp = kp;
597 vp->ev.e_value == K_ESCAPE ?
614 vp->kp = &vikeys['u'];
615 F_SET(vp, VC_ISDOT);
626 if (F_ISSET(vp, VC_C1SET)) {
628 dp->count = vp->count;
630 if (F_ISSET(vp, VC_BUFFER))
631 dp->buffer = vp->buffer;
633 *vp = *dp;
641 if (F_ISSET(vp, VC_C1SET) && !LF_ISSET(V_CNT))
647 if (!LF_ISSET(V_OBUF) && F_ISSET(vp, VC_BUFFER))
652 KEY(vp->buffer, 0);
653 F_SET(vp, VC_BUFFER);
662 if (vp->key == '[' || vp->key == ']' || vp->key == 'Z') {
677 if (vp->key != key) {
689 if (vp->key == 'z') {
690 KEY(vp->character, 0);
691 if (ISDIGIT(vp->character)) {
692 if (v_count(sp, vp, vp->character, &vp->count2))
694 F_SET(vp, VC_C2SET);
695 KEY(vp->character, 0);
711 KEY(vp->character, 0);
738 v_motion(SCR *sp, VICMD *dm, VICMD *vp, int *mappedp)
752 if (F_ISSET(vp, VC_ISDOT)) {
759 gcret = v_cmd(sp, NULL, &motion, vp, &notused, mappedp);
771 if (F_ISSET(vp, VC_C1SET)) {
772 motion.count *= vp->count;
780 F_CLR(vp, VC_C1SET);
781 F_SET(vp, VC_C1RESET);
790 if (gcret != GC_EVENT && vp->key == motion.key) {
791 F_SET(vp, VM_LDOUBLE | VM_LMODE);
794 vp->m_start.lno = sp->lno;
795 vp->m_start.cno = 0;
804 vp->m_stop.lno = sp->lno + motion.count - 1;
805 if (db_get(sp, vp->m_stop.lno, 0, NULL, &len)) {
806 if (vp->m_stop.lno != 1 ||
807 (vp->key != 'c' && vp->key != '!')) {
811 vp->m_stop.cno = 0;
813 vp->m_stop.cno = len ? len - 1 : 0;
820 motion.rkp = vp->kp;
827 if (vp->kp == &tmotion) {
829 vp->kp = &vikeys['y'];
836 * the vp structure if necessary. This means that the motion
848 flags = F_ISSET(vp, VM_RCM_MASK);
853 F_CLR(vp, VM_RCM_MASK);
877 if (!db_exist(sp, vp->m_stop.lno)) {
878 if (vp->m_stop.lno != 1 ||
879 (vp->key != 'c' && vp->key != '!')) {
883 vp->m_stop.cno = 0;
891 vp->kp = &tmotion;
900 F_SET(vp, F_ISSET(&motion, VM_COMMASK | VM_RCM_MASK));
906 if (!F_ISSET(vp, VM_RCM_MASK))
907 F_SET(vp, flags);
914 vp->rkp = motion.kp;
925 vp->m_start = motion.m_stop;
926 vp->m_stop = motion.m_start;
928 vp->m_start = motion.m_start;
929 vp->m_stop = motion.m_stop;
931 vp->m_final = motion.m_final;
939 if (F_ISSET(vp->kp, V_DOT)) {
1114 v_alias(SCR *sp, VICMD *vp, const VIKEYS *kp)
1118 switch (vp->key) {
1121 vp->key = 'c';
1125 vp->key = 'd';
1129 vp->key = 'c';
1133 vp->key = 'y';
1139 NULL, &push, 1, CH_NOMAP | CH_QUOTED) ? NULL : &vikeys[vp->key]);
1147 v_count(SCR *sp, VICMD *vp, ARG_CHAR_T fkey, u_long *countp)
1151 vp->ev.e_c = fkey;
1158 tc = count * 10 + vp->ev.e_c - '0';
1162 if (v_key(sp, vp, 0,
1165 } while (ISDIGIT(vp->ev.e_c));
1171 if (v_key(sp, vp, 0, EC_MAPCOMMAND | EC_MAPNODIGIT) != GC_OK)
1173 } while (ISDIGIT(vp->ev.e_c));
1183 v_key(SCR *sp, VICMD *vp, int events_ok, u_int32_t ec_flags)
1188 for (evp = &vp->ev, quote = 0;;) {
1253 v_comlog(sp, vp)
1255 VICMD *vp;
1257 vtrace(sp, "vcmd: "WC, vp->key);
1258 if (F_ISSET(vp, VC_BUFFER))
1259 vtrace(sp, " buffer: "WC, vp->buffer);
1260 if (F_ISSET(vp, VC_C1SET))
1261 vtrace(sp, " c1: %lu", vp->count);
1262 if (F_ISSET(vp, VC_C2SET))
1263 vtrace(sp, " c2: %lu", vp->count2);
1264 vtrace(sp, " flags: 0x%x\n", vp->flags);