diff --git a/2019/kt/.gitignore b/2019/kt/.gitignore new file mode 100644 index 0000000..b2516d8 --- /dev/null +++ b/2019/kt/.gitignore @@ -0,0 +1,2 @@ +.gradle/ +build diff --git a/2019/kt/build.gradle.kts b/2019/kt/build.gradle.kts new file mode 100644 index 0000000..372583d --- /dev/null +++ b/2019/kt/build.gradle.kts @@ -0,0 +1,20 @@ +val arrowVersion = "0.10.3" + +plugins { + id("org.jetbrains.kotlin.jvm") version "1.3.60" + application +} + +repositories { + jcenter() + maven("https://dl.bintray.com/arrow-kt/arrow-kt/") +} + +dependencies { + implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8") + implementation("io.arrow-kt:arrow-core:$arrowVersion") +} + +application { + mainClassName = "moe.kageru.aoc.DayXXKt" +} diff --git a/2019/kt/settings.gradle.kts b/2019/kt/settings.gradle.kts new file mode 100644 index 0000000..c9fb7c4 --- /dev/null +++ b/2019/kt/settings.gradle.kts @@ -0,0 +1 @@ +rootProject.name = "advent-of-code" diff --git a/2019/kt/src/main/kotlin/moe/kageru/aoc/DayXX.kt b/2019/kt/src/main/kotlin/moe/kageru/aoc/DayXX.kt new file mode 100644 index 0000000..db03eae --- /dev/null +++ b/2019/kt/src/main/kotlin/moe/kageru/aoc/DayXX.kt @@ -0,0 +1,5 @@ +package moe.kageru.aoc + +fun main() { + println("Hello, Advent of Code") +} diff --git a/2019/setup_day.sh b/2019/setup_day.sh index f824ae1..3d025fa 100755 --- a/2019/setup_day.sh +++ b/2019/setup_day.sh @@ -1,8 +1,26 @@ #!/bin/sh today=$(date +%d) -mkdir "$today" -cd "$today" +echo 'Select language for today. (r)ust, (k)otlin:' +read lang + +if [[ "$lang" == "r" ]]; then + mkdir "$today" + cd "$today" + cargo init --name "day$today" + echo 'Initialized cargo project' +elif [[ "$lang" == "k" ]]; then + cp -r kt "$today" + cd "$today" + sed -i "s/DayXX/Day$today/" build.gradle.kts + mv "src/main/kotlin/moe/kageru/aoc/DayXX.kt" "src/main/kotlin/moe/kageru/aoc/Day$today.kt" + echo 'Initialized gradle project from skeleton' +else + echo "Unknown language $lang" + exit 1 +fi + # this assumes that your puzzle input is already in your clipboard xsel -b > input - +# add trailing newline if necessary +sed -i -e '$a\' input