From e27c7560a24afee9599a4ba065d05e8030f630a8 Mon Sep 17 00:00:00 2001 From: Hayden Hargreaves Date: Wed, 8 Apr 2026 17:28:01 -0700 Subject: [PATCH] fix: fixed issues the @janitor found --- internal/editor/model.go | 3 +-- internal/editor/model_builder.go | 2 +- internal/syntax/treesitter_behavior_test.go | 5 ++--- internal/theme/loader.go | 8 +------- internal/theme/loader_test.go | 22 --------------------- 5 files changed, 5 insertions(+), 35 deletions(-) diff --git a/internal/editor/model.go b/internal/editor/model.go index 61774f2..c2b92ad 100644 --- a/internal/editor/model.go +++ b/internal/editor/model.go @@ -51,7 +51,6 @@ type Model struct { registers map[rune]core.Register // name -> register // Visual styles - // currentTheme string // Name of current theme themes map[string]theme.EditorTheme syntax syntax.Engine @@ -186,7 +185,7 @@ func (m *Model) replayInsert() { } } -// TODO: Fix this shitty shit shit shit +// TODO: This can't be the best way.... func (m *Model) processInsertKey(key string) { win := m.ActiveWindow() buf := m.ActiveBuffer() diff --git a/internal/editor/model_builder.go b/internal/editor/model_builder.go index 377d2eb..6d5a433 100644 --- a/internal/editor/model_builder.go +++ b/internal/editor/model_builder.go @@ -20,7 +20,7 @@ func NewModelBuilder() *ModelBuilder { var embededThemes map[string]theme.EditorTheme embededThemesJson, err := theme.LoadEmbeddedThemesJSON() if err == nil { - embededThemes = theme.MapEmbededThemeToEditorTheme(embededThemesJson) + embededThemes = theme.MapEmbeddedThemeToEditorTheme(embededThemesJson) } // Always have a default theme diff --git a/internal/syntax/treesitter_behavior_test.go b/internal/syntax/treesitter_behavior_test.go index 34449db..fa893de 100644 --- a/internal/syntax/treesitter_behavior_test.go +++ b/internal/syntax/treesitter_behavior_test.go @@ -2,6 +2,7 @@ package syntax import ( "fmt" + "maps" "strings" "testing" @@ -361,9 +362,7 @@ func makeThemeWithCaptureOverrides(lineFg, keywordFg, stringFg lipgloss.Color) t func cloneStyleMap(in map[string]lipgloss.Style) map[string]lipgloss.Style { out := make(map[string]lipgloss.Style, len(in)) - for k, v := range in { - out[k] = v - } + maps.Copy(out, in) return out } diff --git a/internal/theme/loader.go b/internal/theme/loader.go index f7f6219..579e4c2 100644 --- a/internal/theme/loader.go +++ b/internal/theme/loader.go @@ -46,7 +46,7 @@ func LoadEmbeddedThemesJSON() (map[string]ThemeJSON, error) { return out, nil } -func MapEmbededThemeToEditorTheme(em map[string]ThemeJSON) map[string]EditorTheme { +func MapEmbeddedThemeToEditorTheme(em map[string]ThemeJSON) map[string]EditorTheme { out := make(map[string]EditorTheme, len(em)) for name, in := range em { @@ -111,12 +111,6 @@ func MapEmbededThemeToEditorTheme(em map[string]ThemeJSON) map[string]EditorThem return out } -// MapEmbeddedThemeToEditorTheme is a correctly spelled alias for -// MapEmbededThemeToEditorTheme. -func MapEmbeddedThemeToEditorTheme(em map[string]ThemeJSON) map[string]EditorTheme { - return MapEmbededThemeToEditorTheme(em) -} - func styleFromJSON(in ColorStyleJSON) lipgloss.Style { out := lipgloss.NewStyle() diff --git a/internal/theme/loader_test.go b/internal/theme/loader_test.go index 18ce37d..92a09fb 100644 --- a/internal/theme/loader_test.go +++ b/internal/theme/loader_test.go @@ -90,28 +90,6 @@ func TestMapEmbeddedThemeToEditorTheme_MapsStylesAndNormalizesSyntaxKeys(t *test } } -func TestMapEmbededThemeToEditorTheme_AliasMatchesPrimary(t *testing.T) { - in := map[string]ThemeJSON{ - "x": { - Name: "x", - Line: ColorStyleJSON{FG: "#ffffff", BG: "#000000"}, - Syntax: SyntaxJSON{ - Group: map[string]string{"keyword": "#123456"}, - }, - }, - } - - a := MapEmbededThemeToEditorTheme(in) - b := MapEmbeddedThemeToEditorTheme(in) - - if len(a) != len(b) { - t.Fatalf("alias map size mismatch: %d vs %d", len(a), len(b)) - } - if colorHex(a["x"].Syntax.Group["keyword"].GetForeground()) != colorHex(b["x"].Syntax.Group["keyword"].GetForeground()) { - t.Fatalf("alias should produce identical mapped styles") - } -} - func colorHex(c any) string { return fmt.Sprint(c) }