aboutsummaryrefslogtreecommitdiffstats
path: root/hm/soispha/conf/lf/commands
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--hm/soispha/conf/lf/commands/default.nix6
-rwxr-xr-xhm/soispha/conf/lf/commands/scripts/view_file.sh26
2 files changed, 29 insertions, 3 deletions
diff --git a/hm/soispha/conf/lf/commands/default.nix b/hm/soispha/conf/lf/commands/default.nix
index 47bf0a12..6994f100 100644
--- a/hm/soispha/conf/lf/commands/default.nix
+++ b/hm/soispha/conf/lf/commands/default.nix
@@ -168,9 +168,9 @@ in {
TO_BE_SHELL_LIBRARY_PATH = "%SHELL_LIBRARY_PATH"; # replacement is not recursive
};
};
- open = shell {
- name = "open";
- dependencies = builtins.attrValues {inherit (pkgs) file xdg-utils;};
+ view_file = async {
+ name = "view_file";
+ dependencies = builtins.attrValues {inherit (pkgs) file;};
};
go_project_base_directory = async {
name = "go_project_root";
diff --git a/hm/soispha/conf/lf/commands/scripts/view_file.sh b/hm/soispha/conf/lf/commands/scripts/view_file.sh
new file mode 100755
index 00000000..a7d7055d
--- /dev/null
+++ b/hm/soispha/conf/lf/commands/scripts/view_file.sh
@@ -0,0 +1,26 @@
+#!/usr/bin/env dash
+
+# shellcheck source=/dev/null
+SHELL_LIBRARY_VERSION="2.0.13" . %SHELL_LIBRARY_PATH
+
+# shellcheck disable=SC2269
+f="$f"
+# shellcheck disable=SC2269
+fx="$fx"
+# shellcheck disable=SC2269
+fs="$fs"
+
+mime_type="$(file --mime-type --brief --dereference "$f")"
+case "$mime_type" in
+application/pdf)
+ "$READER" "$f"
+ ;;
+image/*)
+ "$IVIEWER" "$f"
+ ;;
+*)
+ die "Mime-Type: '$mime_type' not supported"
+ ;;
+esac
+
+# vim: ft=sh