-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathrun_tui.py
More file actions
executable file
·48 lines (35 loc) · 1.13 KB
/
run_tui.py
File metadata and controls
executable file
·48 lines (35 loc) · 1.13 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/usr/bin/env python3
"""
CloudMusic TUI 启动脚本
运行方式:
python run_tui.py
python run_tui.py --fancy
python run_tui.py --ascii
./run_tui.py --ascii
"""
from __future__ import annotations
import argparse
from typing import Sequence
from cloudmusic import __version__
def parse_args(argv: Sequence[str] | None = None) -> argparse.Namespace:
parser = argparse.ArgumentParser(description="CloudMusic Textual TUI launcher")
group = parser.add_mutually_exclusive_group()
group.add_argument("--ascii", action="store_true", help="run the pure ASCII TUI")
group.add_argument("--fancy", action="store_true", help="run the themed TUI")
parser.add_argument(
"--version",
action="version",
version=f"cloudmusic {__version__}",
)
return parser.parse_args(argv)
def run(argv: Sequence[str] | None = None) -> None:
args = parse_args(argv)
from cloudmusic.tui.app import main
forwarded: list[str] = []
if args.ascii:
forwarded.append("--ascii")
elif args.fancy:
forwarded.append("--fancy")
main(forwarded)
if __name__ == "__main__":
run()