mirror of
https://github.com/martinvonz/jj.git
synced 2025-02-01 00:50:57 +00:00
ui: inline and simplify one-line config.get() functions
This commit is contained in:
parent
256218d1e5
commit
3a38d7a670
1 changed files with 8 additions and 26 deletions
|
@ -262,10 +262,6 @@ pub struct Ui {
|
||||||
output: UiOutput,
|
output: UiOutput,
|
||||||
}
|
}
|
||||||
|
|
||||||
fn progress_indicator_setting(config: &StackedConfig) -> bool {
|
|
||||||
config.get("ui.progress-indicator").unwrap_or(true)
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
|
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq)]
|
||||||
pub enum ColorChoice {
|
pub enum ColorChoice {
|
||||||
Always,
|
Always,
|
||||||
|
@ -331,10 +327,6 @@ fn prepare_formatter_factory(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fn be_quiet(config: &StackedConfig) -> bool {
|
|
||||||
config.get("ui.quiet").unwrap_or_default()
|
|
||||||
}
|
|
||||||
|
|
||||||
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq, serde::Deserialize)]
|
#[derive(Clone, Copy, Debug, Default, Eq, PartialEq, serde::Deserialize)]
|
||||||
#[serde(rename_all(deserialize = "kebab-case"))]
|
#[serde(rename_all(deserialize = "kebab-case"))]
|
||||||
pub enum PaginationChoice {
|
pub enum PaginationChoice {
|
||||||
|
@ -343,34 +335,24 @@ pub enum PaginationChoice {
|
||||||
Auto,
|
Auto,
|
||||||
}
|
}
|
||||||
|
|
||||||
fn pagination_setting(config: &StackedConfig) -> Result<PaginationChoice, ConfigGetError> {
|
|
||||||
config.get::<PaginationChoice>("ui.paginate")
|
|
||||||
}
|
|
||||||
|
|
||||||
fn pager_setting(config: &StackedConfig) -> Result<CommandNameAndArgs, ConfigGetError> {
|
|
||||||
config.get::<CommandNameAndArgs>("ui.pager")
|
|
||||||
}
|
|
||||||
|
|
||||||
impl Ui {
|
impl Ui {
|
||||||
pub fn with_config(config: &StackedConfig) -> Result<Ui, CommandError> {
|
pub fn with_config(config: &StackedConfig) -> Result<Ui, CommandError> {
|
||||||
let quiet = be_quiet(config);
|
|
||||||
let formatter_factory = prepare_formatter_factory(config, &io::stdout())?;
|
let formatter_factory = prepare_formatter_factory(config, &io::stdout())?;
|
||||||
let progress_indicator = progress_indicator_setting(config);
|
|
||||||
Ok(Ui {
|
Ok(Ui {
|
||||||
quiet,
|
quiet: config.get("ui.quiet").unwrap_or_default(),
|
||||||
formatter_factory,
|
formatter_factory,
|
||||||
pager_cmd: pager_setting(config)?,
|
pager_cmd: config.get("ui.pager")?,
|
||||||
paginate: pagination_setting(config)?,
|
paginate: config.get("ui.paginate")?,
|
||||||
progress_indicator,
|
progress_indicator: config.get("ui.progress-indicator").unwrap_or(true),
|
||||||
output: UiOutput::new_terminal(),
|
output: UiOutput::new_terminal(),
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn reset(&mut self, config: &StackedConfig) -> Result<(), CommandError> {
|
pub fn reset(&mut self, config: &StackedConfig) -> Result<(), CommandError> {
|
||||||
self.quiet = be_quiet(config);
|
self.quiet = config.get("ui.quiet").unwrap_or_default();
|
||||||
self.paginate = pagination_setting(config)?;
|
self.paginate = config.get("ui.paginate")?;
|
||||||
self.pager_cmd = pager_setting(config)?;
|
self.pager_cmd = config.get("ui.pager")?;
|
||||||
self.progress_indicator = progress_indicator_setting(config);
|
self.progress_indicator = config.get("ui.progress-indicator").unwrap_or(true);
|
||||||
self.formatter_factory = prepare_formatter_factory(config, &io::stdout())?;
|
self.formatter_factory = prepare_formatter_factory(config, &io::stdout())?;
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue