for (i = 0; MuttVars[i].option; i++)
if ((idx = mutt_option_index (var)) == -1) return 0;  else
int mutt_var_value_complete (char *buffer, size_t len, int pos){  char var[STRING], *pt;  int i;    if (buffer[0] == 0)    return 0;  SKIPWS (buffer);  pt = buffer + pos;  while ((pt > buffer) && !isspace ((unsigned char) *pt))    pt--;  pt++; /* move past the space */  if (*pt == '=') /* abort if no var before the '=' */    return 0;  if (strncmp (buffer, "set", 3) == 0)  {    strfcpy (var, pt, sizeof (var));    /* ignore the trailing '=' when comparing */    var[strlen (var) - 1] = 0;    for (i = 0; MuttVars[i].option; i++)    {      if (strcmp (MuttVars[i].option, var) == 0)      {	char tmp [LONG_STRING];	size_t dlen = buffer + len - pt;	char *vals[] = { "no", "yes", "ask-no", "ask-yes" };	strfcpy (tmp, pt, sizeof(tmp));		if ((DTYPE(MuttVars[i].type) == DT_STR) || 	    (DTYPE(MuttVars[i].type) == DT_PATH) ||	    (DTYPE(MuttVars[i].type) == DT_RX))	  snprintf(pt, dlen, "%s\"%s\"", tmp, 		   NONULL (*((char **) MuttVars[i].data)));	else if (DTYPE (MuttVars[i].type) == DT_QUAD)	  snprintf(pt, dlen, "%s%s", tmp,  vals[quadoption (MuttVars[i].data)]);	else if (DTYPE (MuttVars[i].type) == DT_NUM)	  snprintf (pt, dlen, "%s%d", tmp, (*((short *) MuttVars[i].data)));	return 1;      }    }  }  return 0;}