Overview
On Windows, each bbin script has a .bat wrapper that interprets ^ in the args as an escape character. There appear to be two levels of escaping because you need to write ^^^^ to pass a single ^ to the bbin script. This problem doesn't happen on macOS/Linux because zsh and bash interpret ^ as a literal character.
I did a little research and I couldn't find an easy way to fix this while still keeping the .bat wrappers. I'm not sure how to fix this issue.
Steps to Reproduce
- Start with a script called
foo.clj:
(prn *command-line-args*)
- Install the script:
- In
zsh and bash, carets don't need to be escaped to be passed through:
In PowerShell and cmd.exe, carets need to be escaped four times:
$ foo ^hello
("hello")
$ foo ^^hello
("hello")
$ foo ^^^^hello
("^hello")
Overview
On Windows, each bbin script has a
.batwrapper that interprets^in the args as an escape character. There appear to be two levels of escaping because you need to write^^^^to pass a single^to the bbin script. This problem doesn't happen on macOS/Linux becausezshandbashinterpret^as a literal character.I did a little research and I couldn't find an easy way to fix this while still keeping the
.batwrappers. I'm not sure how to fix this issue.Steps to Reproduce
foo.clj:zshandbash, carets don't need to be escaped to be passed through:cmd.exe, carets need to be escaped four times: