Example #1
0
int
vibackwardwordend(char **args)
{
    int n = zmult;

    if (n < 0) {
	int ret;
	zmult = -n;
	ret = viforwardwordend(args);
	zmult = n;
	return ret;
    }
    while (n-- && zlecs > 1) {
	int cc = wordclass(zleline[zlecs]);
	DECCS();
	while (zlecs) {
	    if (wordclass(zleline[zlecs]) != cc || ZC_iblank(zleline[zlecs]))
		break;
	    DECCS();
	}
	while (zlecs && ZC_iblank(zleline[zlecs]))
	    DECCS();
    }
    return 0;
}
Example #2
0
int
vibackwardwordend(char **args)
{
    int n = zmult;

    if (n < 0) {
	int ret;
	zmult = -n;
	ret = viforwardwordend(args);
	zmult = n;
	return ret;
    }
    while (n-- && zlecs > 1) {
	int start = 0;
	if (Z_vialnum(zleline[zlecs]))
	    start = 1;
	else if (!ZC_inblank(zleline[zlecs]))
	    start = 2;
	DECCS();
	while (zlecs) {
	    int same = (start != 1) && ZC_iblank(zleline[zlecs]);
	    if (start)
		same |= Z_vialnum(zleline[zlecs]);
	    if (same == (start == 2))
		break;
	    DECCS();
	}
	while (zlecs && ZC_iblank(zleline[zlecs]))
	    DECCS();
    }
    return 0;
}