diff --git a/modules/hm/lf.nix b/modules/hm/lf.nix index 15152f7..9634314 100644 --- a/modules/hm/lf.nix +++ b/modules/hm/lf.nix @@ -1,21 +1,24 @@ { pkgs, ... }: let - lf_kitty_cleaner = pkgs.writeShellScript "lf_kitty_cleaner" '' - kitty +icat --clear --silent --transfer-mode file + cleaner = pkgs.writeShellScript "cleaner" '' + file=$1 + + case $TERM in + xterm-kitty ) kitty +icat --clear --silent --transfer-mode $file; ;; + * ) exit 0 ;; + esac ''; - lf_kitty_preview = pkgs.writeShellScript "lf_kitty_preview" '' + previewer = pkgs.writeShellScript "previewer" '' file=$1 w=$2 h=$3 x=$4 y=$5 - if [[ "$( file -Lb --mime-type "$file")" =~ ^image ]]; then - kitty +icat --silent --transfer-mode file --place "''${w}x''${h}@''${x}x''${y}" "$file" - exit 1 - fi - - ${pkgs.pistol}/bin/pistol "$file" + case $TERM in + xterm-kitty ) kitty +icat --silent --transfer-mode file --place "''${w}x''${h}@''${x}x''${y}" "$file"; ;; + * ) ${pkgs.pistol}/bin/pistol "$file"; ;; + esac ''; in { @@ -31,7 +34,7 @@ in tabstop = 2; }; previewer = { - source = lf_kitty_preview; + source = previewer; # keybinding = "i"; }; keybindings = { "" = "$EDITOR $(fzf)"; }; @@ -76,7 +79,7 @@ in }}''; }; extraConfig = '' - set cleaner ${lf_kitty_cleaner} + set cleaner ${cleaner} ''; };