Convenience-features for Emacs and shell scripts

NixOS:
feat: add cdw, cdr, cdb, bak scripts/aliases
feat: spawn firefox on workspace 1 again
fix: adjust systemd stop timeout to avoid 1m30s wait on shutdown
feat: add fzf-tab

Emacs:
fix: file-switcher directory up was not working consistently
feat: more intuitive minibuffer-local-map (DEL is now 1 char again)
chore: C-z now a prefix key, several new keybinds
fix: make project switching in dashboard work again
fix: add proper projectile backend (was still set to ivy)
fix: allow yubikey unlocking from within emacs
feat: add dotfile directory to magit repository list
This commit is contained in:
Swarsel 2024-06-17 19:39:20 +02:00
parent 1ddc3eb81d
commit 5e9c3c398f
Signed by: swarsel
GPG key ID: 26A54C31F2A4FD84
6 changed files with 435 additions and 269 deletions

View file

@ -23,6 +23,7 @@
# utilities
util-linux
nmap
lsof
# local file sharing
wormhole-rs
@ -274,7 +275,41 @@
'';
})
];
(pkgs.writeShellApplication {
name = "cdw";
runtimeInputs = [ pkgs.fzf ];
text = ''
cd "$(git worktree list | fzf | awk '{print $1}')"
'';
})
(pkgs.writeShellApplication {
name = "cdb";
runtimeInputs = [ pkgs.fzf ];
text = ''
git checkout "$(git branch --list | grep -v "^\*" | fzf | awk '{print $1}')"
'';
})
# (pkgs.writeShellApplication {
# name = "cdr";
# runtimeInputs = [ pkgs.fzf ];
# text = ''
# cdr () {
# cd "$( (find /home/swarsel/Documents/GitHub -maxdepth 1 && echo /home/swarsel/.dotfiles) | fzf )"
# }
# cdr
# '';
# })
(pkgs.writeShellApplication {
name = "bak";
text = ''
cp "$1"{,.bak}
'';
})
];
# MIGHT NEED TO ENABLE THIS ON SURFACE!!
@ -724,6 +759,8 @@ programs.zsh = {
passpush = "cd ~/.local/share/password-store; git add .; git commit -m 'pass file changes'; git push; cd -;";
passpull = "cd ~/.local/share/password-store; git pull; cd -;";
hotspot = "nmcli connection up local; nmcli device wifi hotspot password 12345678;";
cd="z";
cdr = "cd \"$( (find /home/swarsel/Documents/GitHub -maxdepth 1 && echo /home/swarsel/.dotfiles) | fzf )\"";
};
autosuggestion.enable = true;
enableCompletion = true;
@ -736,6 +773,7 @@ programs.zsh = {
defaultKeymap = "emacs";
dirHashes = {
dl = "$HOME/Downloads";
gh = "$HOME/Documents/GitHub";
};
history = {
expireDuplicatesFirst = true;
@ -744,6 +782,12 @@ programs.zsh = {
size = 10000;
};
historySubstringSearch.enable = true;
plugins = [
{
name = "fzf-tab";
src = pkgs.zsh-fzf-tab;
}
];
initExtra = ''
bindkey "^[[1;5D" backward-word
bindkey "^[[1;5C" forward-word
@ -1647,8 +1691,7 @@ wayland.windowManager.sway = {
titlebar = false;
};
assigns = {
# disabled, this is too annoying to be of use
# "1:一" = [{ app_id = "^firefox$"; }];
"1:" = [{ app_id = "firefox"; }];
};
colors = {
focused = {