Thanks for your answer.
Ill try to explain why I still believe it would be useful.
The existence of both a project initializer and documentation does not mean either is redundant. The best practices are scattered over many pages and never show the full picture. This makes it difficult to completely grasp how one is meant to setup a project, and furthermore many may choose to skip a bunch of steps because they just managed to get something half working.
It also encourages some bad practices, such as
SET(CMAKE_CXX_STANDARD), and storing
.cpp files in the root folder. This is completely understandable because the focus of a tutorial is explaining concepts in a simple manner, but it does not make sense when you are creating a project initializer.
Your second argument concerning language could simply be covered by making it an argument: ala
cmake init --language c++ or via an interactive cli - or for starters just say its experimental and for c++ only.
Overall I know that people are having a hard time learning how to write cmake, and I believe there exists more half-correct projects out there than proper ones. The result of this is a torn ecosystem which makes it more difficult for other tools, such as dependency managers (GitHub - cpm-cmake/CPM.cmake: 📦 CMake's missing package manager. A small CMake script for setup-fre) to consume cmake libraries.