mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2026-08-06 21:48:30 -04:00
@@ -471,12 +471,9 @@ output_path = '%s'
|
|||||||
case TemplateKindTerminal:
|
case TemplateKindTerminal:
|
||||||
appendTerminalConfig(opts, cfgFile, tmpDir, tmpl.Commands, tmpl.Flatpaks, tmpl.ConfigFile)
|
appendTerminalConfig(opts, cfgFile, tmpDir, tmpl.Commands, tmpl.Flatpaks, tmpl.ConfigFile)
|
||||||
case TemplateKindVSCode:
|
case TemplateKindVSCode:
|
||||||
appendVSCodeConfig(cfgFile, "vscode", filepath.Join(homeDir, ".vscode/extensions"), opts.ShellDir)
|
for _, editor := range vscodeEditors {
|
||||||
appendVSCodeConfig(cfgFile, "codium", filepath.Join(homeDir, ".vscode-oss/extensions"), opts.ShellDir)
|
appendVSCodeConfig(cfgFile, editor.name, editor.extensionsDir(homeDir), opts.ShellDir)
|
||||||
appendVSCodeConfig(cfgFile, "codeoss", filepath.Join(homeDir, ".config/Code - OSS/extensions"), opts.ShellDir)
|
}
|
||||||
appendVSCodeConfig(cfgFile, "cursor", filepath.Join(homeDir, ".cursor/extensions"), opts.ShellDir)
|
|
||||||
appendVSCodeConfig(cfgFile, "windsurf", filepath.Join(homeDir, ".windsurf/extensions"), opts.ShellDir)
|
|
||||||
appendVSCodeConfig(cfgFile, "vscode-insiders", filepath.Join(homeDir, ".vscode-insiders/extensions"), opts.ShellDir)
|
|
||||||
case TemplateKindEmacs:
|
case TemplateKindEmacs:
|
||||||
if utils.EmacsConfigDir() != "" {
|
if utils.EmacsConfigDir() != "" {
|
||||||
appendConfig(opts, cfgFile, tmpl.Commands, tmpl.Flatpaks, tmpl.ConfigDirs, tmpl.ConfigFile)
|
appendConfig(opts, cfgFile, tmpl.Commands, tmpl.Flatpaks, tmpl.ConfigDirs, tmpl.ConfigFile)
|
||||||
@@ -633,6 +630,23 @@ func appExists(checker utils.AppChecker, checkCmd []string, checkFlatpaks []stri
|
|||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type vscodeEditor struct {
|
||||||
|
name string
|
||||||
|
dataDir string
|
||||||
|
}
|
||||||
|
|
||||||
|
var vscodeEditors = []vscodeEditor{
|
||||||
|
{"vscode", ".vscode"},
|
||||||
|
{"codium", ".vscode-oss"},
|
||||||
|
{"cursor", ".cursor"},
|
||||||
|
{"windsurf", ".windsurf"},
|
||||||
|
{"vscode-insiders", ".vscode-insiders"},
|
||||||
|
}
|
||||||
|
|
||||||
|
func (e vscodeEditor) extensionsDir(homeDir string) string {
|
||||||
|
return filepath.Join(homeDir, e.dataDir, "extensions")
|
||||||
|
}
|
||||||
|
|
||||||
func appendVSCodeConfig(cfgFile *os.File, name, extBaseDir, shellDir string) {
|
func appendVSCodeConfig(cfgFile *os.File, name, extBaseDir, shellDir string) {
|
||||||
pattern := filepath.Join(extBaseDir, "danklinux.dms-theme-*")
|
pattern := filepath.Join(extBaseDir, "danklinux.dms-theme-*")
|
||||||
matches, err := filepath.Glob(pattern)
|
matches, err := filepath.Glob(pattern)
|
||||||
@@ -1168,16 +1182,8 @@ func CheckTemplates(checker utils.AppChecker) []TemplateCheck {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func checkVSCodeExtension(homeDir string) bool {
|
func checkVSCodeExtension(homeDir string) bool {
|
||||||
extDirs := []string{
|
for _, editor := range vscodeEditors {
|
||||||
filepath.Join(homeDir, ".vscode/extensions"),
|
pattern := filepath.Join(editor.extensionsDir(homeDir), "danklinux.dms-theme-*")
|
||||||
filepath.Join(homeDir, ".vscode-oss/extensions"),
|
|
||||||
filepath.Join(homeDir, ".config/Code - OSS/extensions"),
|
|
||||||
filepath.Join(homeDir, ".cursor/extensions"),
|
|
||||||
filepath.Join(homeDir, ".windsurf/extensions"),
|
|
||||||
}
|
|
||||||
|
|
||||||
for _, extDir := range extDirs {
|
|
||||||
pattern := filepath.Join(extDir, "danklinux.dms-theme-*")
|
|
||||||
if matches, err := filepath.Glob(pattern); err == nil && len(matches) > 0 {
|
if matches, err := filepath.Glob(pattern); err == nil && len(matches) > 0 {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2780,7 +2780,7 @@ Item {
|
|||||||
tags: ["matugen", "vscode", "code", "template"]
|
tags: ["matugen", "vscode", "code", "template"]
|
||||||
settingKey: "matugenTemplateVscode"
|
settingKey: "matugenTemplateVscode"
|
||||||
text: "VS Code"
|
text: "VS Code"
|
||||||
description: getTemplateDescription("vscode", "")
|
description: getTemplateDescription("vscode", I18n.tr("Requires the DMS Theme extension from the editor marketplace", "vscode matugen template description"))
|
||||||
descriptionColor: getTemplateDescriptionColor("vscode")
|
descriptionColor: getTemplateDescriptionColor("vscode")
|
||||||
visible: SettingsData.runDmsMatugenTemplates
|
visible: SettingsData.runDmsMatugenTemplates
|
||||||
checked: SettingsData.matugenTemplateVscode
|
checked: SettingsData.matugenTemplateVscode
|
||||||
|
|||||||
@@ -4692,14 +4692,20 @@
|
|||||||
"appearance",
|
"appearance",
|
||||||
"code",
|
"code",
|
||||||
"colors",
|
"colors",
|
||||||
|
"colour",
|
||||||
|
"editor",
|
||||||
|
"extension",
|
||||||
"look",
|
"look",
|
||||||
|
"marketplace",
|
||||||
"matugen",
|
"matugen",
|
||||||
|
"requires",
|
||||||
"scheme",
|
"scheme",
|
||||||
"style",
|
"style",
|
||||||
"template",
|
"template",
|
||||||
"theme",
|
"theme",
|
||||||
"vscode"
|
"vscode"
|
||||||
]
|
],
|
||||||
|
"description": "Requires the DMS Theme extension from the editor marketplace"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"section": "matugenTemplateWezterm",
|
"section": "matugenTemplateWezterm",
|
||||||
|
|||||||
Reference in New Issue
Block a user