1
0
mirror of https://github.com/danog/ytop.git synced 2024-11-26 20:15:03 +01:00
Go to file
2020-01-18 14:22:24 -08:00
.github Update release ci 2020-01-18 14:22:24 -08:00
assets Add media from gotop 2020-01-13 08:40:58 -08:00
colorschemes Add media from gotop 2020-01-13 08:40:58 -08:00
src Implement all keybinds except searching 2020-01-18 12:35:41 -08:00
.editorconfig Fix yml indentation 2019-07-29 22:18:52 -07:00
.gitignore Initial commit 2019-07-20 17:57:40 -07:00
.rustfmt.toml Convert spaces to tabs 2019-07-26 20:28:16 -07:00
Cargo.lock Fix process cpu and memory percents 2020-01-14 12:55:45 -08:00
Cargo.toml Rename to ytop 2020-01-12 16:52:39 -08:00
CHANGELOG.md Implement all keybinds except searching 2020-01-18 12:35:41 -08:00
LICENSE Initial commit 2019-07-20 17:57:40 -07:00
README.md Implement all keybinds except searching 2020-01-18 12:35:41 -08:00

ytop

Another TUI based resource monitor, this time in Rust! Currently a WIP.

Missing features

  • Only works on Linux
  • Process filtering isn't implemented
  • Mouse usage isn't implemented
  • rate and interfaces cli args aren't implemented

Installation

Currently only working on Linux with support planned for all major platforms.

Prebuilt binaries:

Run the following to run this script to download the correct binary for your system from the releases tab into ~/.cargo/bin, courtesy of japaric/trust:

bash <(curl -LSfs https://japaric.github.io/trust/install.sh) \
  -f --git cjbassi/ytop

Specify --to to change the download location.

From source:

Latest release:

cargo install -f --git https://github.com/cjbassi/ytop --tag 0.1.0

Latest commit:

cargo install -f --git https://github.com/cjbassi/ytop

Arch Linux

Install ytop, ytop-bin, or ytop-git from the AUR.

Usage

Keybinds

  • Quit: q or <C-c>
  • Pause: <Space>
  • Process navigation:
    • k and <Up>: up
    • j and <Down>: down
    • <C-u>: half page up
    • <C-d>: half page down
    • <C-b>: full page up
    • <C-f>: full page down
    • gg and <Home>: jump to top
    • G and <End>: jump to bottom
  • Process actions:
    • <Tab>: toggle process grouping
    • dd: kill selected process or process group
  • Process sorting:
    • p: PID/Count
    • n: Command
    • c: CPU
    • m: Mem
  • Process filtering:
    • /: start editing filter
    • (while editing):
      • <Enter>: accept filter
      • <C-c> and <Escape>: clear filter
  • CPU and Mem graph scaling:
    • h: scale in
    • l: scale out
  • ?: toggles keybind help menu

Mouse

  • click to select process
  • mouse wheel to scroll through processes

Colorschemes

ytop ships with a few colorschemes which can be set with the -c flag followed by the name of one. You can find all the colorschemes in the colorschemes folder.

To make a custom colorscheme, copy one of the default ones to ~/.config/ytop/<new-name>.json and load it with ytop -c <new-name>. Colorscheme PRs are welcome!

CLI Options

USAGE:
    ytop [FLAGS] [OPTIONS]

FLAGS:
    -a, --average-cpu    Show average CPU in the CPU widget.
    -b, --battery        Show Battery widget (overridden by 'minimal' flag).
    -f, --fahrenheit     Show temperatures in fahrenheit.
    -h, --help           Prints help information
    -m, --minimal        Only show the CPU, Mem, and Process widgets.
    -p, --per-cpu        Show each CPU in the CPU widget.
    -s, --statusbar      Show a statusbar with the time.
    -V, --version        Prints version information

OPTIONS:
    -c, --colorscheme <colorscheme>    Set a colorscheme. [default: default]
    -i, --interfaces <interfaces>      Comma separated list of network interfaces to show. Prepend an interface with '!'
                                       to hide it. 'all' shows all interfaces. [default: !tun0]
    -r, --rate <rate>                  Number of times per second to update the CPU and Mem widgets. [default: 1]