aboutsummaryrefslogtreecommitdiff
path: root/scripts/bin/ecmd
blob: c6f651508969f1014ab4675b246db649e6a55a9a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!/usr/bin/env zsh

source ~/nixos/config/zsh/paths.zsh;

cd $COMMANDS_DIR;

selected=`fzf +i --print-query -e`;
[[ -z "$selected" ]] && exit 0;

query=`echo -e "$selected" | head -n 1`;
selected=`echo -e "$selected" | tail -n 1`;

if [[ "$1" == "rm" ]]; then
  [[ ! -f $selected ]] && echo "Cant remove $selected. File not found" && exit 1;
  # TODO: Add confirmation here maybe
  rm $selected;
  echo "Removed $selected";
  exit 0;
fi;

if (echo "$query" | grep -e '^:') && [[ ! -f "$query" ]]; then
  escript "$COMMANDS_DIR/$query";
  echo "Added new command $query";
else
  escript "$COMMANDS_DIR/$selected" || echo "$selected command not found";
  echo "Edited command $query";
fi;