Small command-line tool to switch monitor inputs from command line

Related tags

Command-line swmon
Overview

swmon

Small command-line tool to switch monitor inputs from command line

Installation

  1. git clone https://github.com/cr1901/swmon
  2. cargo install --path .

I do not provide a crates.io release at this time.

Intended Usage

  1. Run swmon list to get a table of monitors attached to your system that can speak via Display Data Channel (DDC). Here's an example from my current system:

    $ swmon list
    No.   Backend   Display ID                Manufacturer ID   Model Name
    0     winapi    Generic PnP Monitor       ?                 acer
    2     nvapi     GF108GL/2147881094:Lvds   ACR               VG220Q

    Monitors that don't speak DDC orotocols are excluded from the table; in my example, monitor 1 is missing. swmon list may take several seconds trying to talk to monitors that cannot speak via DDC.

  2. After you've figured out which monitor you want to switch, run swmon switch -m [No. from list] [input]. To get a list of possible valid values for input, run swmon switch -h. The input names should be self-explanatory (and are based on the VESA MCCS spec for Feature Code 0x60.

  3. Enjoy the 15-30 seconds you saved by not having to push buttons on your monitor to switch inputs :).

Future Work

  • Report which input is currently active.
  • Report monitors which don't speak DDC protocols in swmon list.
  • Make -m optional and switch using the first (valid) input.
You might also like...
Rust no-BS Dead Man's Switch TUI
Rust no-BS Dead Man's Switch TUI

Dead Man's Switch This is a simple implementation of a Dead Man's Switch. Use at your own risk. Check the f****(as in friendly) code. Dead man's switc

rsv is a command line tool to deal with small and big CSV, TXT, EXCEL files (especially 10G)

csv, excel toolkit written in Rust rsv is a command line tool to deal with small and big CSV, TXT, EXCEL files (especially 10G). rsv has following fe

A cross-platform graphical process/system monitor with a customizable interface and a multitude of features
A cross-platform graphical process/system monitor with a customizable interface and a multitude of features

A cross-platform graphical process/system monitor with a customizable interface and a multitude of features. Supports Linux, macOS, and Windows. Inspired by both gtop and gotop.

Another TUI based system monitor, this time in Rust!
Another TUI based system monitor, this time in Rust!

Another TUI based system monitor, this time in Rust!

A discord bot to view & monitor OpenSea collections, written in Rust

Titan What is this This is a discord bot to monitor OpenSea collections and get info about them, including: Floor Price Activity Sales per Hour And mo

Memory usage monitor for process trees

gotta-watch-em-all Executes a process with given arguments and monitors, logs when memory usage grows to a new peak. Example: cargo run -- cargo -- bu

A resource monitor in your browser, in Rust
A resource monitor in your browser, in Rust

axact A resource monitor in your browser, so you can view the state of a VM or some other remote host. Built with Rust & Preact, see the video: https:

Socket Monitor: A prettier and simpler alternative to netstat or ss for socket monitoring with the ability to scan for malicious IP addresses.
Socket Monitor: A prettier and simpler alternative to netstat or ss for socket monitoring with the ability to scan for malicious IP addresses.

🌏 Somo A prettier alternative to netstat or ss for socket monitoring. âŦ‡ī¸ Installation: 1. Install cargo: From crates.io. 2. Install the somo crate: c

TUI monitor handler for Hyprland [maintainer=@Degra02]

MonitorMaestro Tired of fiddling with Hyprland configs? Monitor Maestro lets you switch between monitor layouts in a snap! This Rust-powered TUI app l

Owner
William D. Jones
William D. Jones
A monitor (service) for your monitor (display). Intercepts window behaviour when monitor configuration changes.

Mon-Mon A monitor (service) for your monitor (display). Listens for changes to display configuration (e.g. plugging in an additional screen) and allow

dan 5 Sep 29, 2023
🧠 A command-line utility for switching git branches more easily. Switch branches interactively or use a fuzzy search to find that long-forgotten branch name.

git-smart-checkout A git command extension for switching git branches more efficiently. About Interactively switch branches or fuzzy search for that f

Cezar Craciun 51 Dec 29, 2022
JiaShiwen 12 Nov 5, 2022
Run if inputs have changed, otherwise use cache

Boost Why Boost? Our planet is burning, and everywhere I look I see CI pipelines repeating work that has already been done. Tools such as TurboRepo, N

Stuart Harris 6 Jul 28, 2022
Pure Rust Fault Proof Program that runs the rollup state-transition to verify an L2 output from L1 inputs.

palmtop palmtop is a fault proof program that runs the rollup state transition to verify an L2 output from L1 inputs. The verifiable L2 output can the

Anton Systems 5 Sep 26, 2023
The official CLI for FlakeHub: search for flakes, and add new inputs to your Nix flake.

fh, the official FlakeHub CLI fh is a scrappy CLI for searching FlakeHub and adding new inputs to your Nix flakes. Usage Using fh from FlakeHub: nix s

Determinate Systems 35 Oct 11, 2023
Switch windows of same app with alt + ` on windows pc.

Windows Switcher Switch windows of same app with alt + ` on windows pc. 250k single file executable downloaded from Github Release. No installation re

null 172 Dec 10, 2022
Attempt to make a git profile switcher to switch profiles.

Git Profile Switcher █▀▀ █ ▀█▀   █▀ █░█░█ █ ▀█▀ █▀▀ █░█ █▀▀ █▀█ █▄█ █ ░█░   ▄█ ▀▄▀▄▀ █ ░█░ █▄▄ █▀█

Srikanth K 2 Sep 23, 2022
An i3/Sway utility to switch focus to your last focused window. Alt+Tab in i3

i3-back An i3/Sway utility to switch focus to your last focused window. Allows for behavior similar to Alt+Tab on other desktop environments. Features

Charles C 17 Mar 13, 2023
A CLI to easily switch between multiple Neovim configuration environments, written in Rust

Neovim Configuration Switcher Neovim Configuration Switcher (short nvims) is a CLI to easily switch between multiple Neovim configuration environments

Nhan Pham 3 Mar 30, 2024