Skip to content

Commit

Permalink
Merge pull request #275 from arrow2nd/fix-escape-brackets
Browse files Browse the repository at this point in the history
fix: unescaped brackets in path
  • Loading branch information
mattn authored Feb 3, 2024
2 parents d3104d5 + 3e87449 commit 8e00fd7
Showing 1 changed file with 10 additions and 3 deletions.
13 changes: 10 additions & 3 deletions langserver/handler.go
Original file line number Diff line number Diff line change
Expand Up @@ -692,14 +692,21 @@ func replaceCommandInputFilename(command, fname, rootPath string) string {
ext := filepath.Ext(fname)
ext = strings.TrimPrefix(ext, ".")

command = strings.Replace(command, "${INPUT}", fname, -1)
command = strings.Replace(command, "${INPUT}", escapeBrackets(fname), -1)
command = strings.Replace(command, "${FILEEXT}", ext, -1)
command = strings.Replace(command, "${FILENAME}", filepath.FromSlash(fname), -1)
command = strings.Replace(command, "${ROOT}", rootPath, -1)
command = strings.Replace(command, "${FILENAME}", escapeBrackets(filepath.FromSlash(fname)), -1)
command = strings.Replace(command, "${ROOT}", escapeBrackets(rootPath), -1)

return command
}

func escapeBrackets(path string) string {
path = strings.Replace(path, "(", `\(`, -1)
path = strings.Replace(path, ")", `\)`, -1)

return path
}

func succeeded(err error) bool {
exitErr, ok := err.(*exec.ExitError)
// When the context is canceled, the process is killed,
Expand Down

0 comments on commit 8e00fd7

Please sign in to comment.