2 # Script to make a new quantum project
8 if [ -z "$KEYBOARD" ]; then
9 echo "Usage: $0 <keyboard_name> <keyboard_type>"
10 echo "Example: $0 gh60 avr"
11 echo "Example: $0 bfake ps2avrgb"
13 elif [ -z "$KEYBOARD_TYPE" ]; then
17 if [ $KEYBOARD_TYPE != "avr" -a $KEYBOARD_TYPE != "ps2avrgb" ]; then
18 echo "Invalid keyboard type target"
22 if [ -e "keyboards/$1" ]; then
23 echo "Error! keyboards/$1 already exists!"
27 cd "$(dirname "$0")/.."
29 KEYBOARD_UPPERCASE=$(echo $1 | awk '{print toupper($0)}')
30 KEYBOARD_NAME=$(basename $1)
31 KEYBOARD_NAME_UPPERCASE=$(echo $KEYBOARD_NAME | awk '{print toupper($0)}')
34 cp -r quantum/template/base keyboards/$KEYBOARD
35 cp -r quantum/template/$KEYBOARD_TYPE/. keyboards/$KEYBOARD
37 mv keyboards/${KEYBOARD}/template.c keyboards/${KEYBOARD}/${KEYBOARD_NAME}.c
38 mv keyboards/${KEYBOARD}/template.h keyboards/${KEYBOARD}/${KEYBOARD_NAME}.h
39 find keyboards/${KEYBOARD} -type f -exec sed -i '' -e "s;%KEYBOARD%;${KEYBOARD_NAME};g" {} \;
40 find keyboards/${KEYBOARD} -type f -exec sed -i '' -e "s;%KEYBOARD_UPPERCASE%;${KEYBOARD_NAME_UPPERCASE};g" {} \;
42 echo "######################################################"
43 echo "# /keyboards/$KEYBOARD project created. To start"
44 echo "# working on things, cd into keyboards/$KEYBOARD"
45 echo "######################################################"