diff options
Diffstat (limited to 'init')
-rwxr-xr-x | init | 50 |
1 files changed, 21 insertions, 29 deletions
@@ -1,46 +1,38 @@ #!/usr/bin/env sh -usage="usage: init <year> <day>" +usage="usage: init <year> <day> <language>" year=${1?$usage} day=${2?$usage} +lang=${3?$usage} # get directory of this script -script=$(readlink -f "$0") -script_path=$(dirname "$script") +script=$(readlink -f $0) +script_path=$(dirname $script) aoc_path=$script_path/$year/$day mkdir --parents $aoc_path +touch $aoc_path/puzzle.txt -# Data directory +# data directory if [ ! -d $aoc_path/data ]; then mkdir --parents $aoc_path/data for f in "test" "aoc"; do - touch "$aoc_path/puzzle.txt" - touch "$aoc_path/data/$f.txt" - echo "silver: ???\ngold: ???" >"$aoc_path/data/$f.ans" + touch $aoc_path/data/$f.txt + echo "silver: ???\ngold: ???" >$aoc_path/data/$f.ans done fi -# Python -if [ ! -d $aoc_path/python ]; then - uv init \ - --vcs none \ - --name "aoc_$year-$day" \ - --no-pin-python \ - --no-readme \ - --description "advent of code $year-$day" \ - "$aoc_path/python" - cp "$script_path/template/main.py" "$aoc_path/python/main.py" - echo "*" >"$aoc_path/python/.gitignore" -fi - -# Rust -if [ ! -d $aoc_path/rust ]; then - cargo new \ - --vcs none \ - --name "aoc_$year-$day" \ - "$aoc_path/rust" - cp "$script_path/template/main.rs" "$aoc_path/rust/src/main.rs" - echo "*" >"$aoc_path/rust/.gitignore" -fi +case $lang in +python) + cp $script_path/template/python.py $aoc_path + ;; +rust) + cargo new --vcs none --name aoc_$year-$day $aoc_path/rust + cp $script_path/template/main.rs $aoc_path/rust/src/main.rs + ;; +*) + echo unknown lang: $lang + exit 1 + ;; +esac |