From 7d320b8492592e2dfe941ae2719f60e6a3daa0ba Mon Sep 17 00:00:00 2001 From: Soispha Date: Mon, 29 May 2023 12:53:05 +0200 Subject: Feat(hm/conf/lf/cmds): Add a way to create temp scripts --- home-manager/config/lf/commands/default.nix | 12 +++++++-- home-manager/config/lf/commands/scripts/mk_scr | 31 ---------------------- .../config/lf/commands/scripts/mk_scr_default | 31 ++++++++++++++++++++++ .../config/lf/commands/scripts/mk_scr_temp | 31 ++++++++++++++++++++++ 4 files changed, 72 insertions(+), 33 deletions(-) delete mode 100755 home-manager/config/lf/commands/scripts/mk_scr create mode 100755 home-manager/config/lf/commands/scripts/mk_scr_default create mode 100755 home-manager/config/lf/commands/scripts/mk_scr_temp (limited to 'home-manager/config/lf/commands') 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 deleted file mode 100755 index 2f265aad..00000000 --- a/home-manager/config/lf/commands/scripts/mk_scr +++ /dev/null @@ -1,31 +0,0 @@ -#! /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" - -cat "%SHELL_LIBRARY_TEMPLATE" > "$script" -chmod +x "$script" -"$VISUAL" "$script" - - -# vim: ft=sh diff --git a/home-manager/config/lf/commands/scripts/mk_scr_default b/home-manager/config/lf/commands/scripts/mk_scr_default new file mode 100755 index 00000000..2f265aad --- /dev/null +++ b/home-manager/config/lf/commands/scripts/mk_scr_default @@ -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" + +cat "%SHELL_LIBRARY_TEMPLATE" > "$script" +chmod +x "$script" +"$VISUAL" "$script" + + +# vim: ft=sh 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 -- cgit 1.4.1