X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=util%2Fnew_project.sh;h=a85e833222048ccba814958ad1a9e837f3918c84;hb=4665e4ffffcdfc6fe6f498928963adc64f6fefd7;hp=b3535f449ef43dc769f1d500888c93e5165ab278;hpb=639cdd363e35c13fe331939d0972aa4db5f5198d;p=qmk_firmware.git diff --git a/util/new_project.sh b/util/new_project.sh index b3535f449..a85e83322 100755 --- a/util/new_project.sh +++ b/util/new_project.sh @@ -2,28 +2,42 @@ # Script to make a new quantum project # Jack Humbert 2015 -if [ -z "$1" ]; then - echo "Usage: $0 " +KEYBOARD=$1 +KEYBOARD_TYPE=$2 + +if [ -z "$KEYBOARD" ]; then + echo "Usage: $0 " + echo "Example: $0 gh60 avr" + echo "Example: $0 bfake ps2avrgb" + exit 1 +elif [ -z "$KEYBOARD_TYPE" ]; then + KEYBOARD_TYPE=avr +fi + +if [ $KEYBOARD_TYPE != "avr" -a $KEYBOARD_TYPE != "ps2avrgb" ]; then + echo "Invalid keyboard type target" + exit 1 +fi + +if [ -e "keyboards/$1" ]; then + echo "Error! keyboards/$1 already exists!" exit 1 fi cd "$(dirname "$0")/.." -KEYBOARD=$1 KEYBOARD_UPPERCASE=$(echo $1 | awk '{print toupper($0)}') +KEYBOARD_NAME=$(basename $1) +KEYBOARD_NAME_UPPERCASE=$(echo $KEYBOARD_NAME | awk '{print toupper($0)}') + + +cp -r quantum/template/base keyboards/$KEYBOARD +cp -r quantum/template/$KEYBOARD_TYPE/. keyboards/$KEYBOARD -mkdir keyboards/$1 -mkdir keyboards/$1/keymaps -mkdir keyboards/$1/keymaps/default -sed -e "s;%KEYBOARD%;$KEYBOARD;g" -e "s;%KEYBOARD_UPPERCASE%;$KEYBOARD_UPPERCASE;g" quantum/template/template.h > keyboards/$KEYBOARD/$KEYBOARD.h -sed -e "s;%KEYBOARD%;$KEYBOARD;g" quantum/template/template.c > keyboards/$KEYBOARD/$KEYBOARD.c -sed -e "s;%KEYBOARD%;$KEYBOARD;g" quantum/template/config.h > keyboards/$KEYBOARD/config.h -sed -e "s;%KEYBOARD%;$KEYBOARD;g" quantum/template/readme.md > keyboards/$KEYBOARD/readme.md -sed -e "s;%KEYBOARD%;$KEYBOARD;g" quantum/template/Makefile > keyboards/$KEYBOARD/Makefile -sed -e "s;%KEYBOARD%;$KEYBOARD;g" quantum/template/keymaps/default/config.h > keyboards/$KEYBOARD/keymaps/default/config.h -sed -e "s;%KEYBOARD%;$KEYBOARD;g" quantum/template/keymaps/default/keymap.c > keyboards/$KEYBOARD/keymaps/default/keymap.c -sed -e "s;%KEYBOARD%;$KEYBOARD;g" quantum/template/keymaps/default/Makefile > keyboards/$KEYBOARD/keymaps/default/Makefile -sed -e "s;%KEYBOARD%;$KEYBOARD;g" quantum/template/keymaps/default/readme.md > keyboards/$KEYBOARD/keymaps/default/readme.md +mv keyboards/${KEYBOARD}/template.c keyboards/${KEYBOARD}/${KEYBOARD_NAME}.c +mv keyboards/${KEYBOARD}/template.h keyboards/${KEYBOARD}/${KEYBOARD_NAME}.h +find keyboards/${KEYBOARD} -type f -exec sed -i '' -e "s;%KEYBOARD%;${KEYBOARD_NAME};g" {} \; +find keyboards/${KEYBOARD} -type f -exec sed -i '' -e "s;%KEYBOARD_UPPERCASE%;${KEYBOARD_NAME_UPPERCASE};g" {} \; echo "######################################################" echo "# /keyboards/$KEYBOARD project created. To start"