summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--clang-tools-extra/clangd/tool/ClangdMain.cpp5
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();
OpenPOWER on IntegriCloud