Compare commits
5 Commits
0b9b2d7399
...
003933c2ef
Author | SHA1 | Date | |
---|---|---|---|
003933c2ef | |||
fecb7ed935 | |||
77e5bfd750 | |||
08c55bd439 | |||
63d320854f |
@ -12,11 +12,14 @@ input {
|
|||||||
|
|
||||||
touchpad {
|
touchpad {
|
||||||
tap
|
tap
|
||||||
|
// disable while typing
|
||||||
|
dwt
|
||||||
}
|
}
|
||||||
|
|
||||||
mouse {}
|
mouse {}
|
||||||
|
|
||||||
warp-mouse-to-focus
|
warp-mouse-to-focus
|
||||||
|
focus-follows-mouse max-scroll-amount="10%"
|
||||||
}
|
}
|
||||||
|
|
||||||
output "HDMI-A-1" {
|
output "HDMI-A-1" {
|
||||||
@ -137,13 +140,8 @@ window-rule {
|
|||||||
block-out-from "screen-capture"
|
block-out-from "screen-capture"
|
||||||
}
|
}
|
||||||
|
|
||||||
workspace "chat" {
|
|
||||||
open-on-output "HDMI-A-1"
|
|
||||||
}
|
|
||||||
|
|
||||||
window-rule {
|
window-rule {
|
||||||
match title="discord"
|
match title="discord"
|
||||||
open-on-workspace "chat"
|
|
||||||
open-maximized true
|
open-maximized true
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -157,7 +155,7 @@ binds {
|
|||||||
Alt+7 { focus-workspace 7; }
|
Alt+7 { focus-workspace 7; }
|
||||||
Alt+8 { focus-workspace 8; }
|
Alt+8 { focus-workspace 8; }
|
||||||
Alt+9 { focus-workspace 9; }
|
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+1 { move-column-to-workspace 1; }
|
||||||
Alt+Shift+2 { move-column-to-workspace 2; }
|
Alt+Shift+2 { move-column-to-workspace 2; }
|
||||||
Alt+Shift+3 { move-column-to-workspace 3; }
|
Alt+Shift+3 { move-column-to-workspace 3; }
|
||||||
@ -167,7 +165,7 @@ binds {
|
|||||||
Alt+Shift+7 { move-column-to-workspace 7; }
|
Alt+Shift+7 { move-column-to-workspace 7; }
|
||||||
Alt+Shift+8 { move-column-to-workspace 8; }
|
Alt+Shift+8 { move-column-to-workspace 8; }
|
||||||
Alt+Shift+9 { move-column-to-workspace 9; }
|
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+Slash { show-hotkey-overlay; }
|
||||||
|
|
||||||
Alt+Shift+Return { spawn "newterm.sh"; }
|
Alt+Shift+Return { spawn "newterm.sh"; }
|
||||||
@ -177,6 +175,8 @@ binds {
|
|||||||
Alt+Shift+D { spawn "qbprof" "dsc"; }
|
Alt+Shift+D { spawn "qbprof" "dsc"; }
|
||||||
Ctrl+Alt+L { spawn "swaylock"; }
|
Ctrl+Alt+L { spawn "swaylock"; }
|
||||||
|
|
||||||
|
Alt+V { spawn "style.sh"; }
|
||||||
|
|
||||||
Alt+Shift+Z { spawn "clipedit.sh"; }
|
Alt+Shift+Z { spawn "clipedit.sh"; }
|
||||||
Alt+Z { spawn "newterm.sh" "-e" "bookmk"; }
|
Alt+Z { spawn "newterm.sh" "-e" "bookmk"; }
|
||||||
|
|
||||||
|
@ -25,12 +25,7 @@ local M = {}
|
|||||||
----------------
|
----------------
|
||||||
|
|
||||||
keymap("<leader>rs", dap.continue)
|
keymap("<leader>rs", dap.continue)
|
||||||
keymap("<leader>rt", function()
|
keymap("<leader>rt", dap.restart)
|
||||||
-- hard restart (lldb just stops when restarted)
|
|
||||||
dap.terminate()
|
|
||||||
vim.cmd.sleep("100m")
|
|
||||||
dap.continue()
|
|
||||||
end)
|
|
||||||
keymap("<leader>rr", dap.terminate)
|
keymap("<leader>rr", dap.terminate)
|
||||||
keymap("<F11>", dap.step_into)
|
keymap("<F11>", dap.step_into)
|
||||||
keymap("<c-n>", dap.step_over)
|
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.api.nvim_buf_call(dapui.elements.console.buffer(), function()
|
||||||
vim.b.nvimdbg_inp_file = M.dbg_dir(file) .. "/input"
|
vim.b.nvimdbg_inp_file = M.dbg_dir(file) .. "/input"
|
||||||
vim.cmd [[
|
vim.cmd [[
|
||||||
let @x = join(readfile(b:nvimdbg_inp_file), "\n") .. "\n\n"
|
" 0x4 is eof
|
||||||
normal G"xp
|
let @x = join(readfile(b:nvimdbg_inp_file), "\n") .. "\n\n" .. "\x04"
|
||||||
|
normal! G"xp
|
||||||
]]
|
]]
|
||||||
end)
|
end)
|
||||||
end
|
end
|
||||||
@ -238,7 +234,7 @@ dap.configurations.python = {
|
|||||||
----------------
|
----------------
|
||||||
dap.adapters.lldb = {
|
dap.adapters.lldb = {
|
||||||
type = "executable",
|
type = "executable",
|
||||||
command = "/usr/bin/lldb-vscode",
|
command = "/usr/bin/lldb-dap",
|
||||||
name = "lldb"
|
name = "lldb"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -28,8 +28,12 @@
|
|||||||
"format-disconnected": "⚠"
|
"format-disconnected": "⚠"
|
||||||
},
|
},
|
||||||
"mpris": {
|
"mpris": {
|
||||||
"format": "{artist} - {title} {status_icon}",
|
"title-len": 65,
|
||||||
"format-paused": "{artist} - {title} {status_icon}",
|
"album-len": 0,
|
||||||
|
"dynamic-len": 65,
|
||||||
|
"dynamic-order": ["artist", "title"],
|
||||||
|
"format": "{dynamic} {status_icon}",
|
||||||
|
"format-paused": "{dynamic} {status_icon}",
|
||||||
"status-icons": {
|
"status-icons": {
|
||||||
"playing": "✗",
|
"playing": "✗",
|
||||||
"paused": "•"
|
"paused": "•"
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# window swallow emulation for Niri
|
# window swallow emulation for Niri
|
||||||
# (https://github.com/YaLTeR/niri/discussions/762)
|
# (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.
|
# this script shrinks the terminal into a column with the new window.
|
||||||
# bind it in your shell as an alias like "hide".
|
# 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"
|
||||||
|
70
src/dot_local/bin/executable_piano.sh
Normal file
70
src/dot_local/bin/executable_piano.sh
Normal 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
|
@ -16,7 +16,7 @@ if [ -z "$1" ]; then
|
|||||||
die usage: $PROGNAME file.sync-conflict-XXXXXXXX-XXXXXX-XXXXXXX
|
die usage: $PROGNAME file.sync-conflict-XXXXXXXX-XXXXXX-XXXXXXX
|
||||||
fi
|
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
|
if [ "$ORIG" = "$1" ]; then
|
||||||
die Could not find original file. Is this a sync-conflict file?
|
die Could not find original file. Is this a sync-conflict file?
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit 2b428ff2632e73295e9decbcf1c40d8e26213305
|
Subproject commit 0a0daa796a5919a51e5e5019ffa91219c94c4fef
|
Loading…
Reference in New Issue
Block a user