diff --git a/cli/htmgo/tasks/astgen/entry.go b/cli/htmgo/tasks/astgen/entry.go index 8472c03..6c45551 100644 --- a/cli/htmgo/tasks/astgen/entry.go +++ b/cli/htmgo/tasks/astgen/entry.go @@ -37,6 +37,10 @@ const ModuleName = "github.com/maddalax/htmgo/framework/h" var PackageName = fmt.Sprintf("package %s", GeneratedDirName) var GeneratedFileLine = fmt.Sprintf("// Package %s THIS FILE IS GENERATED. DO NOT EDIT.", GeneratedDirName) +func normalizePath(path string) string { + return strings.ReplaceAll(path, `\`, "/") +} + func sliceCommonPrefix(dir1, dir2 string) string { // Use filepath.Clean to normalize the paths dir1 = filepath.Clean(dir1) @@ -62,9 +66,9 @@ func sliceCommonPrefix(dir1, dir2 string) string { // Return the longer one if len(slicedDir1) > len(slicedDir2) { - return slicedDir1 + return normalizePath(slicedDir1) } - return slicedDir2 + return normalizePath(slicedDir2) } func findPublicFuncsReturningHPartial(dir string, predicate func(partial Partial) bool) ([]Partial, error) { @@ -106,8 +110,8 @@ func findPublicFuncsReturningHPartial(dir string, predicate func(partial Partial if selectorExpr.Sel.Name == "Partial" { p := Partial{ Package: node.Name.Name, - Path: sliceCommonPrefix(cwd, path), - Import: sliceCommonPrefix(cwd, strings.ReplaceAll(filepath.Dir(path), `\`, `/`)), + Path: normalizePath(sliceCommonPrefix(cwd, path)), + Import: sliceCommonPrefix(cwd, normalizePath(filepath.Dir(path))), FuncName: funcDecl.Name.Name, } if predicate(p) { @@ -173,8 +177,8 @@ func findPublicFuncsReturningHPage(dir string) ([]Page, error) { if selectorExpr.Sel.Name == "Page" { pages = append(pages, Page{ Package: node.Name.Name, - Import: strings.ReplaceAll(filepath.Dir(path), `\`, `/`), - Path: path, + Import: normalizePath(filepath.Dir(path)), + Path: normalizePath(path), FuncName: funcDecl.Name.Name, }) break diff --git a/cli/htmgo/tasks/process/pid_windows.go b/cli/htmgo/tasks/process/pid_windows.go index 7036a92..44dd7fa 100644 --- a/cli/htmgo/tasks/process/pid_windows.go +++ b/cli/htmgo/tasks/process/pid_windows.go @@ -12,7 +12,10 @@ func KillProcess(process CmdWithFlags) error { if process.Cmd == nil || process.Cmd.Process == nil { return nil } - Run(NewRawCommand("killprocess", fmt.Sprintf("taskkill /F /T /PID %s", strconv.Itoa(process.Cmd.Process.Pid)))) + err := exec.Command("taskkill", "/F", "/T", "/PID", strconv.Itoa(process.Cmd.Process.Pid)).Run() + if err != nil { + fmt.Println(err) + } time.Sleep(time.Millisecond * 50) return nil }