chore: clean up dotfiles and add gitignore whitelist

Switch to whitelist-based .gitignore to only track essential configs:
nvim, yazi, kitty, zsh, ideavim, karabiner, tmux, scripts, starship.
Remove history, compiled files, and plugin dirs from tracking.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Thomas Naderer
2026-03-11 12:57:14 +01:00
parent 61b1e3d2a9
commit d8a20d620a
32 changed files with 1471 additions and 2868 deletions

View File

@@ -100,6 +100,7 @@ keymap = [
{ on = [ "c", "d" ], run = "copy dirname", desc = "Copy the directory path" },
{ on = [ "c", "f" ], run = "copy filename", desc = "Copy the filename" },
{ on = [ "c", "n" ], run = "copy name_without_ext", desc = "Copy the filename without extension" },
{ on = [ "c", "y" ], run = "shell --block 'osascript -e \"on run argv\" -e \"set fList to {}\" -e \"repeat with p in argv\" -e \"set end of fList to (POSIX file p as alias)\" -e \"end repeat\" -e \"tell application \\\"Finder\\\" to set the clipboard to fList\" -e \"end run\" \"$@\" || printf \"%s\\n\" \"$@\" | pbcopy' --confirm", desc = "Copy selected files to Finder clipboard (fallback: copy paths as text)" },
# Filter
{ on = "f", run = "filter --smart", desc = "Filter files" },
@@ -122,8 +123,18 @@ keymap = [
{ on = [ "<C-y>", "o", "w" ], run = "shell 'cp -r \"$@\" ~/Library/Mobile\\ Documents/iCloud~md~obsidian/Documents/Work/' --confirm", desc = "Copy to Obsidian/Work" },
# Copy to JKU dirs
{ on = [ "<C-y>", "j", "b" ], run = "shell 'cp -r \"$@\" ~/Documents/JKU/Studium/BWL/' --confirm", desc = "Copy to JKU/BWL" },
{ on = [ "<C-y>", "j", "w" ], run = "shell 'cp -r \"$@\" ~/Documents/JKU/Work/' --confirm", desc = "Copy to JKU/Work" },
{ on = [ "<C-y>", "j", "b" ], run = "shell 'cp -r \"$@\" ~/Documents/JKU/Studies/BWL/' --confirm", desc = "Copy to JKU/Studies/BWL" },
{ on = [ "<C-y>", "j", "r" ], run = "shell 'cp -r \"$@\" ~/Documents/JKU/Research/' --confirm", desc = "Copy to JKU/Research" },
{ on = [ "<C-y>", "j", "s" ], run = "shell 'cp -r \"$@\" ~/Documents/JKU/Studies/' --confirm", desc = "Copy to JKU/Studies" },
{ on = [ "<C-y>", "j", "a" ], run = "shell 'cp -r \"$@\" ~/Documents/JKU/Admin/' --confirm", desc = "Copy to JKU/Admin" },
# Copy to Projects
{ on = [ "<C-y>", "p", "<Space>" ], run = "shell 'cp -r \"$@\" ~/Projects/' --confirm", desc = "Copy to Projects" },
{ on = [ "<C-y>", "p", "a" ], run = "shell 'cp -r \"$@\" ~/Projects/adonis-ag/' --confirm", desc = "Copy to Projects/adonis-ag" },
{ on = [ "<C-y>", "p", "c" ], run = "shell 'cp -r \"$@\" ~/Projects/crypto/' --confirm", desc = "Copy to Projects/crypto" },
{ on = [ "<C-y>", "p", "j" ], run = "shell 'cp -r \"$@\" ~/Projects/jku/' --confirm", desc = "Copy to Projects/jku" },
{ on = [ "<C-y>", "p", "n" ], run = "shell 'cp -r \"$@\" ~/Projects/naderer.digital/' --confirm", desc = "Copy to Projects/naderer.digital" },
{ on = [ "<C-y>", "p", "p" ], run = "shell 'cp -r \"$@\" ~/Projects/personal/' --confirm", desc = "Copy to Projects/personal" },
# Move to destination (Ctrl+X)
{ on = [ "<C-x>", "h" ], run = "shell 'mv \"$@\" ~/' --confirm", desc = "Move to home" },
@@ -143,8 +154,18 @@ keymap = [
{ on = [ "<C-x>", "o", "w" ], run = "shell 'mv \"$@\" ~/Library/Mobile\\ Documents/iCloud~md~obsidian/Documents/Work/' --confirm", desc = "Move to Obsidian/Work" },
# Move to JKU dirs
{ on = [ "<C-x>", "j", "b" ], run = "shell 'mv \"$@\" ~/Documents/JKU/Studium/BWL/' --confirm", desc = "Move to JKU/BWL" },
{ on = [ "<C-x>", "j", "w" ], run = "shell 'mv \"$@\" ~/Documents/JKU/Work/' --confirm", desc = "Move to JKU/Work" },
{ on = [ "<C-x>", "j", "b" ], run = "shell 'mv \"$@\" ~/Documents/JKU/Studies/BWL/' --confirm", desc = "Move to JKU/Studies/BWL" },
{ on = [ "<C-x>", "j", "r" ], run = "shell 'mv \"$@\" ~/Documents/JKU/Research/' --confirm", desc = "Move to JKU/Research" },
{ on = [ "<C-x>", "j", "s" ], run = "shell 'mv \"$@\" ~/Documents/JKU/Studies/' --confirm", desc = "Move to JKU/Studies" },
{ on = [ "<C-x>", "j", "a" ], run = "shell 'mv \"$@\" ~/Documents/JKU/Admin/' --confirm", desc = "Move to JKU/Admin" },
# Move to Projects
{ on = [ "<C-x>", "p", "<Space>" ], run = "shell 'mv \"$@\" ~/Projects/' --confirm", desc = "Move to Projects" },
{ on = [ "<C-x>", "p", "a" ], run = "shell 'mv \"$@\" ~/Projects/adonis-ag/' --confirm", desc = "Move to Projects/adonis-ag" },
{ on = [ "<C-x>", "p", "c" ], run = "shell 'mv \"$@\" ~/Projects/crypto/' --confirm", desc = "Move to Projects/crypto" },
{ on = [ "<C-x>", "p", "j" ], run = "shell 'mv \"$@\" ~/Projects/jku/' --confirm", desc = "Move to Projects/jku" },
{ on = [ "<C-x>", "p", "n" ], run = "shell 'mv \"$@\" ~/Projects/naderer.digital/' --confirm", desc = "Move to Projects/naderer.digital" },
{ on = [ "<C-x>", "p", "p" ], run = "shell 'mv \"$@\" ~/Projects/personal/' --confirm", desc = "Move to Projects/personal" },
# Find
{ on = "/", run = "find --smart", desc = "Find next file" },
@@ -176,39 +197,50 @@ keymap = [
{ on = [ "g", "D" ], run = "cd ~/Documents", desc = "Goto ~/Documents" },
{ on = [ "g", "t" , "<Space>" ], run = "cd ~/Torrents", desc = "Goto ~/Torrents" },
{ on = [ "g", "t", "b"], run = "cd ~/Torrents/Books", desc = "Goto Books" },
{ on = [ "g", "t", "a"], run = "cd ~/Torrents/Audiobooks", desc = "Goto Books" },
{ on = [ "g", "t", "s"], run = "cd ~/Torrents/Shows", desc = "Goto Shows" },
{ on = [ "g", "t", "m"], run = "cd ~/Torrents/Movies", desc = "Goto Shows" },
{ on = [ "g", "t", "a"], run = "cd ~/Torrents/Audiobooks", desc = "Goto Audiobooks" },
{ on = [ "g", "t", "s"], run = "cd ~/Torrents/Shows", desc = "Goto Shows" },
{ on = [ "g", "t", "m"], run = "cd ~/Torrents/Movies", desc = "Goto Movies" },
{ on = [ "g", "s" ], run = "cd \"~/Music/Sheet Music/Alto Saxophone\"", desc = "Goto Sax Sheets" },
#Studies
{ on = [ "g", "j", "b" ], run = "cd \"~/Documents/JKU/Studium/BWL\"", desc = "Goto BWL" },
{ on = [ "g", "j", "w" ], run = "cd \"~/Documents/JKU/Work\"", desc = "Goto Work(local)" },
{ on = [ "g", "w" ], run = "cd \"~/Pictures/Wallpapers\"", desc = "Goto Wallpapers)" },
{ on = [ "g", "o", "p" ], run = "cd ~/Library/Mobile\\ Documents/iCloud~md~obsidian/Documents/Private/", desc = "Goto Obsidian/Privat" },
#JKU
{ on = [ "g", "j", "<Space>" ], run = "cd ~/Documents/JKU", desc = "Goto JKU" },
{ on = [ "g", "j", "b" ], run = "cd \"~/Documents/JKU/Studies/BWL\"", desc = "Goto JKU/Studies/BWL" },
{ on = [ "g", "j", "r" ], run = "cd \"~/Documents/JKU/Research\"", desc = "Goto JKU/Research" },
{ on = [ "g", "j", "s" ], run = "cd \"~/Documents/JKU/Studies\"", desc = "Goto JKU/Studies" },
{ on = [ "g", "j", "a" ], run = "cd \"~/Documents/JKU/Admin\"", desc = "Goto JKU/Admin" },
{ on = [ "g", "w" ], run = "cd \"~/Pictures/Wallpapers\"", desc = "Goto Wallpapers" },
{ on = [ "g", "o", "p" ], run = "cd ~/Library/Mobile\\ Documents/iCloud~md~obsidian/Documents/Private/", desc = "Goto Obsidian/Private" },
{ on = [ "g", "o", "d" ], run = "shell --confirm 'touch $(date +%F).md'", desc = "Create Daily Note in Obsidian" },
{ on = [ "g", "o", "w" ], run = "cd ~/Library/Mobile\\ Documents/iCloud~md~obsidian/Documents/Work/", desc = "Goto Obsidian/Work" },
#Work Related - Network drive
#Local Projects
{ on = [ "g", "p", "<Space>" ], run = "cd ~/Projects", desc = "Goto Projects" },
{ on = [ "g", "p", "a" ], run = "cd ~/Projects/adonis-ag", desc = "Goto Projects/adonis-ag" },
{ on = [ "g", "p", "c" ], run = "cd ~/Projects/crypto", desc = "Goto Projects/crypto" },
{ on = [ "g", "p", "j" ], run = "cd ~/Projects/jku", desc = "Goto Projects/jku" },
{ on = [ "g", "p", "n" ], run = "cd ~/Projects/naderer.digital", desc = "Goto Projects/naderer.digital" },
{ on = [ "g", "p", "p" ], run = "cd ~/Projects/personal", desc = "Goto Projects/personal" },
#Network drive - Personal (TNHOME)
{ on = [ "g", "a", "<Space>" ], run = "cd /Volumes/TNHOME/home/AK127132", desc = "Goto AK127132" },
{ on = [ "g", "a", "z" ], run = "cd /Volumes/TNHOME/home/AK127132/Zeitaufzeichnung", desc = "Goto Zeitaufzeichnung" },
#Network drive - IPPD/Internal
{ on = [ "g", "i", "<Space>" ], run = "cd /Volumes/ipec/intern", desc = "Goto Intern" },
{ on = [ "g", "p", "b" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P63_Berndorf Band\"", desc = "Goto Berndorf" },
{ on = [ "g", "p", "s" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P42b_Senoplast SenoSmartCoex\"", desc = "Goto SenoSmartCoex" },
{ on = [ "g", "p", "m" , "<Space>" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL\"", desc = "Goto MoNoQEL" },
{ on = [ "g", "p", "m" , "p" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL/02 Projektmanagemant/\"", desc = "Goto MoNoQEL/Projektmanagement" },
{ on = [ "g", "p", "m" , "1" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL/03 Arbeitspakete/AP1 Projektmanagement und Dissemination/\"", desc = "Goto MoNoQEL/AP1 Projektmanagemant & Dissemination" },
{ on = [ "g", "p", "m" , "2" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL/03 Arbeitspakete/AP2 Grundlagenforschung zu optischen Kontrastmechanismen/\"", desc = "Goto MoNoQEL/AP2 Grundlagenforschung" },
{ on = [ "g", "p", "m" , "3" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL/03 Arbeitspakete/AP3 Optimierung hochauflösender OCT-Messtechnik/\"", desc = "Goto MoNoQEL/AP3 OCT-Optimierung" },
{ on = [ "g", "p", "m" , "4" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL/03 Arbeitspakete/AP4 KI-gestützte Bildanalyse und Defektklassifizierung/\"", desc = "Goto MoNoQEL/AP4 Bildanalyse" },
{ on = [ "g", "p", "m" , "5" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL/03 Arbeitspakete/AP5 Prozessintegration und Inline-Demonstration/\"", desc = "Goto MoNoQEL/AP5 Prozessintegration" },
{ on = [ "g", "p", "m" , "6" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL/03 Arbeitspakete/AP6 Systemvalidierung und Technologietransfer/\"", desc = "Goto MoNoQEL/AP6 Systemvalidierung" },
{ on = [ "g", "i", "p" ], run = "cd \"/Volumes/ipec/intern/05_Institutsbesprechungen/Projektstatusberichte\"", desc = "Goto Projektstatusberichte" },
{ on = [ "g", "i", "p", "b" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P63_Berndorf Band\"", desc = "Goto Berndorf" },
{ on = [ "g", "i", "p", "s" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P42b_Senoplast SenoSmartCoex\"", desc = "Goto SenoSmartCoex" },
{ on = [ "g", "i", "p", "m", "<Space>" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL\"", desc = "Goto MoNoQEL" },
{ on = [ "g", "i", "p", "m", "p" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL/02 Projektmanagemant/\"", desc = "Goto MoNoQEL/Projektmanagement" },
{ on = [ "g", "i", "p", "m", "1" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL/03 Arbeitspakete/AP1 Projektmanagement und Dissemination/\"", desc = "Goto MoNoQEL/AP1 Projektmanagemant & Dissemination" },
{ on = [ "g", "i", "p", "m", "2" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL/03 Arbeitspakete/AP2 Grundlagenforschung zu optischen Kontrastmechanismen/\"", desc = "Goto MoNoQEL/AP2 Grundlagenforschung" },
{ on = [ "g", "i", "p", "m", "3" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL/03 Arbeitspakete/AP3 Optimierung hochauflösender OCT-Messtechnik/\"", desc = "Goto MoNoQEL/AP3 OCT-Optimierung" },
{ on = [ "g", "i", "p", "m", "4" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL/03 Arbeitspakete/AP4 KI-gestützte Bildanalyse und Defektklassifizierung/\"", desc = "Goto MoNoQEL/AP4 Bildanalyse" },
{ on = [ "g", "i", "p", "m", "5" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL/03 Arbeitspakete/AP5 Prozessintegration und Inline-Demonstration/\"", desc = "Goto MoNoQEL/AP5 Prozessintegration" },
{ on = [ "g", "i", "p", "m", "6" ], run = "cd \"/Volumes/ipec/intern/02_Projekte/P62_MoNoQEL/03 Arbeitspakete/AP6 Systemvalidierung und Technologietransfer/\"", desc = "Goto MoNoQEL/AP6 Systemvalidierung" },
{ on = [ "g", "i", "b", "p" ], run = "cd \"/Volumes/ipec/intern/05_Institutsbesprechungen/Projektstatusberichte\"", desc = "Goto Projektstatusberichte" },
{ on = [ "g", "i", "b" ], run = "cd \"/Volumes/ipec/intern/05_Institutsbesprechungen\"", desc = "Goto Institutsbesprechungen" },
{ on = [ "g", "<Space>" ], run = "cd --interactive", desc = "Jump interactively" },
{ on = "R", run = "open -a Finder .", desc = "Open current folder in Finder" },
{ on = "E", run = "shell 'open -a Finder \"$(pwd)\"'", desc = "Open current folder in Finder" },
# Tabs
{ on = "t", run = "tab_create --current", desc = "Create a new tab with CWD" },
@@ -444,6 +476,36 @@ on = "l"
run = "plugin smart-enter"
desc = "Enter the child directory, or open the file"
[[mgr.prepend_keymap]]
on = "T"
run = "plugin toggle-pane --args max-preview"
desc = "Maximize preview pane"
[[mgr.prepend_keymap]]
on = "I"
run = "plugin toggle-pane --args min-preview"
desc = "Hide/show preview pane"
[[mgr.prepend_keymap]]
on = ["c", "m"]
run = "plugin chmod"
desc = "Chmod selected files"
[[mgr.prepend_keymap]]
on = [",", "d"]
run = "plugin diff"
desc = "Diff selected files"
[[mgr.prepend_keymap]]
on = "+"
run = "plugin zoom 1"
desc = "Zoom into image preview"
[[mgr.prepend_keymap]]
on = "-"
run = "plugin zoom -1"
desc = "Zoom out of image preview"
[[plugin.prepend_fetchers]]
id = "git"