giter8 icon indicating copy to clipboard operation
giter8 copied to clipboard

SBT prompt for 'new scala/scala-seed.g8' is broken in Windows using MSYS2 / Git Bash / Cygwin

Open bruno-medeiros opened this issue 6 years ago • 2 comments

steps

Run sbt new scala/scala-seed.g8 in MSYS2 / Git Bash / Cygwin The new task will ask for the new project name

problem

Typing characters into the prompt, but they will not be displayed. Also backspace gets interpreted as a character (\177), not as a deletion. Pressing either creates a project with weird name:

image

expectation

Typed characters are displayed, and backspace/delete delete characters (and arrow keys move, etc)

notes

sbt version: 12.8

Tried with Git-Bash: Git-2.20.1-64-bit and MSYS2: msys2-x86_64-20180531

bruno-medeiros avatar Jan 31 '19 12:01 bruno-medeiros

https://github.com/sbt/sbt/issues/5063 as a workaround, suggested to use --supershell=false for sbt or update sbt version

eugeniyk avatar Jun 01 '21 16:06 eugeniyk

Although this may have been fixed in sbt for sbt new, supershell still interferes the same way for g8Scaffold when a scaffold has variable parameters. Maybe this should be filed as a new issue.

The scaffold case is perhaps even more frustrating, because you're often in the middle of long-running interactive sbt shell session when using g8Scaffold, unlike sbt new—starting another shell session with --supershell=false disrupts you mid-workflow.

(I've tried various forms of set Global/useSuperShell := false and set g8Scaffold/useSuperShell := false in an interactive session without success in actually disabling the super shell, maybe that's a separate issue for upstream sbt).

ches avatar Jul 25 '21 12:07 ches