zellij, hyprland config

This commit is contained in:
iofq 2024-11-18 20:10:08 -06:00
parent 39052c860d
commit 22cca03fec
12 changed files with 135 additions and 51 deletions

View file

@ -9,9 +9,10 @@
];
home = {
packages = with pkgs; [
tree
eza
bat
ripgrep
fd
];
};
programs.fish = {
@ -30,19 +31,25 @@
set -gx NIX_FLAKE '/home/e/dev/nix'
";
plugins = [
{ name = "fzf"; src = pkgs.fishPlugins.fzf-fish.src; }
{ name = "puffer"; src = pkgs.fishPlugins.puffer.src; }
{
name = "fzf";
inherit (pkgs.fishPlugins.fzf-fish) src;
}
{
name = "puffer";
inherit (pkgs.fishPlugins.puffer) src;
}
];
functions = {
nix = {
wraps = "nix";
body = ''
if status is-interactive
and test (count $argv) = 1 -a "$argv[1]" = develop
nix develop --command (status fish-path)
else
command nix $argv
end
if status is-interactive
and test (count $argv) = 1 -a "$argv[1]" = develop
nix develop --command (status fish-path)
else
command nix $argv
end
'';
};
};
@ -58,6 +65,7 @@
mpv = "mpv --no-keepaspect-window";
cat = "bat -pp";
tcd = "cd $(mktemp -d)";
docker = "nerdctl";
};
};
programs.bash = {

View file

@ -1,4 +1,4 @@
_: {
{config, ...}: {
programs.tmux = {
enable = true;
keyMode = "vi";
@ -17,4 +17,59 @@ _: {
setw -g window-status-current-format '[#P:#W*] '
'';
};
programs.zellij = {
enable = true;
enableFishIntegration = true;
};
home.file."${config.xdg.configHome}/zellij/config.kdl".text = ''
on_force_close "quit"
default_layout "compact"
default_mode "locked"
keybinds {
tmux {
bind "Ctrl a" { Write 2; SwitchToMode "Locked"; }
bind "[" { SwitchToMode "Scroll"; }
bind "\"" { NewPane "Down"; SwitchToMode "Locked"; }
bind "%" { NewPane "Right"; SwitchToMode "Locked"; }
bind "z" { ToggleFocusFullscreen; SwitchToMode "Locked"; }
bind "c" { NewTab; SwitchToMode "Locked"; }
bind "," { SwitchToMode "RenameTab"; }
bind "p" { GoToPreviousTab; SwitchToMode "Locked"; }
bind "n" { GoToNextTab; SwitchToMode "Locked"; }
bind "h" { MoveFocus "Left"; SwitchToMode "Locked"; }
bind "l" { MoveFocus "Right"; SwitchToMode "Locked"; }
bind "j" { MoveFocus "Down"; SwitchToMode "Locked"; }
bind "k" { MoveFocus "Up"; SwitchToMode "Locked"; }
bind "Ctrl h" { MoveFocus "Left"; }
bind "Ctrl l" { MoveFocus "Right"; }
bind "Ctrl j" { MoveFocus "Down"; }
bind "Ctrl k" { MoveFocus "Up"; }
bind "o" { FocusNextPane; }
bind "d" { Detach; }
bind "Space" { NextSwapLayout; }
bind "x" { CloseFocus; SwitchToMode "Locked"; }
bind "/" {
LaunchOrFocusPlugin "zellij-forgot" { floating true }
}
}
shared_except "tmux" {
bind "Ctrl a" {
SwitchToMode "Tmux"
}
}
}
mouse_mode true
pane_frames false
plugins {
zellij-forgot location="https://github.com/karimould/zellij-forgot/releases/download/0.4.0/zellij_forgot.wasm"
}
simplified_ui true
theme "ansi"
ui {
pane_frames {
hide_session_name true
}
}
'';
}