42 lines
1.1 KiB
Python
Executable File
42 lines
1.1 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
"""mtg.py
|
|
----------------
|
|
This module defines a command-line interface (CLI) application which allows
|
|
users to interact with a predefined list of completion options, specifically,
|
|
card names from the "Alara Reborn" set.
|
|
|
|
It leverages the `cmd` module to build the CLI and has tab-completion
|
|
functionality for adding items from the predefined list of card names.
|
|
"""
|
|
import cmd
|
|
|
|
completions = [
|
|
"Mage Slayer (Alara Reborn)",
|
|
"Magefire Wings (Alara Reborn)",
|
|
"Sages of the Anima (Alara Reborn)",
|
|
"Sanctum Plowbeast (Alara Reborn)",
|
|
"Sangrite Backlash (Alara Reborn)",
|
|
"Sanity Gnawers (Alara Reborn)",
|
|
"Sen Triplets (Alara Reborn)",
|
|
]
|
|
|
|
|
|
class mycmd(cmd.Cmd):
|
|
def __init__(self):
|
|
cmd.Cmd.__init__(self)
|
|
|
|
def do_quit(self, s):
|
|
return True
|
|
|
|
def do_add(self, s):
|
|
pass
|
|
|
|
def complete_add(self, text, line, begidx, endidx):
|
|
mline = line.partition(" ")[2]
|
|
offs = len(mline) - len(text)
|
|
return [s[offs:] for s in completions if s.startswith(mline)]
|
|
|
|
|
|
if __name__ == "__main__":
|
|
mycmd().cmdloop()
|