6aeb5370cc
git-svn-id: svn+ssh://atelier.inf.usi.ch/home/bevilj/group-1@210 a672b425-5310-4d7a-af5c-997e18724b81
50 lines
1.1 KiB
Kotlin
50 lines
1.1 KiB
Kotlin
/*
|
|
* Copyright (c) 2018 Bevilacqua Joey.
|
|
*/
|
|
package ch.usi.inf.atelier.group1
|
|
|
|
import ch.usi.inf.atelier.group1.util.Log
|
|
import java.io.File
|
|
|
|
object Main {
|
|
private lateinit var parser: HtmlParser
|
|
|
|
@JvmStatic
|
|
fun main(args: Array<String>) {
|
|
|
|
if (args.isEmpty()) {
|
|
Log.e("At least one argument is needed")
|
|
return
|
|
}
|
|
|
|
parser = HtmlParser(arrayOf("-s", "--singlepage").contains(args[0]))
|
|
|
|
args.forEach(this::convert)
|
|
|
|
parser.save()
|
|
}
|
|
|
|
/**
|
|
* Convert html files to LaTex files
|
|
*
|
|
* @param path of the file (or directory containing files) to be converted
|
|
*/
|
|
private fun convert(path: String) {
|
|
// Ignore the flags
|
|
if (path.startsWith("-")) {
|
|
return
|
|
}
|
|
|
|
val file = File(path)
|
|
|
|
if (!file.isDirectory) {
|
|
parser.parse(file)
|
|
return
|
|
}
|
|
|
|
// Recursively search for other html files inside a directory
|
|
file.listFiles().filter { it.name.endsWith(".html") || it.isDirectory }
|
|
.map { it.path }
|
|
.forEach(this::convert)
|
|
}
|
|
} |