diff options
-rw-r--r-- | clang-tools-extra/clangd/tool/ClangdMain.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/clang-tools-extra/clangd/tool/ClangdMain.cpp b/clang-tools-extra/clangd/tool/ClangdMain.cpp index 74809e499ce..42c9601588b 100644 --- a/clang-tools-extra/clangd/tool/ClangdMain.cpp +++ b/clang-tools-extra/clangd/tool/ClangdMain.cpp @@ -515,6 +515,11 @@ clangd accepts flags on the commandline, and in the CLANGD_FLAGS environment var if (Tracer) TracingSession.emplace(*Tracer); + // If a user ran `clangd` in a terminal without redirecting anything, + // it's somewhat likely they're confused about how to use clangd. + // Show them the help overview, which explains. + if (llvm::outs().is_displayed() && llvm::errs().is_displayed()) + llvm::errs() << Overview << "\n"; // Use buffered stream to stderr (we still flush each log message). Unbuffered // stream can cause significant (non-deterministic) latency for the logger. llvm::errs().SetBuffered(); |