1
0
Fork 0
mirror of https://github.com/ethauvin/kobalt.git synced 2025-04-25 16:07:12 -07:00

Ascii art.

This commit is contained in:
Cedric Beust 2015-10-15 20:59:58 -07:00
parent 6143ada860
commit fa1e2d76ba
4 changed files with 56 additions and 53 deletions

View file

@ -0,0 +1,53 @@
package com.beust.kobalt
import com.beust.kobalt.misc.log
import java.util.*
class AsciiArt {
companion object {
private val BANNERS = arrayOf(
" __ __ __ __ __ \n" +
" / //_/ ____ / /_ ____ _ / / / /_\n" +
" / ,< / __ \\ / __ \\ / __ `/ / / / __/\n" +
" / /| | / /_/ / / /_/ // /_/ / / / / /_ \n" +
" /_/ |_| \\____/ /_.___/ \\__,_/ /_/ \\__/ ",
" _ __ _ _ _ \n" +
" | |/ / ___ | |__ __ _ | | | |_ \n" +
" | ' / / _ \\ | '_ \\ / _` | | | | __|\n" +
" | . \\ | (_) | | |_) | | (_| | | | | |_ \n" +
" |_|\\_\\ \\___/ |_.__/ \\__,_| |_| \\__| "
)
val banner : String get() = BANNERS.get(Random().nextInt(BANNERS.size()))
fun box(s: String) : List<String> {
val ul = "\u2554"
val ur = "\u2557"
val h = "\u2550"
val v = "\u2551"
val bl = "\u255a"
val br = "\u255d"
fun r(n: Int, w: String) : String {
with(StringBuffer()) {
repeat(n, { append(w) })
return toString()
}
}
return arrayListOf(
ul + r(s.length() + 2, h) + ur,
"$v $s $v",
bl + r(s.length() + 2, h) + br)
}
fun logBox(s: String) {
box(s).forEach {
log(1, " $it")
}
}
}
}

View file

@ -1,25 +0,0 @@
package com.beust.kobalt
import java.util.*
class Banner {
companion object {
val BANNERS = arrayOf(
" __ __ __ __ __ \n" +
" / //_/ ____ / /_ ____ _ / / / /_\n" +
" / ,< / __ \\ / __ \\ / __ `/ / / / __/\n" +
" / /| | / /_/ / / /_/ // /_/ / / / / /_ \n" +
" /_/ |_| \\____/ /_.___/ \\__,_/ /_/ \\__/ ",
" _ __ _ _ _ \n" +
" | |/ / ___ | |__ __ _ | | | |_ \n" +
" | ' / / _ \\ | '_ \\ / _` | | | | __|\n" +
" | . \\ | (_) | | |_) | | (_| | | | | |_ \n" +
" |_|\\_\\ \\___/ |_.__/ \\__,_| |_| \\__| "
)
fun get() = BANNERS.get(Random().nextInt(BANNERS.size()))
}
}

View file

@ -55,7 +55,7 @@ private class Main @Inject constructor(
var result = 0
val latestVersionFuture = github.latestKobaltVersion
benchmark("Build", {
println(Banner.get() + Kobalt.version + "\n")
println(AsciiArt.banner + Kobalt.version + "\n")
// runTest()
result = runWithArgs(jc, args)
executors.shutdown()

View file

@ -1,6 +1,7 @@
package com.beust.kobalt.internal
import com.beust.kobalt.Args
import com.beust.kobalt.AsciiArt
import com.beust.kobalt.Plugins
import com.beust.kobalt.api.PluginTask
import com.beust.kobalt.api.Project
@ -43,32 +44,6 @@ public class TaskManager @Inject constructor(val plugins: Plugins, val args: Arg
fun matches(projectName: String) = project == null || project == projectName
}
fun box(s: String) : List<String> {
val ul = "\u2554"
val ur = "\u2557"
val h = "\u2550"
val v = "\u2551"
val bl = "\u255a"
val br = "\u255d"
fun r(n: Int, w: String) : String {
with(StringBuffer()) {
repeat(n, { append(w) })
return toString()
}
}
return arrayListOf(
ul + r(s.length() + 2, h) + ur,
"$v $s $v",
bl + r(s.length() + 2, h) + br)
}
fun logBox(s: String) {
box(s).forEach {
log(1, " $it")
}
}
public fun runTargets(targets: List<String>, projects: List<Project>) : Int {
var result = 0
projects.forEach { project ->
@ -80,7 +55,7 @@ public class TaskManager @Inject constructor(val plugins: Plugins, val args: Arg
tasksByNames.put(it.name, it)
}
logBox("Building project ${project.name}")
AsciiArt.logBox("Building project ${project.name}")
val graph = DynamicGraph<PluginTask>()
targets.forEach { target ->