mirror of
https://github.com/nushell/nushell.git
synced 2025-05-01 16:44:27 +02:00
* move commands, futures.rs, script.rs, utils * move over maybe_print_errors * add nu_command crate references to nu_cli * in commands.rs open up to pub mod from pub(crate) * nu-cli, nu-command, and nu tests are now passing * cargo fmt * clean up nu-cli/src/prelude.rs * code cleanup * for some reason lex.rs was not formatted, may be causing my error * remove mod completion from lib.rs which was not being used along with quickcheck macros * add in allow unused imports * comment out one failing external test; comment out one failing internal test * revert commenting out failing tests; something else might be going on; someone with a windows machine should check and see what is going on with these failing windows tests * Update Cargo.toml Extend the optional features to nu-command Co-authored-by: Jonathan Turner <jonathandturner@users.noreply.github.com>
52 lines
1.1 KiB
Rust
52 lines
1.1 KiB
Rust
pub use nu_data::config::NuConfig;
|
|
use std::fmt::Debug;
|
|
|
|
#[derive(PartialEq, Debug)]
|
|
pub enum AutoPivotMode {
|
|
Auto,
|
|
Always,
|
|
Never,
|
|
}
|
|
|
|
impl AutoPivotMode {
|
|
pub fn is_auto(&self) -> bool {
|
|
matches!(self, AutoPivotMode::Auto)
|
|
}
|
|
|
|
pub fn is_always(&self) -> bool {
|
|
matches!(self, AutoPivotMode::Always)
|
|
}
|
|
|
|
#[allow(unused)]
|
|
pub fn is_never(&self) -> bool {
|
|
matches!(self, AutoPivotMode::Never)
|
|
}
|
|
}
|
|
|
|
pub trait ConfigExtensions: Debug + Send {
|
|
fn pivot_mode(&self) -> AutoPivotMode;
|
|
}
|
|
|
|
pub fn pivot_mode(config: &NuConfig) -> AutoPivotMode {
|
|
let vars = &config.vars;
|
|
|
|
if let Some(mode) = vars.get("pivot_mode") {
|
|
let mode = match mode.as_string() {
|
|
Ok(m) if m.to_lowercase() == "auto" => AutoPivotMode::Auto,
|
|
Ok(m) if m.to_lowercase() == "always" => AutoPivotMode::Always,
|
|
Ok(m) if m.to_lowercase() == "never" => AutoPivotMode::Never,
|
|
_ => AutoPivotMode::Never,
|
|
};
|
|
|
|
return mode;
|
|
}
|
|
|
|
AutoPivotMode::Never
|
|
}
|
|
|
|
impl ConfigExtensions for NuConfig {
|
|
fn pivot_mode(&self) -> AutoPivotMode {
|
|
pivot_mode(self)
|
|
}
|
|
}
|