* tload: add basic tui layout of modern look
* tload: set x-axis bound from 0 to the width of terminal
* tload: fix mismatched returning type
* tload: add `#[allow(clippy::cognitive_complexity)]`
* tload: add by-utils test
* tload: tweaks for max height of chart
* tload: bump version of `ratatui` from `0.28` to `0.29`
* tload: fix typo
* tload: set exit code to 130
* tload: fix typo
* tload: add license header for `tui.rs`
* pkill: init source
* pkill: implement
* pkill: implement `-e`
* pkill: change `&mut self` to `&self` for `status`, `stat`, `start_time`'s args
* pkill: implement `-H`
* pkill: format code
* pkill: remove .idea dir
* pkill: beautify code
* pkill: beautify code
* pkill: fix Cargo.toml
* pkill: remove duplicated process.rs
* pkill: add unit tests
* pkill: beautify code
* pkill: fix CI failures for windows
* pkill: fix CI failures for windows
* pkill: fix CI failures for windows
* pkill: fix CI failures for windows
* pkill: fix CI failures for windows
* pkill: fix CI failures for MacOS
* pkill: fix CI failures for windows
* pkill: fix CI failures for windows
---------
Co-authored-by: Krysztal Huang <krysztal.huang@outlook.com>
Co-authored-by: Sylvestre Ledru <sylvestre@debian.org>
* ps: Add command `ps`
* pidof: Add some basic arguments and flags
* ps: Introduce new dependencies.
Introduce `uu_pgrep` for processing processes, and introduce `prettytable-rs` for output.
* ps: Finish command infrastructure.
* pgrep: Implemented `Hash` trait for `ProcessInformation`.
* misc: Introduce `nix` crate
* pgrep: Rename `TerminalType` to `Teletype`
* ps: Use `Vec<Rc<RefCell<_>>>` for mutable data.
* misc: Fix conflict
* misc: Fix fmt
* pgrep: Revert refactoring.
* ps: Add `basic_collector`
* ps: Introduce `picker` mod to do data picking.
* ps: Implemented user defined data picking
* ps: Collect and apply header mapping and use `Vec` instead of `LinkedList`
* ps: Add license header
* ps: Apply suggestions
* ps: Implemented logic of `-o`
* ps: Implement basic function.
* ps: Remove empty line of output
* ps: Implemented nullable format parser.
And also introduce `thiserror` crate.
* ps: Implemented `-o` (`--format`)
* ps: Add license header for `parser.rs`
* misc: Apply modifications from upstream
* ps: Implemented code of `time`
* ps: Fix check failure
* ps: Fix build failure on Windows
* ps: Enable tests for another *NIX system.
* ps: Revert tests support for *NIX platform.
It looks like it's very difficult to implement the ps command on *NIX platforms as portable, as it's only portable if you have a proc pseudo-fs. In other words, the current design only even supports Linux.
- FreeBSD's proc pseudo-fs is not automounted.
- macOS does not have a proc fs, it use sysctl instead.
* ps: Refactor mappings to `mapping.rs`
* ps: Clean code
* misc: Bump version of `nix` crate.
* ps: Rewrite document and optimize code.
* ps: Clean TODO and add TODO
Remove TODO in `mapping.rs` and add TODO in `collector.rs`
* ps: Allow multiple occurrences of the same code.
* ps: Fix default codes' display
* ps: Use `Result` instead of `Option` in `parser.rs`
* ps: Remove duplicate elements of `proc_infos`
* ps: Implemented sorting
But only implemented the basic usage: sorting by pid.
* ps: Rename functions in `sorting.rs`
- Rename `sorting` to `sort`
- Rename `default_sort` to `sort_by_pid`
---------
Co-authored-by: Sylvestre Ledru <sylvestre@debian.org>