kinds & CompletionKind::COMMAND_ELIGIBLE) === 0) { return $analysis; } $trimmed = \rtrim($analysis->input); if (\preg_match('/^([a-z][a-z0-9-]*)\s+.*?(-{1,2}[\w-]*)$/', $trimmed, $matches)) { return $analysis->withContext(CompletionKind::COMMAND_OPTION, $matches[2], $matches[1]); } if ($analysis->input !== $trimmed) { return $analysis; } if (!\preg_match('/^([a-z][a-z0-9-]*)$/', $trimmed, $matches)) { return $analysis; } return $analysis->withContext( CompletionKind::COMMAND | CompletionKind::KEYWORD | CompletionKind::SYMBOL, $matches[1] ); } }