aboutsummaryrefslogtreecommitdiff
path: root/scripts/bin/ecmd
blob: bc04a6db8adb68e80a26ff681e9beb7aeadbdab0 (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 ~/.config/zshconf/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;