summaryrefslogtreecommitdiff
path: root/japh
blob: 106dbbba2479eb277d465c19158f0b0ad7b0fbe8 (plain)
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#!/bin/bash

# Jackson's Awesome Project Helper
# Jackson Taylor - 12/2/2020
# See README for more information

JAPH_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
CMD_FILE="$JAPH_DIR/cmds"

function japh() {
    case $1 in
        "add")
            dir=$(pwd)
            printf "function cd_$2() { cd \"$dir\"; }\n" >> $JAPH_DIR/cmds
            echo "project added!"
            ;;
        "-a")
            # Show the currently added commands
            cat $CMD_FILE
            ;;
        "help" | "-h")
            japh_usage
            ;;
        *)
            if [ ! -z $1 ];
            then
                source $JAPH_DIR/cmds
                type cd_$1 &> /dev/null
                status=$?

                if [ $status -eq 0 ];
                then
                    cd_$1
                else
                    echo "Command was not found!"
                    japh_usage
                fi
            else
                japh_usage
            fi
            ;;
    esac
}

function japh_usage() {
    printf "JAPH - Jackson's Awesome Project Helper\n" 
    printf "japh add \$projectName - Add current directory to japh's list as \$projectName\n" 
    printf "japh \$projectName - cd to project directory\n"
}