As suggested in the HN thread , by replacing // with /**/ , we can dodge the formatting problem! So, in my scripts going forward, I will be using: /*usr/local/go/bin/go run "$0" "$@"; exit; */ package main import "fmt" func main () { fmt.Println( "Hello world" ) } Note here the semicolon on exit; , it will not work without it. https://lorentz.app/blog-item.html?id=go-shebang