Build output text one line at a time.

Build Text

BuildText.kt
fun main() {
    val title = 
    var output = ""
    output += "$title\n"
    output += "items=2\n"
    output += "done=yes"

    val lines = output.split("\n")
    val first = lines[0]
    val length = output.length

    println("first=$first")
    println("lines=${lines.size}")
    println("length=$length")
}
fun main() {
    val title = 
    var output = ""
    output += "$title\n"
    output += "items=2\n"
    output += "done=yes"

    val lines = output.split("\n")
    val first = lines[0]
    val length = output.length

    println("first=$first")
    println("lines=${lines.size}")
    println("length=$length")
}
fun main() {
    val title = 
    var output = ""
    output += "$title\n"
    output += "items=2\n"
    output += "done=yes"

    val lines = output.split("\n")
    val first = lines[0]
    val length = output.length

    println("first=$first")
    println("lines=${lines.size}")
    println("length=$length")
}
build-text Writers and buffers collect pieces of text before the final result is used.