From 004c5d309bbd1baa91d803f07a0d80db9ebd7e00 Mon Sep 17 00:00:00 2001 From: Nate Butler Date: Thu, 2 Nov 2023 14:23:43 -0400 Subject: [PATCH] WIP --- crates/theme2/src/import.rs | 222 ++++++++++++++++++++++++++++++++++++ crates/theme2/src/theme2.rs | 1 + 2 files changed, 223 insertions(+) create mode 100644 crates/theme2/src/import.rs diff --git a/crates/theme2/src/import.rs b/crates/theme2/src/import.rs new file mode 100644 index 0000000000..147babf007 --- /dev/null +++ b/crates/theme2/src/import.rs @@ -0,0 +1,222 @@ +use crate::ThemeColorsRefinement; + +struct ImportedThemeFamily { + pub id: String, + pub name: String, + pub author: String, + pub url: String, + pub license: String, + pub themes: Vec, +} + +#[derive(Debug)] +pub struct VSCodeColors { + terminal_background: String, + terminal_foreground: String, + terminal_ansi_bright_black: String, + terminal_ansi_bright_red: String, + terminal_ansi_bright_green: String, + terminal_ansi_bright_yellow: String, + terminal_ansi_bright_blue: String, + terminal_ansi_bright_magenta: String, + terminal_ansi_bright_cyan: String, + terminal_ansi_bright_white: String, + terminal_ansi_black: String, + terminal_ansi_red: String, + terminal_ansi_green: String, + terminal_ansi_yellow: String, + terminal_ansi_blue: String, + terminal_ansi_magenta: String, + terminal_ansi_cyan: String, + terminal_ansi_white: String, + focus_border: String, + foreground: String, + selection_background: String, + error_foreground: String, + button_background: String, + button_foreground: String, + button_secondary_background: String, + button_secondary_foreground: String, + button_secondary_hover_background: String, + dropdown_background: String, + dropdown_border: String, + dropdown_foreground: String, + input_background: String, + input_foreground: String, + input_border: String, + input_placeholder_foreground: String, + input_option_active_border: String, + input_validation_info_border: String, + input_validation_warning_border: String, + input_validation_error_border: String, + badge_foreground: String, + badge_background: String, + progress_bar_background: String, + list_active_selection_background: String, + list_active_selection_foreground: String, + list_drop_background: String, + list_focus_background: String, + list_highlight_foreground: String, + list_hover_background: String, + list_inactive_selection_background: String, + list_warning_foreground: String, + list_error_foreground: String, + activity_bar_background: String, + activity_bar_inactive_foreground: String, + activity_bar_foreground: String, + activity_bar_active_border: String, + activity_bar_active_background: String, + activity_bar_badge_background: String, + activity_bar_badge_foreground: String, + side_bar_background: String, + side_bar_title_foreground: String, + side_bar_section_header_background: String, + side_bar_section_header_border: String, + editor_group_border: String, + editor_group_drop_background: String, + editor_group_header_tabs_background: String, + tab_active_background: String, + tab_active_foreground: String, + tab_border: String, + tab_active_border_top: String, + tab_inactive_background: String, + tab_inactive_foreground: String, + editor_foreground: String, + editor_background: String, + editor_line_number_foreground: String, + editor_selection_background: String, + editor_selection_highlight_background: String, + editor_fold_background: String, + editor_word_highlight_background: String, + editor_word_highlight_strong_background: String, + editor_find_match_background: String, + editor_find_match_highlight_background: String, + editor_find_range_highlight_background: String, + editor_hover_highlight_background: String, + editor_line_highlight_border: String, + editor_link_active_foreground: String, + editor_range_highlight_background: String, + editor_snippet_tabstop_highlight_background: String, + editor_snippet_tabstop_highlight_border: String, + editor_snippet_final_tabstop_highlight_background: String, + editor_snippet_final_tabstop_highlight_border: String, + editor_whitespace_foreground: String, + editor_indent_guide_background: String, + editor_indent_guide_active_background: String, + editor_ruler_foreground: String, + editor_code_lens_foreground: String, + editor_bracket_highlight_foreground1: String, + editor_bracket_highlight_foreground2: String, + editor_bracket_highlight_foreground3: String, + editor_bracket_highlight_foreground4: String, + editor_bracket_highlight_foreground5: String, + editor_bracket_highlight_foreground6: String, + editor_bracket_highlight_unexpected_bracket_foreground: String, + editor_overview_ruler_border: String, + editor_overview_ruler_selection_highlight_foreground: String, + editor_overview_ruler_word_highlight_foreground: String, + editor_overview_ruler_word_highlight_strong_foreground: String, + editor_overview_ruler_modified_foreground: String, + editor_overview_ruler_added_foreground: String, + editor_overview_ruler_deleted_foreground: String, + editor_overview_ruler_error_foreground: String, + editor_overview_ruler_warning_foreground: String, + editor_overview_ruler_info_foreground: String, + editor_error_foreground: String, + editor_warning_foreground: String, + editor_gutter_modified_background: String, + editor_gutter_added_background: String, + editor_gutter_deleted_background: String, + git_decoration_modified_resource_foreground: String, + git_decoration_deleted_resource_foreground: String, + git_decoration_untracked_resource_foreground: String, + git_decoration_ignored_resource_foreground: String, + git_decoration_conflicting_resource_foreground: String, + diff_editor_inserted_text_background: String, + diff_editor_removed_text_background: String, + inline_chat_region_highlight: String, + editor_widget_background: String, + editor_suggest_widget_background: String, + editor_suggest_widget_foreground: String, + editor_suggest_widget_selected_background: String, + editor_hover_widget_background: String, + editor_hover_widget_border: String, + editor_marker_navigation_background: String, + peek_view_border: String, + peek_view_editor_background: String, + peek_view_editor_match_highlight_background: String, + peek_view_result_background: String, + peek_view_result_file_foreground: String, + peek_view_result_line_foreground: String, + peek_view_result_match_highlight_background: String, + peek_view_result_selection_background: String, + peek_view_result_selection_foreground: String, + peek_view_title_background: String, + peek_view_title_description_foreground: String, + peek_view_title_label_foreground: String, + merge_current_header_background: String, + merge_incoming_header_background: String, + editor_overview_ruler_current_content_foreground: String, + editor_overview_ruler_incoming_content_foreground: String, + panel_background: String, + panel_border: String, + panel_title_active_border: String, + panel_title_active_foreground: String, + panel_title_inactive_foreground: String, + status_bar_background: String, + status_bar_foreground: String, + status_bar_debugging_background: String, + status_bar_debugging_foreground: String, + status_bar_no_folder_background: String, + status_bar_no_folder_foreground: String, + status_bar_item_prominent_background: String, + status_bar_item_prominent_hover_background: String, + status_bar_item_remote_foreground: String, + status_bar_item_remote_background: String, + title_bar_active_background: String, + title_bar_active_foreground: String, + title_bar_inactive_background: String, + title_bar_inactive_foreground: String, + extension_button_prominent_foreground: String, + extension_button_prominent_background: String, + extension_button_prominent_hover_background: String, + picker_group_border: String, + picker_group_foreground: String, + debug_tool_bar_background: String, + walk_through_embedded_editor_background: String, + settings_header_foreground: String, + settings_modified_item_indicator: String, + settings_dropdown_background: String, + settings_dropdown_foreground: String, + settings_dropdown_border: String, + settings_checkbox_background: String, + settings_checkbox_foreground: String, + settings_checkbox_border: String, + settings_text_input_background: String, + settings_text_input_foreground: String, + settings_text_input_border: String, + settings_number_input_background: String, + settings_number_input_foreground: String, + settings_number_input_border: String, + breadcrumb_foreground: String, + breadcrumb_background: String, + breadcrumb_focus_foreground: String, + breadcrumb_active_selection_foreground: String, + breadcrumb_picker_background: String, + list_filter_widget_background: String, + list_filter_widget_outline: String, + list_filter_widget_no_matches_outline: String, +} + +pub fn try_vscode_colors_to_theme_colors(colors: VSCodeColors) -> ThemeColorsRefinement { + let mut theme_colors = ThemeColorsRefinement::default(); + + theme_colors +} + +pub fn vscode_colors_to_theme_colors(color: String) -> ThemeColorsRefinement { + ThemeColorsRefinement { + text: Some(color), + ..Default::default() + } +} diff --git a/crates/theme2/src/theme2.rs b/crates/theme2/src/theme2.rs index 88dcbd1286..431a96c05f 100644 --- a/crates/theme2/src/theme2.rs +++ b/crates/theme2/src/theme2.rs @@ -1,6 +1,7 @@ mod colors; mod default_colors; mod default_theme; +mod import; mod registry; mod scale; mod settings;