Ask coding questions

← Back to all posts
C++ Repls from git are still being set to bash

Guys please, tell me the workaround for this 🙏 I've seen threads as old as 2 yrs and as recent as 4 months from people who grab their repos from github and end up with the wrong language set on their repl. I pull the repo, it hangs on "Detecting Language" and never recovers. I have to close and reopen the window, and the language remains set to bash. It's a killer because the autocompletion/code intelligence isn't working :\

Edit 1: I tried to create a new C++ replit and then, after its creation, check out my repo but that didn't work. If you click on "existing repo" it creates another new repl.

Edit 2: One dodgey workaround: Create the repl as C++, go to the shell, delete main.cpp, clone your git repository into the same folder (using . as the target folder). I already have git connected to Replit, so that might have helped.

It happens consistently when I pull my repos that use libfmt and libscn, but I suspect it isn't the project itself causing the code intelligence problems: I originally created these input-output demos on Replit with the same libraries, and the original repls still work (they're also correctly marked C++).

Edit 3: Confirmed, it's not the project stopping the code intelligence, it works fine when I pull the git repo from the command line. I'm assuming it's because it's a bash Repl or, when the language detect fails, the Repl itself is never fully configured? If, however, the Repls "Bash" status is preventing code intelligence, is there any way repos could be set up to apply code intelligence on a per-extension basis?

If the language auto-detect isn't progressing (the two-year-old post mentions "large projects" as a possible culprit) can we not just choose our language from a drop down instead when creating a repl from a git repo? Or maybe run a shell command to change the repl over to another language, maybe set the language in a dot file? I've tried setting the language in the .replit file "language="C++", I've even tried hiding .sh files from linguist on github (although it already acknowledges my repo is C++).

Any help appreciated, thanks everyone!