public function testGetConsoleColorDisabled() { $colorMode = Configuration::COLOR_MODE_DISABLED; $factory = new ConsoleColorFactory($colorMode); $colors = $factory->getConsoleColor(); $themes = $colors->getThemes(); $this->assertFalse($colors->isStyleForced()); $this->assertEquals(array('none'), $themes['line_number']); }
/** * Format the code represented by $reflector. * * @param \Reflector $reflector * @param null|string $colorMode (default: null) * * @return string formatted code */ public static function format(\Reflector $reflector, $colorMode = null) { $colorMode = $colorMode ?: Configuration::COLOR_MODE_AUTO; if ($fileName = $reflector->getFileName()) { if (!is_file($fileName)) { throw new RuntimeException('Source code unavailable.'); } $file = file_get_contents($fileName); $start = $reflector->getStartLine(); $end = $reflector->getEndLine() - $start; $factory = new ConsoleColorFactory($colorMode); $colors = $factory->getConsoleColor(); $highlighter = new Highlighter($colors); return $highlighter->getCodeSnippet($file, $start, 0, $end); // no need to escape this bad boy, since (for now) it's being output raw. // return OutputFormatter::escape(implode(PHP_EOL, $code)); return implode(PHP_EOL, $code); } else { throw new RuntimeException('Source code unavailable.'); } }
/** * {@inheritdoc} */ protected function execute(InputInterface $input, OutputInterface $output) { $info = $this->fileInfo(); $num = $input->getOption('num'); $factory = new ConsoleColorFactory($this->colorMode); $colors = $factory->getConsoleColor(); $highlighter = new Highlighter($colors); $contents = file_get_contents($info['file']); $output->page($highlighter->getCodeSnippet($contents, $info['line'], $num, $num), ShellOutput::OUTPUT_RAW); }