mirror of
https://github.com/Benexl/FastAnime.git
synced 2026-02-04 19:11:55 -08:00
feat(cli): complete config command
This commit is contained in:
@@ -1,5 +1,3 @@
|
||||
from sys import exit
|
||||
|
||||
import click
|
||||
|
||||
from .. import __version__
|
||||
@@ -16,11 +14,10 @@ commands = {
|
||||
"download": download,
|
||||
"anilist": anilist,
|
||||
"config": configure,
|
||||
"exit": exit,
|
||||
}
|
||||
|
||||
|
||||
@click.group(commands=commands, invoke_without_command=True)
|
||||
@click.group(commands=commands)
|
||||
@click.version_option(__version__, "--version")
|
||||
@click.option(
|
||||
"-s",
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
from sys import exit
|
||||
|
||||
import click
|
||||
|
||||
from ...interfaces.anilist_interfaces import anilist as anilist_interface
|
||||
@@ -20,7 +18,6 @@ commands = {
|
||||
"trending": trending,
|
||||
"scores": scores,
|
||||
"upcoming": upcoming,
|
||||
"exit": exit,
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,8 +1,23 @@
|
||||
import os
|
||||
import subprocess
|
||||
|
||||
import click
|
||||
from rich import print
|
||||
|
||||
from ... import USER_CONFIG_PATH
|
||||
from ..utils.tools import exit_app
|
||||
|
||||
|
||||
@click.command()
|
||||
@click.command(
|
||||
help="Opens up your fastanime config in your preferred editor",
|
||||
short_help="Edit your config",
|
||||
)
|
||||
def configure():
|
||||
pass
|
||||
if EDITOR := os.environ.get("EDITOR"):
|
||||
subprocess.run([EDITOR, USER_CONFIG_PATH])
|
||||
exit_app()
|
||||
else:
|
||||
print("$EDITOR environment variable missing :confused:")
|
||||
print("Please Set the $EDITOR environment variable to enable editing of config")
|
||||
|
||||
# create_desktop_shortcut()
|
||||
|
||||
@@ -7,7 +7,7 @@ import sys
|
||||
from rich import print
|
||||
from rich.prompt import Prompt
|
||||
|
||||
from ... import APP_CACHE_DIR, USER_CONFIG_PATH, USER_NAME
|
||||
from ... import APP_CACHE_DIR, USER_CONFIG_PATH
|
||||
from ...libs.anilist.anilist import AniList
|
||||
from ...libs.anilist.anilist_data_schema import AnilistBaseMediaDataSchema
|
||||
from ...libs.anime_provider.allanime.api import anime_provider
|
||||
@@ -18,7 +18,7 @@ from ...Utility.data import anime_normalizer
|
||||
from ...Utility.utils import remove_html_tags, sanitize_filename
|
||||
from ..config import Config
|
||||
from ..utils.mpv import mpv
|
||||
from ..utils.tools import QueryDict
|
||||
from ..utils.tools import QueryDict, exit_app
|
||||
from ..utils.utils import clear
|
||||
|
||||
SEARCH_RESULTS_CACHE = os.path.join(APP_CACHE_DIR, "search_results")
|
||||
@@ -101,11 +101,6 @@ def get_preview(search_results: list[AnilistBaseMediaDataSchema], config: Config
|
||||
return preview
|
||||
|
||||
|
||||
def exit_app(*args):
|
||||
print("Have a good day :smile:", USER_NAME)
|
||||
sys.exit(0)
|
||||
|
||||
|
||||
def player_controls(config: Config, anilist_config: QueryDict):
|
||||
# user config
|
||||
translation_type: str = config.translation_type.lower()
|
||||
|
||||
@@ -1,6 +1,3 @@
|
||||
from rich.text import Text
|
||||
|
||||
|
||||
class QueryDict(dict):
|
||||
"""dot.notation access to dictionary attributes"""
|
||||
|
||||
@@ -16,12 +13,25 @@ class QueryDict(dict):
|
||||
self.__setitem__(attr, value)
|
||||
|
||||
|
||||
def get_formatted_str(text: str, style):
|
||||
def exit_app(*args):
|
||||
import sys
|
||||
|
||||
from rich import print
|
||||
|
||||
from ... import USER_NAME
|
||||
|
||||
print("Have a good day :smile:", USER_NAME)
|
||||
sys.exit(0)
|
||||
|
||||
|
||||
def get_formatted_str(string: str, style):
|
||||
from rich.text import Text
|
||||
|
||||
# Create a Text object with desired style
|
||||
text = Text("Hello, World!", style="bold red")
|
||||
text = Text(string, style="bold red")
|
||||
|
||||
# Convert the Text object to an ANSI string
|
||||
ansi_output = text.__rich_console__(None, None)
|
||||
ansi_output = text.__rich_console__(None, None) # pyright:ignore
|
||||
|
||||
# Join the ANSI strings to form the final output
|
||||
"".join(segment.text for segment in ansi_output)
|
||||
|
||||
Reference in New Issue
Block a user