Home | History | Annotate | Download | only in src

Lines Matching defs:cmd

508 get_history_event(const char *cmd, int *cindex, int qchar)
517 if (cmd[idx++] != history_expansion_char)
521 if (cmd[idx] == history_expansion_char || cmd[idx] == '\0') {
524 *cindex = cmd[idx]? (idx + 1):idx;
528 if (cmd[idx] == '-') {
533 if ('0' <= cmd[idx] && cmd[idx] <= '9') {
537 while (cmd[idx] && '0' <= cmd[idx] && cmd[idx] <= '9') {
538 num = num * 10 + cmd[idx] - '0';
551 if (cmd[idx] == '?') {
556 while (cmd[idx]) {
557 if (cmd[idx] == '\n')
559 if (sub && cmd[idx] == '?')
561 if (!sub && (cmd[idx] == ':' || cmd[idx] == ' '
562 || cmd[idx] == '\t' || cmd[idx] == qchar))
567 if (sub && cmd[idx] == '?')
576 (void)strncpy(pat, cmd + begin, len);
641 const char *ptr, *cmd;
695 cmd = command + offs + idx + 1;
699 if (*cmd == '%') /* last word matched by ?pat? */
701 else if (strchr("^*$-0123456789", *cmd)) {
703 if (*cmd == '^')
704 start = end = 1, cmd++;
705 else if (*cmd == '$')
706 start = -1, cmd++;
707 else if (*cmd == '*')
708 start = 1, cmd++;
709 else if (*cmd == '-' || isdigit((unsigned char) *cmd)) {
711 while (*cmd && '0' <= *cmd && *cmd <= '9')
712 start = start * 10 + *cmd++ - '0';
714 if (*cmd == '-') {
715 if (isdigit((unsigned char) cmd[1])) {
716 cmd++;
718 while (*cmd && '0' <= *cmd && *cmd <= '9')
719 end = end * 10 + *cmd++ - '0';
720 } else if (cmd[1] == '$') {
721 cmd += 2;
724 cmd++;
727 } else if (*cmd == '*')
728 end = -1, cmd++;
746 if (*cmd == '\0' || ((size_t)(cmd - (command + offs)) >= cmdlen)) {
751 for (; *cmd; cmd++) {
752 if (*cmd == ':')
754 else if (*cmd == 'h') { /* remove trailing path */
757 } else if (*cmd == 't') { /* remove leading path */
763 } else if (*cmd == 'r') { /* remove trailing suffix */
766 } else if (*cmd == 'e') { /* remove all but suffix */
772 } else if (*cmd == 'p') /* print only */
774 else if (*cmd == 'g')
776 else if (*cmd == 's' || *cmd == '&') {
781 if (*cmd == '&' && (from == NULL || to == NULL))
783 else if (*cmd == 's') {
784 delim = *(++cmd), cmd++;
793 for (; *cmd && *cmd != delim; cmd++) {
794 if (*cmd == '\\' && cmd[1] == delim)
795 cmd++;
808 what[len++] = *cmd;
826 cmd++; /* shift after delim */
827 if (!*cmd)
839 for (; *cmd && *cmd != delim; cmd++) {
852 if (*cmd == '&') {
858 if (*cmd == '\\'
859 && (*(cmd + 1) == delim
860 || *(cmd + 1) == '&'))
861 cmd++;
862 with[len++] = *cmd;