Compare commits

...

5 Commits

Author SHA1 Message Date
003933c2ef
sync-res.sh: fix syncthing id regex 2024-12-07 21:05:36 -05:00
fecb7ed935
nvim: update debuggers 2024-12-07 21:05:21 -05:00
77e5bfd750
niri: misc 2024-12-07 21:05:04 -05:00
08c55bd439
piano.sh: added 2024-11-23 16:46:10 -05:00
63d320854f
waybar: truncate very long fields 2024-11-20 19:42:08 -05:00
7 changed files with 92 additions and 22 deletions

View File

@ -12,11 +12,14 @@ input {
touchpad {
tap
// disable while typing
dwt
}
mouse {}
warp-mouse-to-focus
focus-follows-mouse max-scroll-amount="10%"
}
output "HDMI-A-1" {
@ -137,13 +140,8 @@ window-rule {
block-out-from "screen-capture"
}
workspace "chat" {
open-on-output "HDMI-A-1"
}
window-rule {
match title="discord"
open-on-workspace "chat"
open-maximized true
}
@ -157,7 +155,7 @@ binds {
Alt+7 { focus-workspace 7; }
Alt+8 { focus-workspace 8; }
Alt+9 { focus-workspace 9; }
Alt+0 { focus-workspace "chat"; }
Alt+0 { focus-workspace 10; }
Alt+Shift+1 { move-column-to-workspace 1; }
Alt+Shift+2 { move-column-to-workspace 2; }
Alt+Shift+3 { move-column-to-workspace 3; }
@ -167,7 +165,7 @@ binds {
Alt+Shift+7 { move-column-to-workspace 7; }
Alt+Shift+8 { move-column-to-workspace 8; }
Alt+Shift+9 { move-column-to-workspace 9; }
Alt+Shift+0 { move-column-to-workspace "chat"; }
Alt+Shift+0 { move-column-to-workspace 10; }
Alt+Shift+Slash { show-hotkey-overlay; }
Alt+Shift+Return { spawn "newterm.sh"; }
@ -177,6 +175,8 @@ binds {
Alt+Shift+D { spawn "qbprof" "dsc"; }
Ctrl+Alt+L { spawn "swaylock"; }
Alt+V { spawn "style.sh"; }
Alt+Shift+Z { spawn "clipedit.sh"; }
Alt+Z { spawn "newterm.sh" "-e" "bookmk"; }

View File

@ -25,12 +25,7 @@ local M = {}
----------------
keymap("<leader>rs", dap.continue)
keymap("<leader>rt", function()
-- hard restart (lldb just stops when restarted)
dap.terminate()
vim.cmd.sleep("100m")
dap.continue()
end)
keymap("<leader>rt", dap.restart)
keymap("<leader>rr", dap.terminate)
keymap("<F11>", dap.step_into)
keymap("<c-n>", dap.step_over)
@ -165,8 +160,9 @@ function M.run_input(file)
vim.api.nvim_buf_call(dapui.elements.console.buffer(), function()
vim.b.nvimdbg_inp_file = M.dbg_dir(file) .. "/input"
vim.cmd [[
let @x = join(readfile(b:nvimdbg_inp_file), "\n") .. "\n\n"
normal G"xp
" 0x4 is eof
let @x = join(readfile(b:nvimdbg_inp_file), "\n") .. "\n\n" .. "\x04"
normal! G"xp
]]
end)
end
@ -238,7 +234,7 @@ dap.configurations.python = {
----------------
dap.adapters.lldb = {
type = "executable",
command = "/usr/bin/lldb-vscode",
command = "/usr/bin/lldb-dap",
name = "lldb"
}

View File

@ -28,8 +28,12 @@
"format-disconnected": "⚠"
},
"mpris": {
"format": "{artist} - {title} {status_icon}",
"format-paused": "{artist} - {title} {status_icon}",
"title-len": 65,
"album-len": 0,
"dynamic-len": 65,
"dynamic-order": ["artist", "title"],
"format": "{dynamic} {status_icon}",
"format-paused": "{dynamic} {status_icon}",
"status-icons": {
"playing": "✗",
"paused": "•"

View File

@ -1,7 +1,7 @@
#!/bin/bash
# window swallow emulation for Niri
# (https://github.com/YaLTeR/niri/discussions/762)
# requires at least commit d5cbc35
# requires at least commit d5cbc35 / version 0.1.10
#
# this script shrinks the terminal into a column with the new window.
# bind it in your shell as an alias like "hide".
@ -43,4 +43,4 @@ shift
"$@"
niri msg action set-window-height --id "$TERM_ID" 100%
niri msg action reset-window-height --id "$TERM_ID"

View File

@ -0,0 +1,70 @@
#!/bin/sh
# Script to set up the digital piano synth without a GUI.
#
# Requires an instrument sample pack, which can be obtained from:
# - https://freepats.zenvoid.org/Piano/acoustic-grand-piano.html
# - https://linuxsampler.org/instruments.html
# This script also requires manual PipeWire configuration using, for example, qpwgraph,
# to hook the MIDI input to LinuxSampler, and then LinuxSampler to your audio output.
# Once configured, save your PipeWire patchbay as "~/.config/piano_patch.qpwgraph".
#
# Depends on: linuxsampler, netcat, pipewire-jack, qpwgraph
#
# Examples:
#
# piano.sh ~/samples/maestro_concert_grand.gig
# piano.sh ~/samples/salamander.sfz
#
# The file extension is used to recognize the file format, so it is necessary that it is correct.
set -e
die() {
echo "$@" > /dev/stderr
exit 1
}
if [ -z "$PIANO_PATCH" ]; then
PIANO_PATCH="$HOME"/.config/piano_patch.qpwgraph
fi
PIANO_PATCH=$(realpath "$PIANO_PATCH")
INSTRUMENT="$1"
INSTRUMENT=$(realpath "$INSTRUMENT")
if [ -z "$INSTRUMENT" ]; then
die "No instrument sample pack provided. See script source for more information."
fi
case "$INSTRUMENT" in
*.gig) FORMAT="gig" ;;
*.sfz) FORMAT="sfz" ;;
*.sf2) FORMAT="sf2" ;;
*) die "Unknown format for instrument: $INSTRUMENT" ;;
esac
pw-jack linuxsampler &
cat << EOF | nc localhost 8888
SET ECHO 1
CREATE AUDIO_OUTPUT_DEVICE JACK
CREATE MIDI_INPUT_DEVICE ALSA
ADD CHANNEL
LOAD ENGINE $FORMAT 0
SET CHANNEL AUDIO_OUTPUT_DEVICE 0 0
SET CHANNEL MIDI_INPUT_DEVICE 0 0
LOAD INSTRUMENT '$INSTRUMENT' 0 0
GET CHANNEL INFO 0
QUIT
EOF
echo "Quit qpwgraph to gracefully stop piano.sh." > /dev/stderr
qpwgraph "$PIANO_PATCH"
echo "piano.sh stopping..." > /dev/stderr
# these processes love to linger around
killall -q ls-main
killall -q linuxsampler

View File

@ -16,7 +16,7 @@ if [ -z "$1" ]; then
die usage: $PROGNAME file.sync-conflict-XXXXXXXX-XXXXXX-XXXXXXX
fi
ORIG=$(echo "$1" | sed -E 's/\.sync-conflict-[0-9]{8}-[0-9]{6}-[A-Z]{7}//')
ORIG=$(echo "$1" | sed -E 's/\.sync-conflict-[0-9]{8}-[0-9]{6}-[A-Z0-9]{7}//')
if [ "$ORIG" = "$1" ]; then
die Could not find original file. Is this a sync-conflict file?

@ -1 +1 @@
Subproject commit 2b428ff2632e73295e9decbcf1c40d8e26213305
Subproject commit 0a0daa796a5919a51e5e5019ffa91219c94c4fef