diff --git a/home/ooks/base/shell/default.nix b/home/ooks/base/shell/default.nix index 7de48b3..9882cac 100644 --- a/home/ooks/base/shell/default.nix +++ b/home/ooks/base/shell/default.nix @@ -1,6 +1,7 @@ { pkgs, ... }: { imports = [ ./bat.nix + ./lf.nix ./nvim.nix ./fzf.nix ./git.nix diff --git a/home/ooks/base/shell/fish.nix b/home/ooks/base/shell/fish.nix index 5124138..fb31b68 100644 --- a/home/ooks/base/shell/fish.nix +++ b/home/ooks/base/shell/fish.nix @@ -7,6 +7,7 @@ let hasKitty = config.programs.kitty.enable; hasTre = hasPackage "tre-command"; hasBat = hasPackage "bat"; + hasHelix = hasPackage "helix"; in { programs.fish = { @@ -29,6 +30,8 @@ in hm = "home-manager --flake ."; hms = "home-manager --flake . switch"; + fe = mkIf hasHelix "cd $FLAKE; hx $FLAKE"; + tree = mkIf hasTre "tre"; ls = mkIf hasEza "eza --icons"; @@ -40,6 +43,18 @@ in }; functions = { fish_greeting = ""; + fish_flake_edit = '' + cd $FLAKE + hx $FLAKE + ''; + fish_hello_world = '' + echo "Hello World"; string repeat -N \n --count=(math (count (fish_prompt)) - 1); commandline -f repaint + ''; + + fish_user_key_bindings = '' + bind --preset -M insert \co fish_hello_world + bind --preset -M insert \cf fish_flake_edit + ''; }; # kitty integration interactiveShellInit = diff --git a/home/ooks/base/shell/lf.nix b/home/ooks/base/shell/lf.nix new file mode 100644 index 0000000..3b48e1d --- /dev/null +++ b/home/ooks/base/shell/lf.nix @@ -0,0 +1,8 @@ +{ pkgs, config, ... }: + +{ + programs.lf = { + enable = true; + + }; +}