mirror of
https://github.com/avinal/dotfiles.git
synced 2026-07-03 23:20:07 +05:30
feat: add more configurations and a new theme
- a theme based on carbon and vim high contrast - modify layouts in zellij and add support for swaps - add snippets Signed-off-by: Avinal Kumar <avinal.xlvii@gmail.com>
This commit is contained in:
@@ -1,26 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
# hx-pick: loop between file picker and helix
|
||||
# Select a file -> edit in helix -> back to picker on exit
|
||||
# Press Esc/Ctrl-C in the picker to drop to a normal shell
|
||||
|
||||
dir="${1:-.}"
|
||||
cd "$dir" || exit 1
|
||||
|
||||
while true; do
|
||||
file=$(find . -type f \
|
||||
-not -path './.git/*' \
|
||||
-not -path '*/node_modules/*' \
|
||||
-not -path '*/vendor/*' \
|
||||
-not -path '*/__pycache__/*' \
|
||||
-not -path '*/target/*' \
|
||||
-not -path '*/.build/*' \
|
||||
| sort \
|
||||
| fzf --height=100% --layout=reverse --border=rounded \
|
||||
--prompt="Edit > " \
|
||||
--header="Esc to exit to shell" \
|
||||
--preview='head -100 {}' \
|
||||
--preview-window=right:50%:wrap)
|
||||
|
||||
[ -z "$file" ] && break
|
||||
hx "$file"
|
||||
done
|
||||
Executable
+80
@@ -0,0 +1,80 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
# razer-setup: configure Razer mouse with Space Carbon theme colors
|
||||
# Finds the first razermouse in sysfs and applies DPI, poll rate, and lighting
|
||||
|
||||
find_mouse() {
|
||||
for dev in /sys/bus/hid/drivers/razermouse/0003:*; do
|
||||
[ -f "$dev/device_type" ] && echo "$dev" && return
|
||||
done
|
||||
echo "No Razer mouse found" >&2; exit 1
|
||||
}
|
||||
|
||||
DEV=$(find_mouse)
|
||||
NAME=$(cat "$DEV/device_type")
|
||||
echo "Found: $NAME"
|
||||
|
||||
# DPI stages: 400, 800, 1200, 1800 (active), 3200
|
||||
# Format: active_stage(1-based) then (X_hi X_lo Y_hi Y_lo) per stage
|
||||
set_dpi() {
|
||||
local active=${1:-4}
|
||||
printf '\x04' > "$DEV/dpi_stages" # stage count byte placeholder
|
||||
# Actually the dpi_stages sysfs takes binary:
|
||||
# byte 0 = active stage (1-indexed)
|
||||
# then 4 bytes per stage: X_hi, X_lo, Y_hi, Y_lo
|
||||
printf '\x04\x01\x90\x01\x90\x03\x20\x03\x20\x04\xb0\x04\xb0\x07\x08\x07\x08\x0c\x80\x0c\x80' > "$DEV/dpi_stages"
|
||||
echo " DPI stages: 400, 800, 1200, 1800*, 3200"
|
||||
}
|
||||
|
||||
set_poll_rate() {
|
||||
echo "$1" > "$DEV/poll_rate"
|
||||
echo " Poll rate: ${1}Hz"
|
||||
}
|
||||
|
||||
set_color_static() {
|
||||
# Space Carbon cyan: #3a97d4 = RGB(58, 151, 212)
|
||||
printf '\x3a\x97\xd4' > "$DEV/matrix_effect_static"
|
||||
echo " Lighting: static cyan (#3a97d4)"
|
||||
}
|
||||
|
||||
set_brightness() {
|
||||
printf "$(printf '\\x%02x' "$1")" > "$DEV/matrix_brightness"
|
||||
echo " Brightness: $1/255"
|
||||
}
|
||||
|
||||
case "${1:-apply}" in
|
||||
apply)
|
||||
set_dpi
|
||||
set_poll_rate 500
|
||||
set_color_static
|
||||
set_brightness 128
|
||||
echo "Done."
|
||||
;;
|
||||
spectrum)
|
||||
printf '' > "$DEV/matrix_effect_spectrum"
|
||||
echo " Lighting: spectrum"
|
||||
;;
|
||||
off)
|
||||
printf '' > "$DEV/matrix_effect_none"
|
||||
echo " Lighting: off"
|
||||
;;
|
||||
color)
|
||||
# Usage: razer-setup color RRGGBB
|
||||
hex="${2:?Usage: razer-setup color RRGGBB}"
|
||||
r=$((16#${hex:0:2}))
|
||||
g=$((16#${hex:2:2}))
|
||||
b=$((16#${hex:4:2}))
|
||||
printf "\\x$(printf '%02x' $r)\\x$(printf '%02x' $g)\\x$(printf '%02x' $b)" > "$DEV/matrix_effect_static"
|
||||
echo " Lighting: static #$hex"
|
||||
;;
|
||||
status)
|
||||
echo " Type: $(cat "$DEV/device_type")"
|
||||
[ -f "$DEV/poll_rate" ] && echo " Poll rate: $(cat "$DEV/poll_rate")Hz"
|
||||
[ -f "$DEV/charge_level" ] && echo " Battery: $(cat "$DEV/charge_level")%"
|
||||
[ -f "$DEV/charge_status" ] && echo " Charging: $(cat "$DEV/charge_status")"
|
||||
;;
|
||||
*)
|
||||
echo "Usage: razer-setup [apply|spectrum|off|color RRGGBB|status]"
|
||||
;;
|
||||
esac
|
||||
Reference in New Issue
Block a user