def gitfixremote [ --name: string = "origin", ] { let url = (git remote get-url $name) let parsed = ($url | parse --regex '(https://)?(?P[^/]+)(/|:)(?P[^/]+)/(?P[^/\.]+)') if ($parsed | is-empty) { print "Unparseable remote" return } let parsed = ($parsed | get 0) if ($parsed.host in ["github.com" "git.nubo.sh"]) { git remote set-url $name $"https://($parsed.host)/($parsed.owner)/($parsed.repo).git" git remote set-url --push $name $"($parsed.host):($parsed.owner)/($parsed.repo).git" } else { print $"Unknown host: ($parsed.host)" } }