Skip to content

gwirn/basalt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Basalt 🪨

keyBoArd Shortcut mApping pLaTform

Create hotkeys to launch programs or scripts that perform a range of different tasks.

TEST Software License

Installation

Install rust and cargo

Run cargo build --release to create a binary of the program.

Configuration

The configuration file where the keymaps are defined must be saved at

$HOME/.config/basalt/key.map

The file ignores # as comments. You can set shortcuts as KeyCode-KeyCode = [ command, argument ]. You can find example scripts and a key.map here. Malformatted lines will be ignored. You can find the keycodes to use here.

Usage

If new shortcuts are added, Basalt needs to be restarted for them to take effect. Here's an example of how to run Basalt in the background while still saving its PID to kill its process if needed:

#!/bin/bash

if ! pgrep "basalt" > /dev/null ; then
    "/PATH/TO/BASALT/basalt/target/release/basalt" &
    sleep_pid=$!
    echo $sleep_pid > "$HOME/.config/basalt/basalt.pid"
else
    echo "Basalt is already running"
fi

If this is added to a bash file and executed, it will launch Basalt in the background and save the process ID in 'basalt.pid'.

A possible bash script to stop basalt would then be:

#!/bin/bash

basalt_pid=$(cat "$HOME/.config/basalt/basalt.pid")

if pgrep "basalt" > /dev/null ; then
    kill $basalt_pid
else
    echo "Basalt is not running"
fi

OS

Tested on macOS Sonoma and Ubuntu 22.04

Releases

No releases published

Packages

No packages published

Languages