Merge branch 'master' into feature/preview-scripts-rewrite-to-python

This commit is contained in:
Benedict Xavier
2025-12-02 17:16:50 +03:00
committed by GitHub
5 changed files with 19 additions and 13 deletions

6
.envrc
View File

@@ -1,6 +1,6 @@
VIU_APP_NAME="viu-dev" VIU_APP_NAME="viu-dev"
PATH="./.venv/bin/:$PATH" PATH="$PWD/.venv/bin:$PATH"
export PATH VIU_APP_NAME export PATH VIU_APP_NAME
if command -v nix >/dev/null;then if command -v nix >/dev/null; then
use flake use flake
fi fi

View File

@@ -32,6 +32,11 @@
</details> </details>
> [!IMPORTANT]
> This project scrapes public-facing websites for its streaming / downloading capabilities and primarily acts as an anilist, jikan and many other media apis tui client. The developer(s) of this application have no affiliation with these content providers. This application hosts zero content and is intended for educational and personal use only. Use at your own risk.
>
> [**Read the Full Disclaimer**](DISCLAIMER.md)
## Core Features ## Core Features
* 📺 **Interactive TUI:** Browse, search, and manage your AniList library in a rich terminal interface powered by `fzf`, `rofi`, or a built-in selector. * 📺 **Interactive TUI:** Browse, search, and manage your AniList library in a rich terminal interface powered by `fzf`, `rofi`, or a built-in selector.
@@ -327,10 +332,3 @@ You can run the background worker as a systemd service for persistence.
## Contributing ## Contributing
Contributions are welcome! Whether it's reporting a bug, proposing a feature, or writing code, your help is appreciated. Please read our [**Contributing Guidelines**](CONTRIBUTIONS.md) to get started. Contributions are welcome! Whether it's reporting a bug, proposing a feature, or writing code, your help is appreciated. Please read our [**Contributing Guidelines**](CONTRIBUTIONS.md) to get started.
## Disclaimer
> [!IMPORTANT]
> This project scrapes public-facing websites. The developer(s) of this application have no affiliation with these content providers. This application hosts zero content and is intended for educational and personal use only. Use at your own risk.
>
> [**Read the Full Disclaimer**](DISCLAIMER.md)

View File

@@ -4,7 +4,8 @@
"Magia Record: Mahou Shoujo Madoka☆Magica Gaiden (TV)": "Mahou Shoujo Madoka☆Magica", "Magia Record: Mahou Shoujo Madoka☆Magica Gaiden (TV)": "Mahou Shoujo Madoka☆Magica",
"Dungeon ni Deai o Motomeru no wa Machigatte Iru Darouka": "Dungeon ni Deai wo Motomeru no wa Machigatteiru Darou ka", "Dungeon ni Deai o Motomeru no wa Machigatte Iru Darouka": "Dungeon ni Deai wo Motomeru no wa Machigatteiru Darou ka",
"Hazurewaku no \"Joutai Ijou Skill\" de Saikyou ni Natta Ore ga Subete wo Juurin suru made": "Hazure Waku no [Joutai Ijou Skill] de Saikyou ni Natta Ore ga Subete wo Juurin Suru made", "Hazurewaku no \"Joutai Ijou Skill\" de Saikyou ni Natta Ore ga Subete wo Juurin suru made": "Hazure Waku no [Joutai Ijou Skill] de Saikyou ni Natta Ore ga Subete wo Juurin Suru made",
"Re:Zero kara Hajimeru Isekai Seikatsu Season 3": "Re:Zero kara Hajimeru Isekai Seikatsu 3rd Season" "Re:Zero kara Hajimeru Isekai Seikatsu Season 3": "Re:Zero kara Hajimeru Isekai Seikatsu 3rd Season",
"Hanka×Hanka (2011)": "Hunter × Hunter (2011)"
}, },
"hianime": { "hianime": {
"My Star": "Oshi no Ko" "My Star": "Oshi no Ko"

View File

@@ -2,6 +2,7 @@ from typing import TYPE_CHECKING
import click import click
from ...core.config import AppConfig from ...core.config import AppConfig
from ...core.exceptions import ViuError from ...core.exceptions import ViuError
from ..utils.completion import anime_titles_shell_complete from ..utils.completion import anime_titles_shell_complete
@@ -49,6 +50,7 @@ def search(config: AppConfig, **options: "Unpack[Options]"):
SearchParams, SearchParams,
) )
from ...libs.provider.anime.provider import create_provider from ...libs.provider.anime.provider import create_provider
from viu_media.core.utils.normalizer import normalize_title
from ...libs.selectors.selector import create_selector from ...libs.selectors.selector import create_selector
if not options["anime_title"]: if not options["anime_title"]:
@@ -67,7 +69,10 @@ def search(config: AppConfig, **options: "Unpack[Options]"):
with feedback.progress(f"Fetching anime search results for {anime_title}"): with feedback.progress(f"Fetching anime search results for {anime_title}"):
search_results = provider.search( search_results = provider.search(
SearchParams( SearchParams(
query=anime_title, translation_type=config.stream.translation_type query=normalize_title(
anime_title, config.general.provider.value, True
).lower(),
translation_type=config.stream.translation_type,
) )
) )
if not search_results: if not search_results:

View File

@@ -28,7 +28,9 @@ def provider_search(ctx: Context, state: State) -> State | InternalDirective:
provider_search_results = provider.search( provider_search_results = provider.search(
SearchParams( SearchParams(
query=normalize_title(media_title, config.general.provider.value, True), query=normalize_title(
media_title, config.general.provider.value, True
).lower(),
translation_type=config.stream.translation_type, translation_type=config.stream.translation_type,
) )
) )