Skip to content

Commit

Permalink
rename crude to raw again = =;
Browse files Browse the repository at this point in the history
  • Loading branch information
kamiyaa committed Apr 9, 2022
1 parent 84f9df6 commit f7d20c8
Show file tree
Hide file tree
Showing 11 changed files with 82 additions and 85 deletions.
3 changes: 0 additions & 3 deletions config/theme.toml
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
[selection]
fg = "light_yellow"
bold = true
[selection.prefix]
prefix = " "
size = 2

[executable]
fg = "light_green"
Expand Down
6 changes: 3 additions & 3 deletions src/config/general/app.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
use super::DEFAULT_CONFIG_FILE_PATH;

use super::app_crude::AppConfigCrude;
use super::app_raw::AppConfigRaw;
use crate::config::option::{DisplayOption, PreviewOption, SortOption, TabOption};
use crate::error::JoshutoResult;

Expand All @@ -17,8 +17,8 @@ pub struct AppConfig {

impl AppConfig {
pub fn default_res() -> JoshutoResult<Self> {
let crude: AppConfigCrude = toml::from_str(DEFAULT_CONFIG_FILE_PATH)?;
Ok(Self::from(crude))
let raw: AppConfigRaw = toml::from_str(DEFAULT_CONFIG_FILE_PATH)?;
Ok(Self::from(raw))
}

pub fn display_options_ref(&self) -> &DisplayOption {
Expand Down
34 changes: 17 additions & 17 deletions src/config/general/app_crude.rs → src/config/general/app_raw.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@ use serde_derive::Deserialize;
use crate::config::option::{DisplayOption, PreviewOption, TabOption};
use crate::config::{parse_to_config_file, AppConfig, TomlConfigFile};

use super::display_crude::DisplayOptionCrude;
use super::preview_crude::PreviewOptionCrude;
use super::tab_crude::TabOptionCrude;
use super::display_raw::DisplayOptionRaw;
use super::preview_raw::PreviewOptionRaw;
use super::tab_raw::TabOptionRaw;

const fn default_true() -> bool {
true
Expand All @@ -17,7 +17,7 @@ const fn default_scroll_offset() -> usize {
}

#[derive(Clone, Debug, Deserialize)]
pub struct AppConfigCrude {
pub struct AppConfigRaw {
#[serde(default = "default_scroll_offset")]
pub scroll_offset: usize,
#[serde(default = "default_true")]
Expand All @@ -29,29 +29,29 @@ pub struct AppConfigCrude {
#[serde(default = "default_true")]
pub watch_files: bool,
#[serde(default, rename = "display")]
pub display_options: DisplayOptionCrude,
pub display_options: DisplayOptionRaw,
#[serde(default, rename = "preview")]
pub preview_options: PreviewOptionCrude,
pub preview_options: PreviewOptionRaw,
#[serde(default, rename = "tab")]
pub tab_options: TabOptionCrude,
pub tab_options: TabOptionRaw,
}

impl From<AppConfigCrude> for AppConfig {
fn from(crude: AppConfigCrude) -> Self {
impl From<AppConfigRaw> for AppConfig {
fn from(raw: AppConfigRaw) -> Self {
Self {
use_trash: crude.use_trash,
xdg_open: crude.xdg_open,
xdg_open_fork: crude.xdg_open_fork,
watch_files: crude.watch_files,
_display_options: DisplayOption::from(crude.display_options),
_preview_options: PreviewOption::from(crude.preview_options),
_tab_options: TabOption::from(crude.tab_options),
use_trash: raw.use_trash,
xdg_open: raw.xdg_open,
xdg_open_fork: raw.xdg_open_fork,
watch_files: raw.watch_files,
_display_options: DisplayOption::from(raw.display_options),
_preview_options: PreviewOption::from(raw.preview_options),
_tab_options: TabOption::from(raw.tab_options),
}
}
}

impl TomlConfigFile for AppConfig {
fn get_config(file_name: &str) -> Self {
parse_to_config_file::<AppConfigCrude, AppConfig>(file_name).unwrap_or_default()
parse_to_config_file::<AppConfigRaw, AppConfig>(file_name).unwrap_or_default()
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ use tui::layout::Constraint;

use crate::config::option::{DisplayOption, LineNumberStyle};

use super::sort_crude::SortOptionCrude;
use super::sort_raw::SortOptionRaw;

pub const fn default_column_ratio() -> (usize, usize, usize) {
(1, 3, 4)
Expand All @@ -20,7 +20,7 @@ const fn default_scroll_offset() -> usize {
}

#[derive(Clone, Debug, Deserialize)]
pub struct DisplayOptionCrude {
pub struct DisplayOptionRaw {
#[serde(default)]
pub automatically_count_files: bool,

Expand All @@ -46,13 +46,13 @@ pub struct DisplayOptionCrude {
pub tilde_in_titlebar: bool,

#[serde(default, rename = "sort")]
pub sort_options: SortOptionCrude,
pub sort_options: SortOptionRaw,

#[serde(default)]
pub line_number_style: String,
}

impl std::default::Default for DisplayOptionCrude {
impl std::default::Default for DisplayOptionRaw {
fn default() -> Self {
Self {
automatically_count_files: false,
Expand All @@ -62,16 +62,16 @@ impl std::default::Default for DisplayOptionCrude {
show_borders: true,
show_hidden: false,
show_icons: false,
sort_options: SortOptionCrude::default(),
sort_options: SortOptionRaw::default(),
tilde_in_titlebar: true,
line_number_style: "none".to_string(),
}
}
}

impl From<DisplayOptionCrude> for DisplayOption {
fn from(crude: DisplayOptionCrude) -> Self {
let column_ratio = match crude.column_ratio {
impl From<DisplayOptionRaw> for DisplayOption {
fn from(raw: DisplayOptionRaw) -> Self {
let column_ratio = match raw.column_ratio {
Some(s) if s.len() == 3 => (s[0], s[1], s[2]),
Some(s) if s.len() == 2 => (0, s[0], s[1]),
_ => default_column_ratio(),
Expand All @@ -90,21 +90,21 @@ impl From<DisplayOptionCrude> for DisplayOption {
Constraint::Ratio(0, total),
];

let _line_nums = match crude.line_number_style.as_ref() {
let _line_nums = match raw.line_number_style.as_ref() {
"absolute" => LineNumberStyle::Absolute,
"relative" => LineNumberStyle::Relative,
_ => LineNumberStyle::None,
};

Self {
_automatically_count_files: crude.automatically_count_files,
_collapse_preview: crude.collapse_preview,
_scroll_offset: crude.scroll_offset,
_show_borders: crude.show_borders,
_show_hidden: crude.show_hidden,
_show_icons: crude.show_icons,
_sort_options: crude.sort_options.into(),
_tilde_in_titlebar: crude.tilde_in_titlebar,
_automatically_count_files: raw.automatically_count_files,
_collapse_preview: raw.collapse_preview,
_scroll_offset: raw.scroll_offset,
_show_borders: raw.show_borders,
_show_hidden: raw.show_hidden,
_show_icons: raw.show_icons,
_sort_options: raw.sort_options.into(),
_tilde_in_titlebar: raw.tilde_in_titlebar,
_line_nums,

column_ratio,
Expand Down
10 changes: 5 additions & 5 deletions src/config/general/mod.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
pub mod app;

mod app_crude;
mod display_crude;
mod preview_crude;
mod sort_crude;
mod tab_crude;
mod app_raw;
mod display_raw;
mod preview_raw;
mod sort_raw;
mod tab_raw;

pub use self::app::AppConfig;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ pub const fn default_max_preview_size() -> u64 {
}

#[derive(Clone, Debug, Deserialize)]
pub struct PreviewOptionCrude {
pub struct PreviewOptionRaw {
#[serde(default = "default_max_preview_size")]
pub max_preview_size: u64,
#[serde(default)]
Expand All @@ -23,7 +23,7 @@ pub struct PreviewOptionCrude {
pub preview_removed_hook_script: Option<String>,
}

impl std::default::Default for PreviewOptionCrude {
impl std::default::Default for PreviewOptionRaw {
fn default() -> Self {
Self {
max_preview_size: default_max_preview_size(),
Expand All @@ -34,25 +34,25 @@ impl std::default::Default for PreviewOptionCrude {
}
}

impl From<PreviewOptionCrude> for PreviewOption {
fn from(crude: PreviewOptionCrude) -> Self {
let preview_script = match crude.preview_script {
impl From<PreviewOptionRaw> for PreviewOption {
fn from(raw: PreviewOptionRaw) -> Self {
let preview_script = match raw.preview_script {
Some(s) => {
let tilde_cow = shellexpand::tilde_with_context(s.as_str(), dirs_next::home_dir);
let tilde_path = path::PathBuf::from(tilde_cow.as_ref());
Some(tilde_path)
}
None => search_directories("preview.sh", &CONFIG_HIERARCHY),
};
let preview_shown_hook_script = match crude.preview_shown_hook_script {
let preview_shown_hook_script = match raw.preview_shown_hook_script {
Some(s) => {
let tilde_cow = shellexpand::tilde_with_context(s.as_str(), dirs_next::home_dir);
let tilde_path = path::PathBuf::from(tilde_cow.as_ref());
Some(tilde_path)
}
None => None,
};
let preview_removed_hook_script = match crude.preview_removed_hook_script {
let preview_removed_hook_script = match raw.preview_removed_hook_script {
Some(s) => {
let tilde_cow = shellexpand::tilde_with_context(s.as_str(), dirs_next::home_dir);
let tilde_path = path::PathBuf::from(tilde_cow.as_ref());
Expand All @@ -62,7 +62,7 @@ impl From<PreviewOptionCrude> for PreviewOption {
};

Self {
max_preview_size: crude.max_preview_size,
max_preview_size: raw.max_preview_size,
preview_script,
preview_shown_hook_script,
preview_removed_hook_script,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ const fn default_true() -> bool {
}

#[derive(Clone, Debug, Deserialize)]
pub struct SortOptionCrude {
pub struct SortOptionRaw {
#[serde(default = "default_true")]
pub directories_first: bool,
#[serde(default)]
Expand All @@ -20,7 +20,7 @@ pub struct SortOptionCrude {
pub sort_method: Option<String>,
}

impl std::default::Default for SortOptionCrude {
impl std::default::Default for SortOptionRaw {
fn default() -> Self {
Self {
directories_first: default_true(),
Expand All @@ -31,9 +31,9 @@ impl std::default::Default for SortOptionCrude {
}
}

impl From<SortOptionCrude> for SortOption {
fn from(crude: SortOptionCrude) -> Self {
let sort_method = match crude.sort_method.as_ref() {
impl From<SortOptionRaw> for SortOption {
fn from(raw: SortOptionRaw) -> Self {
let sort_method = match raw.sort_method.as_ref() {
Some(s) => SortType::parse(s).unwrap_or(SortType::Natural),
None => SortType::Natural,
};
Expand All @@ -42,9 +42,9 @@ impl From<SortOptionCrude> for SortOption {
sort_methods.reorganize(sort_method);

Self {
directories_first: crude.directories_first,
case_sensitive: crude.case_sensitive,
reverse: crude.reverse,
directories_first: raw.directories_first,
case_sensitive: raw.case_sensitive,
reverse: raw.reverse,
sort_methods,
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,22 +10,22 @@ fn default_home_page() -> String {
}

#[derive(Clone, Debug, Deserialize)]
pub struct TabOptionCrude {
pub struct TabOptionRaw {
#[serde(default = "default_home_page")]
pub home_page: String,
}

impl std::default::Default for TabOptionCrude {
impl std::default::Default for TabOptionRaw {
fn default() -> Self {
Self {
home_page: default_home_page(),
}
}
}

impl From<TabOptionCrude> for TabOption {
fn from(crude: TabOptionCrude) -> Self {
let home_page = match crude.home_page.as_str() {
impl From<TabOptionRaw> for TabOption {
fn from(raw: TabOptionRaw) -> Self {
let home_page = match raw.home_page.as_str() {
"inherit" => TabHomePage::Inherit,
"home" => TabHomePage::Home,
"root" => TabHomePage::Root,
Expand Down
28 changes: 14 additions & 14 deletions src/config/theme/app_theme.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,32 +2,32 @@ use serde_derive::Deserialize;
use std::collections::HashMap;

use super::DEFAULT_CONFIG_FILE_PATH;
use super::{AppStyle, RawAppStyle};
use super::{AppStyle, AppStyleRaw};
use crate::config::{parse_to_config_file, TomlConfigFile};
use crate::error::JoshutoResult;

#[derive(Clone, Debug, Deserialize, Default)]
pub struct AppThemeCrude {
pub struct AppThemeRaw {
#[serde(default)]
pub regular: RawAppStyle,
pub regular: AppStyleRaw,
#[serde(default)]
pub selection: RawAppStyle,
pub selection: AppStyleRaw,
#[serde(default)]
pub directory: RawAppStyle,
pub directory: AppStyleRaw,
#[serde(default)]
pub executable: RawAppStyle,
pub executable: AppStyleRaw,
#[serde(default)]
pub link: RawAppStyle,
pub link: AppStyleRaw,
#[serde(default)]
pub link_invalid: RawAppStyle,
pub link_invalid: AppStyleRaw,
#[serde(default)]
pub socket: RawAppStyle,
pub socket: AppStyleRaw,
#[serde(default)]
pub ext: HashMap<String, RawAppStyle>,
pub ext: HashMap<String, AppStyleRaw>,
}

impl From<AppThemeCrude> for AppTheme {
fn from(crude: AppThemeCrude) -> Self {
impl From<AppThemeRaw> for AppTheme {
fn from(crude: AppThemeRaw) -> Self {
let selection = crude.selection.to_style_theme();
let executable = crude.executable.to_style_theme();
let regular = crude.regular.to_style_theme();
Expand Down Expand Up @@ -71,14 +71,14 @@ pub struct AppTheme {

impl AppTheme {
pub fn default_res() -> JoshutoResult<Self> {
let crude: AppThemeCrude = toml::from_str(DEFAULT_CONFIG_FILE_PATH)?;
let crude: AppThemeRaw = toml::from_str(DEFAULT_CONFIG_FILE_PATH)?;
Ok(Self::from(crude))
}
}

impl TomlConfigFile for AppTheme {
fn get_config(file_name: &str) -> Self {
parse_to_config_file::<AppThemeCrude, AppTheme>(file_name).unwrap_or_default()
parse_to_config_file::<AppThemeRaw, AppTheme>(file_name).unwrap_or_default()
}
}

Expand Down
4 changes: 2 additions & 2 deletions src/config/theme/mod.rs
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
mod app_theme;
mod style;

pub use self::app_theme::AppTheme;
pub use self::style::{AppStyle, RawAppStyle};
pub use self::app_theme::*;
pub use self::style::*;

#[cfg(not(target_os = "windows"))]
const DEFAULT_CONFIG_FILE_PATH: &str = include_str!("../../../config/theme.toml");
Expand Down

0 comments on commit f7d20c8

Please sign in to comment.