From 63e54541fea4ee2dd1bab5644e5dfa0e52619960 Mon Sep 17 00:00:00 2001 From: Ariane Emory <97994360+ariane-emory@users.noreply.github.com> Date: Sun, 7 Dec 2025 23:20:40 -0500 Subject: [PATCH] fix: Sort themes in the /theme modal alphabetically (resolves #5217) (#5219) Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com> --- .../src/cli/cmd/tui/component/dialog-theme-list.tsx | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/packages/opencode/src/cli/cmd/tui/component/dialog-theme-list.tsx b/packages/opencode/src/cli/cmd/tui/component/dialog-theme-list.tsx index c6d22be7b..3c4c9b4cd 100644 --- a/packages/opencode/src/cli/cmd/tui/component/dialog-theme-list.tsx +++ b/packages/opencode/src/cli/cmd/tui/component/dialog-theme-list.tsx @@ -5,10 +5,12 @@ import { onCleanup, onMount } from "solid-js" export function DialogThemeList() { const theme = useTheme() - const options = Object.keys(theme.all()).map((value) => ({ - title: value, - value: value, - })) + const options = Object.keys(theme.all()) + .sort((a, b) => a.localeCompare(b, undefined, { sensitivity: 'base' })) + .map((value) => ({ + title: value, + value: value, + })) const dialog = useDialog() let confirmed = false let ref: DialogSelectRef