aboutsummaryrefslogtreecommitdiffstats
path: root/home-manager/config
diff options
context:
space:
mode:
authorSoispha <soispha@vhack.eu>2023-05-29 12:53:05 +0200
committerSoispha <soispha@vhack.eu>2023-05-29 12:53:05 +0200
commit7d320b8492592e2dfe941ae2719f60e6a3daa0ba (patch)
tree7c1486d446496370a5fef1690512fd35bed50a66 /home-manager/config
parentFix(hm/conf/zsh): Also add a version for the shell library (diff)
downloadnixos-config-7d320b8492592e2dfe941ae2719f60e6a3daa0ba.zip
Feat(hm/conf/lf/cmds): Add a way to create temp scripts
Diffstat (limited to 'home-manager/config')
-rw-r--r--home-manager/config/lf/commands/default.nix12
-rwxr-xr-xhome-manager/config/lf/commands/scripts/mk_scr_default (renamed from home-manager/config/lf/commands/scripts/mk_scr)0
-rwxr-xr-xhome-manager/config/lf/commands/scripts/mk_scr_temp31
-rw-r--r--home-manager/config/lf/keybindings/default.nix3
4 files changed, 43 insertions, 3 deletions
diff --git a/home-manager/config/lf/commands/default.nix b/home-manager/config/lf/commands/default.nix
index 27bf01db..a7cb2039 100644
--- a/home-manager/config/lf/commands/default.nix
+++ b/home-manager/config/lf/commands/default.nix
@@ -147,13 +147,21 @@ in {
file = ./scripts/mk_ln;
dependencies = [];
};
- mk_scr = shell {
- file = ./scripts/mk_scr;
+ mk_scr_default = shell {
+ file = ./scripts/mk_scr_default;
dependencies = builtins.attrValues {inherit (pkgs) neovim;};
replacementStrings = {
SHELL_LIBRARY_TEMPLATE = "${shell_library.rawTemplate."${system}"}";
};
};
+ mk_scr_temp = shell {
+ file = ./scripts/mk_scr_temp;
+ dependencies = builtins.attrValues {inherit (pkgs) neovim;};
+ replacementStrings = {
+ SHELL_LIBRARY_TEMPLATE = "${shell_library.rawTemplate."${system}"}";
+ TO_BE_SHELL_LIBRARY_PATH = "%SHELL_LIBRARY_PATH"; # replacement is not recursive
+ };
+ };
open = shell {
file = ./scripts/open;
dependencies = builtins.attrValues {inherit (pkgs) file xdg-utils neovim git;};
diff --git a/home-manager/config/lf/commands/scripts/mk_scr b/home-manager/config/lf/commands/scripts/mk_scr_default
index 2f265aad..2f265aad 100755
--- a/home-manager/config/lf/commands/scripts/mk_scr
+++ b/home-manager/config/lf/commands/scripts/mk_scr_default
diff --git a/home-manager/config/lf/commands/scripts/mk_scr_temp b/home-manager/config/lf/commands/scripts/mk_scr_temp
new file mode 100755
index 00000000..e8a92c5e
--- /dev/null
+++ b/home-manager/config/lf/commands/scripts/mk_scr_temp
@@ -0,0 +1,31 @@
+#! /usr/bin/env dash
+
+# shellcheck source=/dev/null
+SHELL_LIBRARY_VERSION="1.1.3" . %SHELL_LIBRARY_PATH
+
+
+prompt "Script name: "
+name=""
+while [ -z "$name" ] || [ -e "$name" ]
+do
+ read -r name
+ if [ -e "$name" ]; then
+ prompt "Script already exists, overwrite [y|N]: "
+ read -r ans
+
+ if [ "$ans" = "y" ]; then
+ break
+ else
+ prompt "Script Name: "
+ fi
+ fi
+done
+
+script="$(pwd)"/"$name"
+
+sed 's|%TO_BE_SHELL_LIBRARY_PATH|%SHELL_LIBRARY_PATH|' "%SHELL_LIBRARY_TEMPLATE" > "$script"
+chmod +x "$script"
+"$VISUAL" "$script"
+
+
+# vim: ft=sh
diff --git a/home-manager/config/lf/keybindings/default.nix b/home-manager/config/lf/keybindings/default.nix
index c3ac0ee2..42a337f9 100644
--- a/home-manager/config/lf/keybindings/default.nix
+++ b/home-manager/config/lf/keybindings/default.nix
@@ -55,7 +55,8 @@
mk = "mk_ln";
mf = "mk_file";
md = "mk_dir";
- ms = "mk_scr";
+ ms = "mk_scr_default";
+ mt = "mk_scr_temp";
ch = "chmod";
bg = "set_wall_paper";