view src/main/kotlin/name/blackcap/passman/HelpSubcommand.kt @ 24:2188b2f13326

Make some minor tweaks to the help system.
author David Barts <n5jrn@me.com>
date Wed, 03 Jul 2024 17:14:22 -0700
parents 07406c4af4a5
children
line wrap: on
line source

package name.blackcap.passman

class HelpSubcommand(): Subcommand() {
    override fun run(args: Array<String>) {
        if (args.isEmpty() || args[0] == "-h" || args[0].startsWith("--h")) {
            listSubcommands()
        } else {
            helpForSubcommand(args[0])
        }
    }

    private fun listSubcommands() {
        println("PassMan: a password manager")
        println("Available subcommands:")
        println("create       Create a new username/password pair.")
        println("delete       Delete existing record.")
        println("help         Print this message.")
        println("export       Export to CSV file.")
        println("import       Import from CSV file.")
        println("list         List records.")
        println("merge        Merge passwords in from another PassMan database.")
        println("password     Change database encryption key.")
        println("quit         Exit from interactive mode.")
        println("read         Retrieve data from existing record.")
        println("rename       Rename existing record.")
        println("update       Update existing record.")
        println()
        println("Database is ${see(DB_FILE)} .")
    }

    private fun helpForSubcommand(subcom: String) {
        runSubcommand(subcom, arrayOf<String>("--help"))
    }
}