// Copyright (c) 2013 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef TOOLS_GN_STANDARD_OUT_H_ #define TOOLS_GN_STANDARD_OUT_H_ #include enum TextDecoration { DECORATION_NONE = 0, DECORATION_DIM, DECORATION_RED, DECORATION_GREEN, DECORATION_BLUE, DECORATION_YELLOW }; void OutputString(const std::string& output, TextDecoration dec = DECORATION_NONE); // If printing markdown, this generates table-of-contents entries with // links to the actual help; otherwise, prints a one-line description. void PrintSectionHelp(const std::string& line, const std::string& topic, const std::string& tag); // Prints a line for a command, assuming there is a colon. Everything before // the colon is the command (and is highlighted). After the colon if there is // a square bracket, the contents of the bracket is dimmed. // // The line is indented 2 spaces. void PrintShortHelp(const std::string& line); // Rules: // - Lines beginning with non-whitespace are highlighted up to the first // colon (or the whole line if not). // - Lines whose first non-whitespace character is a # are dimmed. void PrintLongHelp(const std::string& text, const std::string& tag = ""); #endif // TOOLS_GN_STANDARD_OUT_H_