From bf1a7365d29e3cc395508f79c10da0b88a148d31 Mon Sep 17 00:00:00 2001 From: Alies Lapatsin Date: Wed, 31 May 2023 13:30:52 +0200 Subject: [PATCH] Use PHPStorm output format by default on JetBrains terminals --- src/Psalm/Internal/Cli/Psalm.php | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/Psalm/Internal/Cli/Psalm.php b/src/Psalm/Internal/Cli/Psalm.php index 7401cd1e621..c9473b30eb7 100644 --- a/src/Psalm/Internal/Cli/Psalm.php +++ b/src/Psalm/Internal/Cli/Psalm.php @@ -403,7 +403,20 @@ private static function initOutputFormat(array $options): string { return isset($options['output-format']) && is_string($options['output-format']) ? $options['output-format'] - : Report::TYPE_CONSOLE; + : self::findDefaultOutputFormat(); + } + + /** + * @return Report::TYPE_* + */ + private static function findDefaultOutputFormat(): string + { + $emulator = getenv('TERMINAL_EMULATOR'); + if (is_string($emulator) && substr($emulator, 0, 9) === 'JetBrains') { + return Report::TYPE_PHP_STORM; + } + + return Report::TYPE_CONSOLE; } private static function initShowInfo(array $options): bool