Conkys weird terminal cousin

Overview

CI Crate download count

   ▄   ▄                      (._. )
   █ ▄ █ █▀█ █▀▄█ █ █ █ █   
   █▀ ▀█ █▄█ █  █ █▀▄  █   
 Conkys weird terminal cousin

Monitor and display various things by reading stdout from scripts or programs. Have a look at the example.toml to get started!

Installation

cargo install wonky

Usage

# default config
wonky

# specified config
wonky [config_name]

Screenshot

Currently has 3 component types, indicator, meter and separator.

Meter

Basic usage:

   [[widgets]]
   # Type of widget
   type            = "Meter"
   title           = "I rate"
   
   # Unit of messurement
   unit            = " m8" 
   
   ## Theme: (optional) ##
   # meter character:
   theme.meter     = "="
   # meter background character:
   theme.meter_bg  = "-"
   # starting character
   theme.start     = "["
   # ending character
   theme.end       = "]"
   # results in: [====---]
   
   # theme colors (ansii 0-255 [link](https://jonasjacek.github.io/colors/))
   theme.fg       = 10
   # to have a clear background simply leave theme.bg out of the element
   theme.bg       = 2
   
   # Text to the left of the bar
   # prefix          = "something"

   # Display reading and title above the bar
   # either of these will cause the meter to
   # take up two vertical spaces.
   reading         = true
   # Hide the meter
   meter           = true

   max_command     = ["echo", "8"] 
   value_command   = ["echo", "8"] 
   
   # How often component should be updated in seconds
   frequency       = 60
   # Horizontal alignment
   right           = false
   # Vertical alignment
   bottom          = false

Bash script:

   [[widgets]]
   type            = "Meter"
   title           = ""
   unit            = "c" 
   theme           = 1
   
   prefix          = "cputemp"

   reading         = true
   meter           = true

   max_command     = ["bash", "~/scripts/cputemp", "max"] 
   value_command   = ["bash", "~/scripts/cputemp"] 
   
   frequency       = 60
   right           = false
   bottom          = false

Indicator

Basic usage:

   [[widgets]]
   type            = "Indicator"
   title           = " Server is running "
   
   # Indicator output is parsed with comma-separation:
   # [foreground-color],[background-color],[string]
   command         = ["echo", "100,88, Alert! Alert! D:"]
   frequency       = 1

   right           = false
   bottom          = false

Separator

Basic usage:

   [[widgets]]
   type            = "Separator"
   title           = "Sysinfo:"
   
   ## Theme: (optional) ##
   theme.fg        = 2
   theme.bg        = 0

   right           = true
   bottom          = true
You might also like...
Cross platform terminal library rust
Cross platform terminal library rust

Cross-platform Terminal Manipulation Library Crossterm is a pure-rust, terminal manipulation library that makes it possible to write cross-platform te

Build terminal user interfaces and dashboards using Rust
Build terminal user interfaces and dashboards using Rust

tui-rs tui-rs is a Rust library to build rich terminal user interfaces and dashboards. It is heavily inspired by the Javascript library blessed-contri

Currency exchange rates in your terminal

Usage example Rates is a scriptable CLI tool that brings currency exchange rates right into your terminal and supports 30+ fiat and 10K+ crypto currencies.

My terminal emulator
My terminal emulator

Miro A GPU-accelerated terminal emulator written in Rust. miro -t pika miro -t kirby miro -t mario miro -t sonic Building from source

Alacritty - A fast, cross-platform, OpenGL terminal emulator
Alacritty - A fast, cross-platform, OpenGL terminal emulator

Alacritty is a modern terminal emulator that comes with sensible defaults, but allows for extensive configuration. By integrating with other applications, rather than reimplementing their functionality, it manages to provide a flexible set of features with high performance. The supported platforms currently consist of BSD, Linux, macOS and Windows.

Terminal-based typing test.
Terminal-based typing test.

ttyper Ttyper is a terminal-based typing test built with Rust and tui-rs. installation With Cargo: cargo install ttyper usage For usage instructions,

hackernews_tui is a Terminal UI to browse Hacker News with vim-like key bindings.
hackernews_tui is a Terminal UI to browse Hacker News with vim-like key bindings.

hackernews_tui is written in Rust with the help of Cursive TUI library. It uses HN Algolia search APIs to get Hacker News data.

 rusty-donut - ASCII raymarching inside a terminal
rusty-donut - ASCII raymarching inside a terminal

ASCII raymarching inside a terminal

Zellij is a workspace aimed at developers, ops-oriented people and anyone who loves the terminal
Zellij is a workspace aimed at developers, ops-oriented people and anyone who loves the terminal

Zellij is a workspace aimed at developers, ops-oriented people and anyone who loves the terminal. At its core, it is a terminal multiplexer (similar to tmux and screen), but this is merely its infrastructure layer.

Comments
  • Handle terminal resize events

    Handle terminal resize events

    Currently terminal resize events aren't handled and mess up the output.

    This change properly resizes the viewport, clears the renderer, relocates and resizes all widgets and then finally redraws the all elements whenever a resize happens.

    opened by dnaka91 1
  • Use common location for config and fix warnings

    Use common location for config and fix warnings

    Select the right common location for the config for each OS as appropriate. Also, fix all the clippy warnings along the way and do some minor cleanups.

    opened by dnaka91 1
Owner
gorg
gorg
ask.sh: AI terminal assistant that can read and write your terminal directly!

ask.sh: AI terminal assistant that read from & write to your terminal ask.sh is an AI terminal assistant based on OpenAI APIs such as GPT-3.5/4! What'

hmirin 5 Jun 20, 2023
A simple and efficient terminal UI implementation with ratatui.rs for getting quick insights from csv files right on the terminal

CSV-GREP csv-grep is an intuitive TUI application writting with ratatui.rs for reading, viewing and quickly analysing csv files right on the terminal.

Anthony Ezeabasili 16 Mar 10, 2024
:large_orange_diamond: Build beautiful terminal tables with automatic content wrapping

Comfy-table Comfy-table tries to provide utility for building beautiful tables, while being easy to use. Features: Dynamic arrangement of content to a

Arne Beer 525 Jan 8, 2023
🛎 60+ Elegant terminal spinners for Rust

Spinners - ?? 60+ Elegant terminal spinners for Rust ❤️ Shameless plug Charts, simple as a URL. No more server-side rendering pain, 1 url = 1 chart Lo

Francois-Guillaume Ribreau 435 Dec 26, 2022
Low-level Rust library for implementing terminal command line interface, like in embedded systems.

Terminal CLI Need to build an interactive command prompt, with commands, properties and with full autocomplete? This is for you. Example, output only

HashMismatch 47 Nov 25, 2022
Rust library for ANSI terminal colours and styles (bold, underline)

rust-ansi-term This is a library for controlling colours and formatting, such as red bold text or blue underlined text, on ANSI terminals. View the Ru

Benjamin Sago 407 Jan 2, 2023
Cross-platform Rust library for coloring and formatting terminal output

Coloring terminal output Documentation term-painter is a cross-platform (i.e. also non-ANSI terminals) Rust library for coloring and formatting termin

Lukas Kalbertodt 75 Jul 28, 2022
create and test the style and formatting of text in your terminal applications

description: create and test the style and formatting of text in your terminal applications docs: https://docs.rs/termstyle termstyle is a library tha

Rett Berg 18 Jul 3, 2021
A dead simple ANSI terminal color painting library for Rust.

yansi A dead simple ANSI terminal color painting library for Rust. use yansi::Paint; print!("{} light, {} light!", Paint::green("Green"), Paint::red(

Sergio Benitez 169 Dec 25, 2022
(Rust) Coloring terminal so simple you already know how to do it !

Colored Coloring terminal so simple, you already know how to do it! "this is blue".blue(); "this is red".red(); "this is red on blue".red(

Thomas Wickham 1.2k Jan 4, 2023