diff --git a/home/ooks/base/shell/cli/fish.nix b/home/ooks/base/shell/cli/fish.nix index c84f3f4..ab7e943 100644 --- a/home/ooks/base/shell/cli/fish.nix +++ b/home/ooks/base/shell/cli/fish.nix @@ -44,6 +44,26 @@ in }; functions = { fish_greeting = ""; + zellij_session_select = '' + if not set -q ZELLIJ + set -l ZJ_SESSIONS (zellij list-sessions | awk '{print $1}') + set -l NO_SESSIONS (count $ZJ_SESSIONS) + + if test $NO_SESSIONS -gt 0 + set -l SELECTED_SESSION (printf "%s\n" $ZJ_SESSIONS | sk --ansi) + + if test -n "$SELECTED_SESSION" + zellij attach -c $SELECTED_SESSION + else + zellij + end + else + zellij + end + end + + ''; + fish_flake_edit = '' cd $FLAKE hx $FLAKE @@ -57,8 +77,11 @@ in bind --preset -M insert \ec skim_cd_widget ''; }; - # kitty integration interactiveShellInit = + # zellij auto start script + '' + zellij_session_select + '' + '' set --global KITTY_INSTALLATION_DIR "${pkgs.kitty}/lib/kitty" set --global KITTY_SHELL_INTEGRATION enabled diff --git a/home/ooks/base/shell/cli/zellij.nix b/home/ooks/base/shell/cli/zellij.nix index 6483c89..e50d027 100644 --- a/home/ooks/base/shell/cli/zellij.nix +++ b/home/ooks/base/shell/cli/zellij.nix @@ -7,7 +7,6 @@ in { programs.zellij = { enable = true; - enableFishIntegration = true; settings = { theme = "${colorscheme.slug}"; themes = { @@ -27,5 +26,4 @@ in }; }; }; -# home.sessionVariable = ZELLIJ_AUTO_ATTACH = "1"; }