From cab7a0fea7e14d3069f4b79b10fe295f63e58a01 Mon Sep 17 00:00:00 2001 From: pagedmov Date: Mon, 23 Feb 2026 23:32:46 -0500 Subject: [PATCH] Ran the codebase through rustfmt --- src/builtin/alias.rs | 2 +- src/builtin/echo.rs | 4 +- src/builtin/eval.rs | 13 ++--- src/builtin/exec.rs | 10 ++-- src/builtin/export.rs | 29 +++++------ src/builtin/flowctl.rs | 2 +- src/builtin/jobctl.rs | 48 ++++++++++-------- src/builtin/pwd.rs | 2 +- src/builtin/read.rs | 6 +-- src/builtin/shopt.rs | 2 +- src/builtin/test.rs | 2 +- src/builtin/trap.rs | 2 +- src/builtin/zoltraak.rs | 4 +- src/jobs.rs | 92 +++++++++++++++++----------------- src/libsh/sys.rs | 3 +- src/libsh/term.rs | 20 ++++---- src/prelude.rs | 10 ++-- src/procio.rs | 30 +++++------ src/prompt/readline/history.rs | 27 +++++----- src/prompt/readline/term.rs | 33 ++++++------ src/shopt.rs | 47 +++++++++-------- src/tests/complete.rs | 22 ++++---- src/tests/expand.rs | 2 +- src/tests/mod.rs | 3 +- src/tests/readline.rs | 26 ++++------ src/tests/redir.rs | 2 +- src/tests/state.rs | 51 +++++++++++++------ 27 files changed, 254 insertions(+), 240 deletions(-) diff --git a/src/builtin/alias.rs b/src/builtin/alias.rs index f56f491..412726c 100644 --- a/src/builtin/alias.rs +++ b/src/builtin/alias.rs @@ -3,7 +3,7 @@ use crate::{ libsh::error::{ShErr, ShErrKind, ShResult}, parse::{NdRule, Node}, prelude::*, - procio::{IoStack, borrow_fd}, + procio::{borrow_fd, IoStack}, state::{self, read_logic, write_logic}, }; diff --git a/src/builtin/echo.rs b/src/builtin/echo.rs index 4619707..0121bc4 100644 --- a/src/builtin/echo.rs +++ b/src/builtin/echo.rs @@ -3,12 +3,12 @@ use std::sync::LazyLock; use crate::{ builtin::setup_builtin, expand::expand_prompt, - getopt::{Opt, OptSpec, get_opts_from_tokens}, + getopt::{get_opts_from_tokens, Opt, OptSpec}, jobs::JobBldr, libsh::error::{ShErr, ShErrKind, ShResult, ShResultExt}, parse::{NdRule, Node}, prelude::*, - procio::{IoStack, borrow_fd}, + procio::{borrow_fd, IoStack}, state, }; diff --git a/src/builtin/eval.rs b/src/builtin/eval.rs index d38d294..16af2ea 100644 --- a/src/builtin/eval.rs +++ b/src/builtin/eval.rs @@ -4,7 +4,7 @@ use crate::{ builtin::setup_builtin, jobs::JobBldr, libsh::error::ShResult, - parse::{NdRule, Node, execute::exec_input}, + parse::{execute::exec_input, NdRule, Node}, procio::IoStack, state, }; @@ -25,10 +25,11 @@ pub fn eval(node: Node, io_stack: &mut IoStack, job: &mut JobBldr) -> ShResult<( return Ok(()); } - let joined_argv = expanded_argv.into_iter() - .map(|(s, _)| s) - .collect::>() - .join(" "); + let joined_argv = expanded_argv + .into_iter() + .map(|(s, _)| s) + .collect::>() + .join(" "); - exec_input(joined_argv, None, false) + exec_input(joined_argv, None, false) } diff --git a/src/builtin/exec.rs b/src/builtin/exec.rs index c96d77e..da15335 100644 --- a/src/builtin/exec.rs +++ b/src/builtin/exec.rs @@ -4,7 +4,7 @@ use crate::{ builtin::setup_builtin, jobs::JobBldr, libsh::error::{ShErr, ShErrKind, ShResult}, - parse::{NdRule, Node, execute::ExecArgs}, + parse::{execute::ExecArgs, NdRule, Node}, procio::IoStack, state, }; @@ -40,11 +40,7 @@ pub fn exec_builtin(node: Node, io_stack: &mut IoStack, job: &mut JobBldr) -> Sh // execvpe only returns on error let cmd_str = cmd.to_str().unwrap().to_string(); match e { - Errno::ENOENT => { - Err(ShErr::full(ShErrKind::CmdNotFound(cmd_str), "", span)) - } - _ => { - Err(ShErr::full(ShErrKind::Errno(e), format!("{e}"), span)) - } + Errno::ENOENT => Err(ShErr::full(ShErrKind::CmdNotFound(cmd_str), "", span)), + _ => Err(ShErr::full(ShErrKind::Errno(e), format!("{e}"), span)), } } diff --git a/src/builtin/export.rs b/src/builtin/export.rs index afea5cf..ce78b8f 100644 --- a/src/builtin/export.rs +++ b/src/builtin/export.rs @@ -3,8 +3,8 @@ use crate::{ libsh::error::ShResult, parse::{NdRule, Node}, prelude::*, - procio::{IoStack, borrow_fd}, - state::{self, VarFlags, read_vars, write_vars}, + procio::{borrow_fd, IoStack}, + state::{self, read_vars, write_vars, VarFlags}, }; use super::setup_builtin; @@ -35,10 +35,10 @@ pub fn export(node: Node, io_stack: &mut IoStack, job: &mut JobBldr) -> ShResult for (arg, _) in argv { if let Some((var, val)) = arg.split_once('=') { write_vars(|v| v.set_var(var, val, VarFlags::EXPORT)); // Export an assignment like - // 'foo=bar' + // 'foo=bar' } else { write_vars(|v| v.export_var(&arg)); // Export an existing variable, if - // any + // any } } } @@ -59,16 +59,17 @@ pub fn local(node: Node, io_stack: &mut IoStack, job: &mut JobBldr) -> ShResult< if argv.is_empty() { // Display the local variables - let vars_output = read_vars(|v| { - let mut vars = v.flatten_vars() - .into_iter() - .map(|(k, v)| format!("{}={}", k, v)) - .collect::>(); - vars.sort(); - let mut vars_joined = vars.join("\n"); - vars_joined.push('\n'); - vars_joined - }); + let vars_output = read_vars(|v| { + let mut vars = v + .flatten_vars() + .into_iter() + .map(|(k, v)| format!("{}={}", k, v)) + .collect::>(); + vars.sort(); + let mut vars_joined = vars.join("\n"); + vars_joined.push('\n'); + vars_joined + }); let stdout = borrow_fd(STDOUT_FILENO); write(stdout, vars_output.as_bytes())?; // Write it diff --git a/src/builtin/flowctl.rs b/src/builtin/flowctl.rs index f057fe3..5115174 100644 --- a/src/builtin/flowctl.rs +++ b/src/builtin/flowctl.rs @@ -1,6 +1,6 @@ use crate::{ libsh::error::{ShErr, ShErrKind, ShResult}, - parse::{NdRule, Node, execute::prepare_argv}, + parse::{execute::prepare_argv, NdRule, Node}, prelude::*, }; diff --git a/src/builtin/jobctl.rs b/src/builtin/jobctl.rs index fb0972e..47229d2 100644 --- a/src/builtin/jobctl.rs +++ b/src/builtin/jobctl.rs @@ -1,9 +1,9 @@ use crate::{ jobs::{JobBldr, JobCmdFlags, JobID}, libsh::error::{ShErr, ShErrKind, ShResult}, - parse::{NdRule, Node, lex::Span}, + parse::{lex::Span, NdRule, Node}, prelude::*, - procio::{IoStack, borrow_fd}, + procio::{borrow_fd, IoStack}, state::{self, read_jobs, write_jobs}, }; @@ -181,7 +181,7 @@ pub fn jobs(node: Node, io_stack: &mut IoStack, job: &mut JobBldr) -> ShResult<( } pub fn disown(node: Node, io_stack: &mut IoStack, job: &mut JobBldr) -> ShResult<()> { - let blame = node.get_span().clone(); + let blame = node.get_span().clone(); let NdRule::Command { assignments: _, argv, @@ -196,29 +196,33 @@ pub fn disown(node: Node, io_stack: &mut IoStack, job: &mut JobBldr) -> ShResult let curr_job_id = if let Some(id) = read_jobs(|j| j.curr_job()) { id } else { - return Err(ShErr::full(ShErrKind::ExecFail, "disown: No jobs to disown", blame)); + return Err(ShErr::full( + ShErrKind::ExecFail, + "disown: No jobs to disown", + blame, + )); }; let mut tabid = curr_job_id; - let mut nohup = false; - let mut disown_all = false; + let mut nohup = false; + let mut disown_all = false; - while let Some((arg, span)) = argv.next() { - match arg.as_str() { - "-h" => nohup = true, - "-a" => disown_all = true, - _ => { - tabid = parse_job_id(&arg, span.clone())?; - } - } - } + while let Some((arg, span)) = argv.next() { + match arg.as_str() { + "-h" => nohup = true, + "-a" => disown_all = true, + _ => { + tabid = parse_job_id(&arg, span.clone())?; + } + } + } - if disown_all { - write_jobs(|j| j.disown_all(nohup))?; - } else { - write_jobs(|j| j.disown(JobID::TableID(tabid), nohup))?; - } + if disown_all { + write_jobs(|j| j.disown_all(nohup))?; + } else { + write_jobs(|j| j.disown(JobID::TableID(tabid), nohup))?; + } - state::set_status(0); - Ok(()) + state::set_status(0); + Ok(()) } diff --git a/src/builtin/pwd.rs b/src/builtin/pwd.rs index 6e37dde..3cc4acf 100644 --- a/src/builtin/pwd.rs +++ b/src/builtin/pwd.rs @@ -3,7 +3,7 @@ use crate::{ libsh::error::ShResult, parse::{NdRule, Node}, prelude::*, - procio::{IoStack, borrow_fd}, + procio::{borrow_fd, IoStack}, state, }; diff --git a/src/builtin/read.rs b/src/builtin/read.rs index 639aa41..fbcc52c 100644 --- a/src/builtin/read.rs +++ b/src/builtin/read.rs @@ -7,13 +7,13 @@ use nix::{ use crate::{ builtin::setup_builtin, - getopt::{Opt, OptSpec, get_opts_from_tokens}, + getopt::{get_opts_from_tokens, Opt, OptSpec}, jobs::JobBldr, libsh::error::{ShErr, ShErrKind, ShResult, ShResultExt}, parse::{NdRule, Node}, - procio::{IoStack, borrow_fd}, + procio::{borrow_fd, IoStack}, prompt::readline::term::RawModeGuard, - state::{self, VarFlags, read_vars, write_vars}, + state::{self, read_vars, write_vars, VarFlags}, }; pub const READ_OPTS: [OptSpec; 7] = [ diff --git a/src/builtin/shopt.rs b/src/builtin/shopt.rs index fe6ac9d..96dc4f6 100644 --- a/src/builtin/shopt.rs +++ b/src/builtin/shopt.rs @@ -3,7 +3,7 @@ use crate::{ libsh::error::{ShResult, ShResultExt}, parse::{NdRule, Node}, prelude::*, - procio::{IoStack, borrow_fd}, + procio::{borrow_fd, IoStack}, state::write_shopts, }; diff --git a/src/builtin/test.rs b/src/builtin/test.rs index 655c65c..5fe7ed8 100644 --- a/src/builtin/test.rs +++ b/src/builtin/test.rs @@ -8,7 +8,7 @@ use regex::Regex; use crate::{ libsh::error::{ShErr, ShErrKind, ShResult}, - parse::{ConjunctOp, NdRule, Node, TEST_UNARY_OPS, TestCase}, + parse::{ConjunctOp, NdRule, Node, TestCase, TEST_UNARY_OPS}, prelude::*, }; diff --git a/src/builtin/trap.rs b/src/builtin/trap.rs index 7c817ba..6d6d2d1 100644 --- a/src/builtin/trap.rs +++ b/src/builtin/trap.rs @@ -11,7 +11,7 @@ use crate::{ jobs::JobBldr, libsh::error::{ShErr, ShErrKind, ShResult}, parse::{NdRule, Node}, - procio::{IoStack, borrow_fd}, + procio::{borrow_fd, IoStack}, state::{self, read_logic, write_logic}, }; diff --git a/src/builtin/zoltraak.rs b/src/builtin/zoltraak.rs index 2d5d173..76af31a 100644 --- a/src/builtin/zoltraak.rs +++ b/src/builtin/zoltraak.rs @@ -1,12 +1,12 @@ use std::{os::unix::fs::OpenOptionsExt, sync::LazyLock}; use crate::{ - getopt::{Opt, OptSet, OptSpec, get_opts_from_tokens}, + getopt::{get_opts_from_tokens, Opt, OptSet, OptSpec}, jobs::JobBldr, libsh::error::{Note, ShErr, ShErrKind, ShResult, ShResultExt}, parse::{NdRule, Node}, prelude::*, - procio::{IoStack, borrow_fd}, + procio::{borrow_fd, IoStack}, }; use super::setup_builtin; diff --git a/src/jobs.rs b/src/jobs.rs index 3e3d0ed..cff97ec 100644 --- a/src/jobs.rs +++ b/src/jobs.rs @@ -4,7 +4,7 @@ use crate::{ term::{Style, Styled}, }, prelude::*, - procio::{IoMode, borrow_fd}, + procio::{borrow_fd, IoMode}, signal::{disable_reaping, enable_reaping}, state::{self, read_jobs, set_status, write_jobs}, }; @@ -384,40 +384,40 @@ impl JobTab { Ok(()) } - pub fn hang_up(&mut self) { - for job in self.jobs_mut().iter_mut().flatten() { - if job.send_hup { - job.killpg(Signal::SIGHUP).ok(); - } - } - } + pub fn hang_up(&mut self) { + for job in self.jobs_mut().iter_mut().flatten() { + if job.send_hup { + job.killpg(Signal::SIGHUP).ok(); + } + } + } - pub fn disown(&mut self, id: JobID, nohup: bool) -> ShResult<()> { - if let Some(job) = self.query_mut(id.clone()) { - if nohup { - job.no_hup(); - } else { - self.remove_job(id); - } - } - Ok(()) - } + pub fn disown(&mut self, id: JobID, nohup: bool) -> ShResult<()> { + if let Some(job) = self.query_mut(id.clone()) { + if nohup { + job.no_hup(); + } else { + self.remove_job(id); + } + } + Ok(()) + } - pub fn disown_all(&mut self, nohup: bool) -> ShResult<()> { - let mut ids_to_remove = vec![]; - for job in self.jobs_mut().iter_mut().flatten() { - if nohup { - job.no_hup(); - } else { - ids_to_remove.push(JobID::TableID(job.tabid().unwrap())); - } - } + pub fn disown_all(&mut self, nohup: bool) -> ShResult<()> { + let mut ids_to_remove = vec![]; + for job in self.jobs_mut().iter_mut().flatten() { + if nohup { + job.no_hup(); + } else { + ids_to_remove.push(JobID::TableID(job.tabid().unwrap())); + } + } - for id in ids_to_remove { - self.remove_job(id); - } - Ok(()) - } + for id in ids_to_remove { + self.remove_job(id); + } + Ok(()) + } } #[derive(Debug)] @@ -425,7 +425,7 @@ pub struct JobBldr { table_id: Option, pgid: Option, children: Vec, - send_hup: bool, + send_hup: bool, } impl Default for JobBldr { @@ -440,7 +440,7 @@ impl JobBldr { table_id: None, pgid: None, children: vec![], - send_hup: true, + send_hup: true, } } pub fn with_id(self, id: usize) -> Self { @@ -448,7 +448,7 @@ impl JobBldr { table_id: Some(id), pgid: self.pgid, children: self.children, - send_hup: self.send_hup, + send_hup: self.send_hup, } } pub fn with_pgid(self, pgid: Pid) -> Self { @@ -456,7 +456,7 @@ impl JobBldr { table_id: self.table_id, pgid: Some(pgid), children: self.children, - send_hup: self.send_hup, + send_hup: self.send_hup, } } pub fn set_pgid(&mut self, pgid: Pid) { @@ -465,16 +465,16 @@ impl JobBldr { pub fn pgid(&self) -> Option { self.pgid } - pub fn no_hup(mut self) -> Self { - self.send_hup = false; - self - } + pub fn no_hup(mut self) -> Self { + self.send_hup = false; + self + } pub fn with_children(self, children: Vec) -> Self { Self { table_id: self.table_id, pgid: self.pgid, children, - send_hup: self.send_hup, + send_hup: self.send_hup, } } pub fn push_child(&mut self, child: ChildProc) { @@ -485,7 +485,7 @@ impl JobBldr { table_id: self.table_id, pgid: self.pgid.unwrap_or(Pid::from_raw(0)), children: self.children, - send_hup: self.send_hup, + send_hup: self.send_hup, } } } @@ -514,16 +514,16 @@ pub struct Job { table_id: Option, pgid: Pid, children: Vec, - send_hup: bool, + send_hup: bool, } impl Job { pub fn set_tabid(&mut self, id: usize) { self.table_id = Some(id) } - pub fn no_hup(&mut self) { - self.send_hup = false; - } + pub fn no_hup(&mut self) { + self.send_hup = false; + } pub fn running(&self) -> bool { !self.children.iter().all(|chld| chld.exited()) } diff --git a/src/libsh/sys.rs b/src/libsh/sys.rs index 803c5a3..48d68b0 100644 --- a/src/libsh/sys.rs +++ b/src/libsh/sys.rs @@ -34,8 +34,7 @@ use crate::prelude::*; pub(crate) static mut SAVED_TERMIOS: Option> = None; pub static TTY_FILENO: LazyLock = LazyLock::new(|| { - open("/dev/tty", OFlag::O_RDWR, Mode::empty()) - .expect("Failed to open /dev/tty") + open("/dev/tty", OFlag::O_RDWR, Mode::empty()).expect("Failed to open /dev/tty") }); #[derive(Debug)] diff --git a/src/libsh/term.rs b/src/libsh/term.rs index 1037b7b..dec8148 100644 --- a/src/libsh/term.rs +++ b/src/libsh/term.rs @@ -15,8 +15,8 @@ impl Styled for T {} pub enum Style { // Undoes all styles Reset, - ResetFg, - ResetBg, + ResetFg, + ResetBg, // Foreground Colors Black, Red, @@ -68,8 +68,8 @@ impl Display for Style { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { match self { Style::Reset => write!(f, "\x1b[0m"), - Style::ResetFg => write!(f, "\x1b[39m"), - Style::ResetBg => write!(f, "\x1b[49m"), + Style::ResetFg => write!(f, "\x1b[39m"), + Style::ResetBg => write!(f, "\x1b[49m"), // Foreground colors Style::Black => write!(f, "\x1b[30m"), @@ -131,13 +131,13 @@ impl StyleSet { Self { styles: vec![] } } - pub fn styles(&self) -> &[Style] { - &self.styles - } + pub fn styles(&self) -> &[Style] { + &self.styles + } - pub fn styles_mut(&mut self) -> &mut Vec