summaryrefslogtreecommitdiffhomepage
path: root/packages/tui/internal/util/ide.go
blob: 7b3832f9b5efe66fd926c155b4ff24272ec5f47f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package util

import (
	"os"
	"strings"
)

var SUPPORTED_IDES = []struct {
	Search    string
	ShortName string
}{
	{"Windsurf", "Windsurf"},
	{"Visual Studio Code", "vscode"},
	{"Cursor", "Cursor"},
	{"VSCodium", "VSCodium"},
}

func IsVSCode() bool {
	return os.Getenv("OPENCODE_CALLER") == "vscode"
}

func Ide() string {
	for _, ide := range SUPPORTED_IDES {
		if strings.Contains(os.Getenv("GIT_ASKPASS"), ide.Search) {
			return ide.ShortName
		}
	}

	return "unknown"
}