Compare commits

...

24 Commits
v2.6 ... v2.6.3

Author SHA1 Message Date
kramo
248cd10367 v2.6.3 2023-11-16 22:00:48 +01:00
Weblate (bot)
387430d5cd Translations update from Hosted Weblate (#210)
* Translated using Weblate (Turkish)

Currently translated at 100.0% (136 of 136 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Sabri Ünal <libreajans@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/tr/
Translation: Cartridges/Cartridges

* Translated using Weblate (Tamil)

Currently translated at 100.0% (136 of 136 strings)

Co-authored-by: K.B.Dharun Krishna <kbdharunkrishna@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/ta/
Translation: Cartridges/Cartridges

* Translated using Weblate (French)

Currently translated at 100.0% (136 of 136 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: John Donne <akheron@zaclys.net>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/fr/
Translation: Cartridges/Cartridges

* Translated using Weblate (Finnish)

Currently translated at 100.0% (136 of 136 strings)

Translated using Weblate (Finnish)

Currently translated at 100.0% (136 of 136 strings)

Translated using Weblate (Finnish)

Currently translated at 100.0% (136 of 136 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Kimmo Kujansuu <mrkujansuu@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/fi/
Translation: Cartridges/Cartridges

---------

Co-authored-by: Sabri Ünal <libreajans@gmail.com>
Co-authored-by: K.B.Dharun Krishna <kbdharunkrishna@gmail.com>
Co-authored-by: John Donne <akheron@zaclys.net>
Co-authored-by: Kimmo Kujansuu <mrkujansuu@gmail.com>
2023-11-16 21:59:58 +01:00
kramo
6017c57e6c Add icons to import rows 2023-11-16 21:56:58 +01:00
kramo
50bc67bb1b Fix Lutris source type 2023-11-15 17:38:35 +01:00
kramo
76fd2f97ef Don't mark devel string as translatable 2023-11-12 12:59:22 +01:00
Sabri Ünal
e5f8e81c2e Appstream related patches (#212)
* appdata: use appstreamcli for appdata validation

appstream-util is obsoleted by appstreamcli.

* appdata: Update appdata

- Add translation tag
- Add categories and keywords tags

* Capitalize keywords to avoid duplicate strings

* Remove catrgories and keywords

They are unnecessary for Flathub

---------

Co-authored-by: kramo <contact@kramo.hu>
2023-11-12 12:42:27 +01:00
kramo
b574439328 Use full width row buttons 2023-11-11 10:48:09 +01:00
kramo
2b52391229 Add project_group to metainfo 2023-11-03 23:30:23 +01:00
kramo
9b24f7c473 v2.6.2 2023-11-03 17:15:06 +01:00
Weblate (bot)
644bf10713 Translations update from Hosted Weblate (#208)
* Translated using Weblate (Belarusian)

Currently translated at 100.0% (136 of 136 strings)

Co-authored-by: Yahor <k1llo2810@protonmail.com>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/be/
Translation: Cartridges/Cartridges

* Translated using Weblate (Ukrainian)

Currently translated at 100.0% (136 of 136 strings)

Co-authored-by: Andrii Murha <flat.assembly@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/uk/
Translation: Cartridges/Cartridges

---------

Co-authored-by: Yahor <k1llo2810@protonmail.com>
Co-authored-by: Andrii Murha <flat.assembly@gmail.com>
2023-11-03 17:14:15 +01:00
kramo
2962988727 Fix old games not showing up in search provider 2023-11-03 17:11:25 +01:00
kramo
6d3d6e6a8f Use local options for command line 2023-10-27 14:54:59 +02:00
kramo
9557caecbc Use Blueprint menu item shorthands 2023-10-22 22:36:14 +02:00
kramo
a48841e5cb v2.6.1 2023-10-21 13:55:57 +02:00
Weblate (bot)
59966e9198 Translations update from Hosted Weblate (#203)
* Translated using Weblate (Russian)

Currently translated at 100.0% (136 of 136 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Сергей <asvmail.as@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/ru/
Translation: Cartridges/Cartridges

* Translated using Weblate (Belarusian)

Currently translated at 100.0% (136 of 136 strings)

Added translation using Weblate (Belarusian)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Yahor <g_egor98@tut.by>
Co-authored-by: Yahor <k1llo2810@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/be/
Translation: Cartridges/Cartridges

* Translated using Weblate (French)

Currently translated at 100.0% (136 of 136 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: rene-coty <irenee.thirion@e.email>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/fr/
Translation: Cartridges/Cartridges

* Translated using Weblate (Swedish)

Currently translated at 100.0% (136 of 136 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/sv/
Translation: Cartridges/Cartridges

* Translated using Weblate (Chinese (Simplified))

Currently translated at 24.2% (33 of 136 strings)

Translated using Weblate (Chinese (Simplified))

Currently translated at 24.2% (33 of 136 strings)

Translated using Weblate (Chinese (Simplified))

Currently translated at 24.2% (33 of 136 strings)

Translated using Weblate (Chinese (Simplified))

Currently translated at 6.6% (9 of 136 strings)

Translated using Weblate (Chinese (Simplified))

Currently translated at 6.6% (9 of 136 strings)

Added translation using Weblate (Chinese (Simplified))

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: 刘韬 <lyuutau@outlook.com>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/zh_Hans/
Translation: Cartridges/Cartridges

* Update translation files

Updated by "Squash Git commits" hook in Weblate.

Translation: Cartridges/Cartridges
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/

---------

Co-authored-by: Сергей <asvmail.as@gmail.com>
Co-authored-by: Yahor <g_egor98@tut.by>
Co-authored-by: Yahor <k1llo2810@gmail.com>
Co-authored-by: rene-coty <irenee.thirion@e.email>
Co-authored-by: bittin1ddc447d824349b2 <bittin@reimu.nl>
Co-authored-by: Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>
Co-authored-by: 刘韬 <lyuutau@outlook.com>
2023-10-21 13:55:01 +02:00
kramo
69394d01ec Add spinner for fetching SGDB covers 2023-10-21 13:46:29 +02:00
kramo
684f457713 Add extra args to po/meson.build 2023-10-21 10:37:40 +02:00
kramo
baa4d6f0c4 Merge pull request #205 from sabriunal/fix-purism 2023-10-20 21:33:00 +02:00
Sabri Ünal
2662d66058 appdata: Remove Purism metadata
This metadata is invalid: custom data is a dictionary and using the same
key multiple times in a dictionary does not work

More information: https://github.com/ximion/appstream/issues/476
2023-10-20 22:27:35 +03:00
kramo
2cd670fcfe Ignore 'the' prefix when sorting - fixes #204 2023-10-20 15:28:41 +02:00
kramo
38bed27c61 oops 2023-10-15 21:57:17 +02:00
kramo
815c1ec088 Explicit is better than implicit 🐍🤓 2023-10-14 20:32:22 +02:00
kramo
89ba4aecaa Set last_played if launching from the command line 2023-10-14 20:27:56 +02:00
kramo
82ff5b3b46 Add tiff_compression build option 2023-10-13 16:58:08 +02:00
28 changed files with 1536 additions and 234 deletions

View File

@@ -22,6 +22,7 @@ import lzma
import os import os
import shlex import shlex
import sys import sys
from time import time
from typing import Any, Optional from typing import Any, Optional
import gi import gi
@@ -65,10 +66,27 @@ class CartridgesApplication(Adw.Application):
def __init__(self) -> None: def __init__(self) -> None:
shared.store = Store() shared.store = Store()
super().__init__( super().__init__(application_id=shared.APP_ID)
application_id=shared.APP_ID,
flags=Gio.ApplicationFlags.HANDLES_COMMAND_LINE, search = GLib.OptionEntry()
) search.long_name = "search"
search.short_name = ord("s")
search.flags = 0
search.arg = int(GLib.OptionArg.STRING)
search.arg_data = None
search.description = "Open the app with this term in the search entry"
search.arg_description = "TERM"
launch = GLib.OptionEntry()
launch.long_name = "launch"
launch.short_name = ord("l")
launch.flags = 0
launch.arg = int(GLib.OptionArg.STRING)
launch.arg_data = None
launch.description = "Run a game with the given game_id"
launch.arg_description = "GAME_ID"
self.add_main_option_entries((search, launch))
def do_activate(self) -> None: # pylint: disable=arguments-differ def do_activate(self) -> None: # pylint: disable=arguments-differ
"""Called on app creation""" """Called on app creation"""
@@ -158,19 +176,16 @@ class CartridgesApplication(Adw.Application):
shared.win.present() shared.win.present()
def do_command_line(self, command_line) -> int: def do_handle_local_options(self, options: GLib.VariantDict) -> int:
for index, arg in enumerate(args := command_line.get_arguments()): if search := options.lookup_value("search"):
if arg == "--search": self.init_search_term = search.get_string()
elif game_id := options.lookup_value("launch"):
try: try:
self.init_search_term = args[index + 1] data = json.load(
except IndexError: (path := shared.games_dir / (game_id.get_string() + ".json")).open(
pass "r", encoding="utf-8"
break )
)
if arg == "--launch":
try:
game_id = args[index + 1]
data = json.load((shared.games_dir / (game_id + ".json")).open("r"))
executable = ( executable = (
shlex.join(data["executable"]) shlex.join(data["executable"])
if isinstance(data["executable"], list) if isinstance(data["executable"], list)
@@ -179,9 +194,14 @@ class CartridgesApplication(Adw.Application):
name = data["name"] name = data["name"]
run_executable(executable) run_executable(executable)
data["last_played"] = int(time())
json.dump(data, path.open("w", encoding="utf-8"))
except (IndexError, KeyError, OSError, json.decoder.JSONDecodeError): except (IndexError, KeyError, OSError, json.decoder.JSONDecodeError):
return 1 return 1
self.register()
notification = Gio.Notification.new(_("Cartridges")) notification = Gio.Notification.new(_("Cartridges"))
notification.set_body(_("{} launched").format(name)) notification.set_body(_("{} launched").format(name))
self.send_notification( self.send_notification(
@@ -189,8 +209,7 @@ class CartridgesApplication(Adw.Application):
notification, notification,
) )
return 0 return 0
self.activate() return -1
return 0
def load_games_from_disk(self) -> None: def load_games_from_disk(self) -> None:
if shared.games_dir.is_dir(): if shared.games_dir.is_dir():
@@ -241,6 +260,7 @@ class CartridgesApplication(Adw.Application):
"Domenico https://github.com/Domefemia", "Domenico https://github.com/Domefemia",
"Rafael Mardojai CM https://mardojai.com", "Rafael Mardojai CM https://mardojai.com",
"Clara Hobbs https://github.com/Ratfink", "Clara Hobbs https://github.com/Ratfink",
"Sabri Ünal https://github.com/sabriunal",
) )
) )
about.set_designers(("kramo https://kramo.hu",)) about.set_designers(("kramo https://kramo.hu",))

View File

@@ -63,8 +63,8 @@ class PreferencesWindow(Adw.PreferencesWindow):
steam_data_file_chooser_button = Gtk.Template.Child() steam_data_file_chooser_button = Gtk.Template.Child()
lutris_expander_row = Gtk.Template.Child() lutris_expander_row = Gtk.Template.Child()
lutris_data_action_row = Gtk.Template.Child() lutris_config_action_row = Gtk.Template.Child()
lutris_data_file_chooser_button = Gtk.Template.Child() lutris_config_file_chooser_button = Gtk.Template.Child()
lutris_cache_action_row = Gtk.Template.Child() lutris_cache_action_row = Gtk.Template.Child()
lutris_cache_file_chooser_button = Gtk.Template.Child() lutris_cache_file_chooser_button = Gtk.Template.Child()
lutris_import_steam_switch = Gtk.Template.Child() lutris_import_steam_switch = Gtk.Template.Child()
@@ -107,11 +107,13 @@ class PreferencesWindow(Adw.PreferencesWindow):
sgdb_prefer_switch = Gtk.Template.Child() sgdb_prefer_switch = Gtk.Template.Child()
sgdb_animated_switch = Gtk.Template.Child() sgdb_animated_switch = Gtk.Template.Child()
sgdb_fetch_button = Gtk.Template.Child() sgdb_fetch_button = Gtk.Template.Child()
sgdb_stack = Gtk.Template.Child()
sgdb_spinner = Gtk.Template.Child()
danger_zone_group = Gtk.Template.Child() danger_zone_group = Gtk.Template.Child()
reset_action_row = Gtk.Template.Child() remove_all_games_list_box = Gtk.Template.Child()
reset_button = Gtk.Template.Child() reset_list_box = Gtk.Template.Child()
remove_all_games_button = Gtk.Template.Child() reset_group = Gtk.Template.Child()
removed_games: set[Game] = set() removed_games: set[Game] = set()
warning_menu_buttons: dict = {} warning_menu_buttons: dict = {}
@@ -135,12 +137,12 @@ class PreferencesWindow(Adw.PreferencesWindow):
self.add_controller(shortcut_controller) self.add_controller(shortcut_controller)
# General # General
self.remove_all_games_button.connect("clicked", self.remove_all_games) self.remove_all_games_list_box.connect("row-activated", self.remove_all_games)
# Debug # Debug
if shared.PROFILE == "development": if shared.PROFILE == "development":
self.reset_action_row.set_visible(True) self.reset_group.set_visible(True)
self.reset_button.connect("clicked", self.reset_app) self.reset_list_box.connect("row-activated", self.reset_app)
# Sources settings # Sources settings
for source_class in ( for source_class in (
@@ -181,6 +183,9 @@ class PreferencesWindow(Adw.PreferencesWindow):
sgdb_manager = shared.store.managers[SgdbManager] sgdb_manager = shared.store.managers[SgdbManager]
sgdb_manager.reset_cancellable() sgdb_manager.reset_cancellable()
self.sgdb_spinner.set_spinning(True)
self.sgdb_stack.set_visible_child(self.sgdb_spinner)
self.add_toast(download_toast := Adw.Toast.new(_("Downloading covers…"))) self.add_toast(download_toast := Adw.Toast.new(_("Downloading covers…")))
def update_cover_callback(manager: SgdbManager) -> None: def update_cover_callback(manager: SgdbManager) -> None:
@@ -205,6 +210,9 @@ class PreferencesWindow(Adw.PreferencesWindow):
download_toast.dismiss() download_toast.dismiss()
self.add_toast(toast) self.add_toast(toast)
self.sgdb_spinner.set_spinning(False)
self.sgdb_stack.set_visible_child(self.sgdb_fetch_button)
for game in shared.store: for game in shared.store:
sgdb_manager.process_game(game, {}, update_cover_callback) sgdb_manager.process_game(game, {}, update_cover_callback)

View File

@@ -36,6 +36,7 @@ APP_ID = "@APP_ID@"
VERSION = "@VERSION@" VERSION = "@VERSION@"
PREFIX = "@PREFIX@" PREFIX = "@PREFIX@"
PROFILE = "@PROFILE@" PROFILE = "@PROFILE@"
TIFF_COMPRESSION = "@TIFF_COMPRESSION@"
SPEC_VERSION = 1.5 # The version of the game_id.json spec SPEC_VERSION = 1.5 # The version of the game_id.json spec
schema = Gio.Settings.new(APP_ID) schema = Gio.Settings.new(APP_ID)

View File

@@ -53,7 +53,7 @@ class FileManager(AsyncManager):
json.dump( json.dump(
{attr: getattr(game, attr) for attr in attrs if attr}, {attr: getattr(game, attr) for attr in attrs if attr},
(shared.games_dir / f"{game.game_id}.json").open("w"), (shared.games_dir / f"{game.game_id}.json").open("w", encoding="utf-8"),
indent=4, indent=4,
sort_keys=True, sort_keys=True,
) )

View File

@@ -76,7 +76,7 @@ def migrate_files_v1_to_v2() -> None:
imported_execs = set() imported_execs = set()
for game_path in shared.games_dir.glob("imported_*.json"): for game_path in shared.games_dir.glob("imported_*.json"):
try: try:
game_data = json.load(game_path.open("r")) game_data = json.load(game_path.open("r", encoding="utf-8"))
except (OSError, json.JSONDecodeError): except (OSError, json.JSONDecodeError):
continue continue
number = int(game_data["game_id"].replace("imported_", "")) number = int(game_data["game_id"].replace("imported_", ""))
@@ -86,7 +86,7 @@ def migrate_files_v1_to_v2() -> None:
# Migrate imported game files # Migrate imported game files
for game_path in old_imported_game_paths: for game_path in old_imported_game_paths:
try: try:
game_data = json.load(game_path.open("r")) game_data = json.load(game_path.open("r", encoding="utf-8"))
except (OSError, json.JSONDecodeError): except (OSError, json.JSONDecodeError):
continue continue
@@ -104,7 +104,7 @@ def migrate_files_v1_to_v2() -> None:
) )
json.dump( json.dump(
game_data, game_data,
destination_game_path.open("w"), destination_game_path.open("w", encoding="utf-8"),
indent=4, indent=4,
sort_keys=True, sort_keys=True,
) )

View File

@@ -1,4 +1,4 @@
# save_cover.py # run_executable.py
# #
# Copyright 2023 kramo # Copyright 2023 kramo
# #

View File

@@ -74,7 +74,7 @@ def convert_cover(
tmp_path, tmp_path,
compression="tiff_adobe_deflate" compression="tiff_adobe_deflate"
if shared.schema.get_boolean("high-quality-images") if shared.schema.get_boolean("high-quality-images")
else "webp", else shared.TIFF_COMPRESSION,
) )
except UnidentifiedImageError: except UnidentifiedImageError:
try: try:

View File

@@ -413,9 +413,11 @@ class CartridgesWindow(Adw.ApplicationWindow):
order = False order = False
def get_value(index: int) -> str: def get_value(index: int) -> str:
return str( return (
getattr((child1.get_child(), child2.get_child())[index], var) str(getattr((child1.get_child(), child2.get_child())[index], var))
).lower() .lower()
.removeprefix("the ")
)
if var != "name" and get_value(0) == get_value(1): if var != "name" and get_value(0) == get_value(1):
var, order = "name", False var, order = "name", False

View File

@@ -99,38 +99,16 @@ template $Game : Box {
menu game_options { menu game_options {
section { section {
item { item (_("Edit"), "app.edit_game")
label: _("Edit"); item (_("Hide"), "app.hide_game")
action: "app.edit_game"; item (_("Remove"), "app.remove_game")
}
item {
label: _("Hide");
action: "app.hide_game";
}
item {
label: _("Remove");
action: "app.remove_game";
}
} }
} }
menu hidden_game_options { menu hidden_game_options {
section { section {
item { item (_("Edit"), "app.edit_game")
label: _("Edit"); item (_("Unhide"), "app.hide_game")
action: "app.edit_game"; item (_("Remove"), "app.remove_game")
}
item {
label: _("Unhide");
action: "app.hide_game";
}
item {
label: _("Remove");
action: "app.remove_game";
}
} }
} }

View File

@@ -33,32 +33,76 @@ template $PreferencesWindow : Adw.PreferencesWindow {
Adw.PreferencesGroup danger_zone_group { Adw.PreferencesGroup danger_zone_group {
title: _("Danger Zone"); title: _("Danger Zone");
Adw.ActionRow { ListBox remove_all_games_list_box {
title: _("Remove All Games"); Adw.PreferencesRow {
activatable: true;
selectable: false;
Button remove_all_games_button { Box {
label: _("Remove"); spacing: 6;
valign: center; valign: center;
halign: center;
Label {
label: _("Remove All Games");
ellipsize: end;
styles [ styles [
"destructive-action", "heading",
]
}
styles [
"header",
]
}
styles [
"error",
]
}
styles [
"boxed-list",
] ]
} }
} }
Adw.ActionRow reset_action_row { Adw.PreferencesGroup reset_group {
title: "Reset App";
subtitle: "Completely resets and quits Cartridges";
visible: false; visible: false;
Button reset_button { ListBox reset_list_box {
label: "Reset"; Adw.PreferencesRow {
activatable: true;
selectable: false;
Box {
spacing: 6;
valign: center; valign: center;
halign: center;
Label {
label: "Reset App";
ellipsize: end;
styles [ styles [
"destructive-action", "heading",
] ]
} }
styles [
"header",
]
}
styles [
"error",
]
}
styles [
"boxed-list",
]
} }
} }
} }
@@ -83,6 +127,11 @@ template $PreferencesWindow : Adw.PreferencesWindow {
title: _("Steam"); title: _("Steam");
show-enable-switch: true; show-enable-switch: true;
[prefix]
Image {
icon-name: "steam-source-symbolic";
}
Adw.ActionRow steam_data_action_row { Adw.ActionRow steam_data_action_row {
title: _("Install Location"); title: _("Install Location");
@@ -100,10 +149,15 @@ template $PreferencesWindow : Adw.PreferencesWindow {
title: _("Lutris"); title: _("Lutris");
show-enable-switch: true; show-enable-switch: true;
Adw.ActionRow lutris_data_action_row { [prefix]
Image {
icon-name: "lutris-source-symbolic";
}
Adw.ActionRow lutris_config_action_row {
title: _("Install Location"); title: _("Install Location");
Button lutris_data_file_chooser_button { Button lutris_config_file_chooser_button {
icon-name: "folder-symbolic"; icon-name: "folder-symbolic";
valign: center; valign: center;
styles [ styles [
@@ -137,6 +191,11 @@ template $PreferencesWindow : Adw.PreferencesWindow {
title: _("Heroic"); title: _("Heroic");
show-enable-switch: true; show-enable-switch: true;
[prefix]
Image {
icon-name: "heroic-source-symbolic";
}
Adw.ActionRow heroic_config_action_row { Adw.ActionRow heroic_config_action_row {
title: _("Install Location"); title: _("Install Location");
@@ -170,6 +229,11 @@ template $PreferencesWindow : Adw.PreferencesWindow {
title: _("Bottles"); title: _("Bottles");
show-enable-switch: true; show-enable-switch: true;
[prefix]
Image {
icon-name: "bottles-source-symbolic";
}
Adw.ActionRow bottles_data_action_row { Adw.ActionRow bottles_data_action_row {
title: _("Install Location"); title: _("Install Location");
@@ -187,6 +251,11 @@ template $PreferencesWindow : Adw.PreferencesWindow {
title: _("itch"); title: _("itch");
show-enable-switch: true; show-enable-switch: true;
[prefix]
Image {
icon-name: "itch-source-symbolic";
}
Adw.ActionRow itch_config_action_row { Adw.ActionRow itch_config_action_row {
title: _("Install Location"); title: _("Install Location");
@@ -204,6 +273,11 @@ template $PreferencesWindow : Adw.PreferencesWindow {
title: _("Legendary"); title: _("Legendary");
show-enable-switch: true; show-enable-switch: true;
[prefix]
Image {
icon-name: "legendary-source-symbolic";
}
Adw.ActionRow legendary_config_action_row { Adw.ActionRow legendary_config_action_row {
title: _("Install Location"); title: _("Install Location");
@@ -221,6 +295,11 @@ template $PreferencesWindow : Adw.PreferencesWindow {
title: _("RetroArch"); title: _("RetroArch");
show-enable-switch: true; show-enable-switch: true;
[prefix]
Image {
icon-name: "retroarch-source-symbolic";
}
Adw.ActionRow retroarch_config_action_row { Adw.ActionRow retroarch_config_action_row {
title: _("Install Location"); title: _("Install Location");
@@ -238,6 +317,11 @@ template $PreferencesWindow : Adw.PreferencesWindow {
title: _("Flatpak"); title: _("Flatpak");
show-enable-switch: true; show-enable-switch: true;
[prefix]
Image {
icon-name: "flatpak-source-symbolic";
}
Adw.ActionRow flatpak_data_action_row { Adw.ActionRow flatpak_data_action_row {
title: _("Install Location"); title: _("Install Location");
@@ -257,6 +341,11 @@ template $PreferencesWindow : Adw.PreferencesWindow {
Adw.SwitchRow desktop_switch { Adw.SwitchRow desktop_switch {
title: _("Desktop Entries"); title: _("Desktop Entries");
[prefix]
Image {
icon-name: "user-desktop-symbolic";
}
} }
} }
} }
@@ -297,10 +386,15 @@ template $PreferencesWindow : Adw.PreferencesWindow {
subtitle: _("Fetch covers for games already in your library"); subtitle: _("Fetch covers for games already in your library");
sensitive: bind sgdb_switch.active; sensitive: bind sgdb_switch.active;
Stack sgdb_stack {
Button sgdb_fetch_button { Button sgdb_fetch_button {
label: _("Update"); label: _("Update");
valign: center; valign: center;
} }
Spinner sgdb_spinner {
valign: center;
}
}
} }
} }
} }

View File

@@ -511,36 +511,19 @@ menu primary_menu {
} }
section { section {
item { item (_("Preferences"), "app.preferences")
label: _("Preferences"); item (_("Keyboard Shortcuts"), "win.show-help-overlay")
action: "app.preferences"; item (_("About Cartridges"), "app.about")
}
item {
label: _("Keyboard Shortcuts");
action: "win.show-help-overlay";
}
item {
label: _("About Cartridges");
action: "app.about";
}
} }
} }
menu add_games { menu add_games {
section { section {
item { item (_("Add Game"), "app.add_game")
label: _("Add Game");
action: "app.add_game";
}
} }
section { section {
item { item (_("Import"), "app.import")
label: _("Import");
action: "app.import";
}
} }
} }
@@ -548,29 +531,10 @@ menu search {
section { section {
label: "Search on…"; label: "Search on…";
item { item (_("IGDB"), "app.igdb_search")
label: "IGDB"; item (_("SteamGridDB"), "app.sgdb_search")
action: "app.igdb_search"; item (_("ProtonDB"), "app.protondb_search")
} item (_("Lutris"), "app.lutris_search")
item (_("HowLongToBeat"), "app.hltb_search")
item {
label: "SteamGridDB";
action: "app.sgdb_search";
}
item {
label: "ProtonDB";
action: "app.protondb_search";
}
item {
label: "Lutris";
action: "app.lutris_search";
}
item {
label: "HowLongToBeat";
action: "app.hltb_search";
}
} }
} }

View File

@@ -15,7 +15,9 @@
<url type="vcs-browser">https://github.com/kra-mo/cartridges</url> <url type="vcs-browser">https://github.com/kra-mo/cartridges</url>
<url type="contribute">https://github.com/kra-mo/cartridges/blob/main/CONTRIBUTING.md</url> <url type="contribute">https://github.com/kra-mo/cartridges/blob/main/CONTRIBUTING.md</url>
<developer_name translatable="no">kramo</developer_name> <developer_name translatable="no">kramo</developer_name>
<project_group>GNOME</project_group>
<launchable type="desktop-id">@APP_ID@.desktop</launchable> <launchable type="desktop-id">@APP_ID@.desktop</launchable>
<translation type="gettext">cartridges</translation>
<supports> <supports>
<control>pointing</control> <control>pointing</control>
<control>keyboard</control> <control>keyboard</control>
@@ -24,10 +26,6 @@
<recommends> <recommends>
<display_length compare="gt">280</display_length> <display_length compare="gt">280</display_length>
</recommends> </recommends>
<custom>
<value key="Purism::form_factor">workstation</value>
<value key="Purism::form_factor">mobile</value>
</custom>
<screenshots> <screenshots>
<screenshot type="default"> <screenshot type="default">
<image>https://raw.githubusercontent.com/kra-mo/cartridges/main/data/screenshots/1.png</image> <image>https://raw.githubusercontent.com/kra-mo/cartridges/main/data/screenshots/1.png</image>
@@ -48,6 +46,14 @@
</screenshots> </screenshots>
<content_rating type="oars-1.1" /> <content_rating type="oars-1.1" />
<releases> <releases>
<release version="2.6.3" date="2023-11-16">
<description translatable="no">
<ul>
<li>Fixed an issue with custom Lutris locations</li>
<li>UI improvements</li>
</ul>
</description>
</release>
<release version="2.6" date="2023-10-11"> <release version="2.6" date="2023-10-11">
<description translatable="no"> <description translatable="no">
<p>You can now search your Cartridges library from GNOME!</p> <p>You can now search your Cartridges library from GNOME!</p>

View File

@@ -52,9 +52,9 @@ appstream_file = i18n.merge_file(
install_dir: join_paths(get_option('datadir'), 'metainfo') install_dir: join_paths(get_option('datadir'), 'metainfo')
) )
appstream_util = find_program('appstream-util', required: false) appstreamcli = find_program('appstreamcli', required: false)
if appstream_util.found() if appstreamcli.found()
test('Validate appstream file', appstream_util, args: ['validate', appstream_file]) test('Validate appstream file', appstreamcli, args: ['validate', appstream_file])
endif endif
install_data( install_data(

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 40 KiB

View File

@@ -1,5 +1,5 @@
project('cartridges', project('cartridges',
version: '2.6', version: '2.6.3',
meson_version: '>= 0.59.0', meson_version: '>= 0.59.0',
default_options: [ 'warning_level=2', 'werror=false', ], default_options: [ 'warning_level=2', 'werror=false', ],
) )
@@ -31,6 +31,7 @@ conf.set('APP_ID', app_id)
conf.set('PREFIX', prefix) conf.set('PREFIX', prefix)
conf.set('VERSION', meson.project_version()) conf.set('VERSION', meson.project_version())
conf.set('PROFILE', profile) conf.set('PROFILE', profile)
conf.set('TIFF_COMPRESSION', get_option('tiff_compression'))
conf.set('localedir', join_paths(get_option('prefix'), get_option('localedir'))) conf.set('localedir', join_paths(get_option('prefix'), get_option('localedir')))
conf.set('pkgdatadir', pkgdatadir) conf.set('pkgdatadir', pkgdatadir)
conf.set('libexecdir', libexecdir) conf.set('libexecdir', libexecdir)

View File

@@ -7,3 +7,12 @@ option(
], ],
value: 'release' value: 'release'
) )
option(
'tiff_compression',
type: 'combo',
choices: [
'webp',
'jpeg',
],
value: 'webp'
)

View File

@@ -20,3 +20,5 @@ sv
tr tr
el el
cs cs
zh_Hans
be

630
po/be.po Normal file
View File

@@ -0,0 +1,630 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR kramo
# This file is distributed under the same license as the Cartridges package.
# Yahor <k1llo2810@gmail.com>, 2023.
# Yahor <g_egor98@tut.by>, 2023.
# Yahor <k1llo2810@protonmail.com>, 2023.
msgid ""
msgstr ""
"Project-Id-Version: Cartridges\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-10-10 22:22+0200\n"
"PO-Revision-Date: 2023-11-01 17:02+0000\n"
"Last-Translator: Yahor <k1llo2810@protonmail.com>\n"
"Language-Team: Belarusian <https://hosted.weblate.org/projects/cartridges/"
"cartridges/be/>\n"
"Language: be\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 5.2-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6
#: data/hu.kramo.Cartridges.metainfo.xml.in:30 data/gtk/window.blp:47
#: data/gtk/window.blp:80 cartridges/main.py:185
msgid "Cartridges"
msgstr "Картрыджы"
#: data/hu.kramo.Cartridges.desktop.in:4
msgid "Game Launcher"
msgstr "Праграма запуску гульняў"
#: data/hu.kramo.Cartridges.desktop.in:5
#: data/hu.kramo.Cartridges.metainfo.xml.in:7
msgid "Launch all your games"
msgstr "Запускайце ўсе свае гульні"
#: data/hu.kramo.Cartridges.desktop.in:11
msgid ""
"gaming;launcher;steam;lutris;heroic;bottles;itch;flatpak;legendary;retroarch;"
msgstr ""
"гульні;праграма "
"запуску;steam;lutris;heroic;bottles;itch;flatpak;legendary;retroarch;"
#: data/hu.kramo.Cartridges.metainfo.xml.in:9
msgid ""
"Cartridges is a simple game launcher for all of your games. It has support "
"for importing games from Steam, Lutris, Heroic and more with no login "
"necessary. You can sort and hide games or download cover art from "
"SteamGridDB."
msgstr ""
"Картрыджы - гэта простая праграма для запуску ўсіх вашых гульняў. Яна "
"падтрымлівае імпарт гульняў з Steam, Lutris, Heroic і іншых без неабходнасці "
"ўваходу ў сістэму. Вы можаце сартаваць і хаваць гульні або спампоўваць "
"вокладку з SteamGridDB."
#: data/hu.kramo.Cartridges.metainfo.xml.in:34 data/gtk/window.blp:288
#: cartridges/details_window.py:71
msgid "Game Details"
msgstr "Падрабязнасці аб гульні"
#: data/hu.kramo.Cartridges.metainfo.xml.in:38
msgid "Edit Game Details"
msgstr "Рэдагаваць падрабязнасці аб гульні"
#: data/hu.kramo.Cartridges.metainfo.xml.in:42 data/gtk/help-overlay.blp:19
#: data/gtk/window.blp:515 cartridges/details_window.py:271
#: cartridges/importer/importer.py:319 cartridges/importer/importer.py:370
msgid "Preferences"
msgstr "Параметры"
#: data/gtk/details-window.blp:25
msgid "Cancel"
msgstr "Скасаваць"
#: data/gtk/details-window.blp:55
msgid "New Cover"
msgstr "Новая вокладка"
#: data/gtk/details-window.blp:73
msgid "Delete Cover"
msgstr "Выдалиць вокладку"
#: data/gtk/details-window.blp:100 data/gtk/game.blp:81
msgid "Title"
msgstr "Назва"
#: data/gtk/details-window.blp:103
msgid "Developer (optional)"
msgstr "Распрацоўшчык (неабавязкова)"
#: data/gtk/details-window.blp:108
msgid "Executable"
msgstr "Выконваны"
#: data/gtk/details-window.blp:114
msgid "Select File"
msgstr "Выбраць файл"
#: data/gtk/details-window.blp:125
msgid "More Info"
msgstr "Больш інфармацыі"
#: data/gtk/game.blp:103 data/gtk/game.blp:122 data/gtk/window.blp:415
msgid "Edit"
msgstr "Рэдагаваць"
#: data/gtk/game.blp:108 cartridges/window.py:350
msgid "Hide"
msgstr "Схаваць"
#: data/gtk/game.blp:113 data/gtk/game.blp:132 data/gtk/preferences.blp:40
#: data/gtk/window.blp:435
msgid "Remove"
msgstr "Выдаліць"
#: data/gtk/game.blp:127 cartridges/window.py:352
msgid "Unhide"
msgstr "Паказаць"
#: data/gtk/help-overlay.blp:11 data/gtk/preferences.blp:8
msgid "General"
msgstr "Агульнае"
#: data/gtk/help-overlay.blp:14 data/gtk/window.blp:184 data/gtk/window.blp:243
#: data/gtk/window.blp:446
msgid "Search"
msgstr "Пошук"
#: data/gtk/help-overlay.blp:24 data/gtk/window.blp:520
msgid "Keyboard Shortcuts"
msgstr "Спалучэнні клавіш"
#: data/gtk/help-overlay.blp:29 cartridges/game.py:103
#: cartridges/preferences.py:125 cartridges/importer/importer.py:394
msgid "Undo"
msgstr "Адмяніць"
#: data/gtk/help-overlay.blp:34
msgid "Quit"
msgstr "Выйсці"
#: data/gtk/help-overlay.blp:39 data/gtk/window.blp:88 data/gtk/window.blp:164
msgid "Toggle Sidebar"
msgstr "Пераключыць бакавую панэль"
#: data/gtk/help-overlay.blp:44 data/gtk/window.blp:177 data/gtk/window.blp:236
msgid "Main Menu"
msgstr "Галоўнае меню"
#: data/gtk/help-overlay.blp:50
msgid "Games"
msgstr "Гульні"
#: data/gtk/help-overlay.blp:53 data/gtk/window.blp:170 data/gtk/window.blp:534
msgid "Add Game"
msgstr "Дадаць гульню"
#: data/gtk/help-overlay.blp:58 data/gtk/preferences.blp:68
#: data/gtk/window.blp:27 data/gtk/window.blp:541
msgid "Import"
msgstr "Імпарт"
#: data/gtk/help-overlay.blp:63
msgid "Show Hidden Games"
msgstr "Паказаць схаваныя гульні"
#: data/gtk/help-overlay.blp:68
msgid "Remove Game"
msgstr "Выдаліць гульню"
#: data/gtk/preferences.blp:12 data/gtk/preferences.blp:72
#: data/gtk/preferences.blp:278
msgid "Behavior"
msgstr "Паводзіны"
#: data/gtk/preferences.blp:15
msgid "Exit After Launching Games"
msgstr "Выхад пасля запуску гульняў"
#: data/gtk/preferences.blp:19
msgid "Cover Image Launches Game"
msgstr "Выява вокладкі запускае гульню"
#: data/gtk/preferences.blp:20
msgid "Swaps the behavior of the cover image and the play button"
msgstr "Мяняе паводзіны вокладкі і кнопкі запуску"
#: data/gtk/preferences.blp:25 cartridges/details_window.py:85
msgid "Images"
msgstr "Відарысы"
#: data/gtk/preferences.blp:28
msgid "High Quality Images"
msgstr "Відарысы высокай якасці"
#: data/gtk/preferences.blp:29
msgid "Save game covers losslessly at the cost of storage"
msgstr "Захаванне вокладак гульняў без страт за кошт сховішча"
#: data/gtk/preferences.blp:34
msgid "Danger Zone"
msgstr "Небяспечная зона"
#: data/gtk/preferences.blp:37
msgid "Remove All Games"
msgstr "Выдаліць усе гульні"
#: data/gtk/preferences.blp:75
msgid "Remove Uninstalled Games"
msgstr "Выдаляць дэінсталяваныя гульні"
#: data/gtk/preferences.blp:80
msgid "Sources"
msgstr "Крыніцы"
#: data/gtk/preferences.blp:83 cartridges/importer/steam_source.py:114
msgid "Steam"
msgstr "Steam"
#: data/gtk/preferences.blp:87 data/gtk/preferences.blp:104
#: data/gtk/preferences.blp:141 data/gtk/preferences.blp:174
#: data/gtk/preferences.blp:191 data/gtk/preferences.blp:208
#: data/gtk/preferences.blp:225 data/gtk/preferences.blp:242
msgid "Install Location"
msgstr "Месца ўсталёўкі"
#: data/gtk/preferences.blp:100 cartridges/importer/lutris_source.py:92
msgid "Lutris"
msgstr "Lutris"
#: data/gtk/preferences.blp:116
msgid "Cache Location"
msgstr "Размяшчэнне кэша"
#: data/gtk/preferences.blp:128
msgid "Import Steam Games"
msgstr "Імпарт гульняў Steam"
#: data/gtk/preferences.blp:132
msgid "Import Flatpak Games"
msgstr "Імпарт гульняў Flatpak"
#: data/gtk/preferences.blp:137 cartridges/importer/heroic_source.py:355
msgid "Heroic"
msgstr "Heroic"
#: data/gtk/preferences.blp:153
msgid "Import Epic Games"
msgstr "Імпарт Epic Games"
#: data/gtk/preferences.blp:157
msgid "Import GOG Games"
msgstr "Імпарт гульняў GOG"
#: data/gtk/preferences.blp:161
msgid "Import Amazon Games"
msgstr "Імпарт гульняў Amazon"
#: data/gtk/preferences.blp:165
msgid "Import Sideloaded Games"
msgstr "Імпарт іншых гульняў"
#: data/gtk/preferences.blp:170 cartridges/importer/bottles_source.py:86
msgid "Bottles"
msgstr "Bottles"
#: data/gtk/preferences.blp:187 cartridges/importer/itch_source.py:81
msgid "itch"
msgstr "itch"
#: data/gtk/preferences.blp:204 cartridges/importer/legendary_source.py:97
msgid "Legendary"
msgstr "Legendary"
#: data/gtk/preferences.blp:221 cartridges/importer/retroarch_source.py:142
msgid "RetroArch"
msgstr "RetroArch"
#: data/gtk/preferences.blp:238 cartridges/importer/flatpak_source.py:118
msgid "Flatpak"
msgstr "Flatpak"
#: data/gtk/preferences.blp:254
msgid "Import Game Launchers"
msgstr "Імпарт сродкаў запуску гульняў"
#: data/gtk/preferences.blp:259 cartridges/importer/desktop_source.py:215
msgid "Desktop Entries"
msgstr "Запісы працоўнага стала"
#: data/gtk/preferences.blp:266
msgid "SteamGridDB"
msgstr "SteamGridDB"
#: data/gtk/preferences.blp:270
msgid "Authentication"
msgstr "Аўтэнтыфікацыя"
#: data/gtk/preferences.blp:273
msgid "API Key"
msgstr "Ключ API"
#: data/gtk/preferences.blp:281
msgid "Use SteamGridDB"
msgstr "Выкарыстоўвайць SteamGridDB"
#: data/gtk/preferences.blp:282
msgid "Download images when adding or importing games"
msgstr "Спампоўка відарысаў пры даданні ці імпарце гульняў"
#: data/gtk/preferences.blp:286
msgid "Prefer Over Official Images"
msgstr "Аддавайце перавагу афіцыйным відарысам"
#: data/gtk/preferences.blp:290
msgid "Prefer Animated Images"
msgstr "Аддавайце перавагу аніміраваным відарысам"
#: data/gtk/preferences.blp:296
msgid "Update Covers"
msgstr "Абнавіць вокладкі"
#: data/gtk/preferences.blp:297
msgid "Fetch covers for games already in your library"
msgstr "Атрымаць вокладкі для гульняў, якія ўжо ёсць у вашай бібліятэцы"
#: data/gtk/preferences.blp:301
msgid "Update"
msgstr "Абнавіць"
#: data/gtk/window.blp:6 data/gtk/window.blp:14
msgid "No Games Found"
msgstr "Гульні не знойдзены"
#: data/gtk/window.blp:7 data/gtk/window.blp:15
msgid "Try a different search."
msgstr "Паспрабуйце іншы пошук."
#: data/gtk/window.blp:21
msgid "No Games"
msgstr "Няма гульняў"
#: data/gtk/window.blp:22
msgid "Use the + button to add games."
msgstr "Выкарыстоўвайце кнопку +, каб дадаць гульні."
#: data/gtk/window.blp:40
msgid "No Hidden Games"
msgstr "Няма схаваных гульняў"
#: data/gtk/window.blp:41
msgid "Games you hide will appear here."
msgstr "Гульні, якія вы схаваеце, з'явяцца тут."
#: data/gtk/window.blp:75 data/gtk/window.blp:106 cartridges/main.py:207
msgid "All Games"
msgstr "Усе гульні"
#: data/gtk/window.blp:126 cartridges/main.py:209
msgid "Added"
msgstr "Дададзена"
#: data/gtk/window.blp:141
msgid "Imported"
msgstr "Імпартавана"
#: data/gtk/window.blp:229
msgid "Hidden Games"
msgstr "Схаваныя гульні"
#: data/gtk/window.blp:339
msgid "Game Title"
msgstr "Назва гульні"
#: data/gtk/window.blp:396
msgid "Play"
msgstr "Гуляць"
#: data/gtk/window.blp:473
msgid "Sort"
msgstr "Сартаваць"
#: data/gtk/window.blp:476
msgid "A-Z"
msgstr "А-Я"
#: data/gtk/window.blp:482
msgid "Z-A"
msgstr "Я-А"
#: data/gtk/window.blp:488
msgid "Newest"
msgstr "Найноўшыя"
#: data/gtk/window.blp:494
msgid "Oldest"
msgstr "Старэйшыя"
#: data/gtk/window.blp:500
msgid "Last Played"
msgstr "Апошняя гульня"
#: data/gtk/window.blp:507
msgid "Show Hidden"
msgstr "Паказаць схаваныя"
#: data/gtk/window.blp:525
msgid "About Cartridges"
msgstr "Аб картрыджах"
#. The variable is the title of the game
#: cartridges/main.py:186 cartridges/game.py:125
msgid "{} launched"
msgstr "{} запушчана"
#. Translators: Replace this with your name for it to show up in the about window
#: cartridges/main.py:249
msgid "translator_credits"
msgstr "Yahor Haurylenka https://github.com/k1llo"
#. The variable is the date when the game was added
#: cartridges/window.py:373
msgid "Added: {}"
msgstr "Дададзена: {}"
#: cartridges/window.py:376
msgid "Never"
msgstr "Ніколі"
#. The variable is the date when the game was last played
#: cartridges/window.py:380
msgid "Last played: {}"
msgstr "Гулялі апошні раз: {}"
#: cartridges/details_window.py:76
msgid "Apply"
msgstr "Ужыць"
#: cartridges/details_window.py:82
msgid "Add New Game"
msgstr "Дадаць новую гульню"
#: cartridges/details_window.py:83
msgid "Add"
msgstr "Дадаць"
#: cartridges/details_window.py:93
msgid "Executables"
msgstr "Выконваныя"
#. Translate this string as you would translate "file"
#: cartridges/details_window.py:108
msgid "file.txt"
msgstr "file.txt"
#. As in software
#: cartridges/details_window.py:110
msgid "program"
msgstr "праграма"
#. Translate this string as you would translate "path to {}"
#: cartridges/details_window.py:115 cartridges/details_window.py:117
msgid "C:\\path\\to\\{}"
msgstr "C:\\шлях\\да\\{}"
#. Translate this string as you would translate "path to {}"
#: cartridges/details_window.py:121 cartridges/details_window.py:123
msgid "/path/to/{}"
msgstr "/шлях/да/{}"
#: cartridges/details_window.py:128
msgid ""
"To launch the executable \"{}\", use the command:\n"
"\n"
"<tt>\"{}\"</tt>\n"
"\n"
"To open the file \"{}\" with the default application, use:\n"
"\n"
"<tt>{} \"{}\"</tt>\n"
"\n"
"If the path contains spaces, make sure to wrap it in double quotes!"
msgstr ""
"Каб запусціць выкананы файл \"{}\", выканайце каманду:\n"
"\n"
"<tt>\"{}\"</tt>\n"
"\n"
"Каб адкрыць файл \"{}\" з дапамогай праграмы па змаўчанні, выкарыстоўвайце:\n"
"\n"
"<tt>{} \"{}\"</tt>\n"
"\n"
"Калі шлях змяшчае прабелы, абавязкова заключыце яго ў падвойныя двукоссі!"
#: cartridges/details_window.py:171 cartridges/details_window.py:177
msgid "Couldn't Add Game"
msgstr "Не ўдалося дадаць гульню"
#: cartridges/details_window.py:171 cartridges/details_window.py:213
msgid "Game title cannot be empty."
msgstr "Назва гульні не можа быць пустой."
#: cartridges/details_window.py:177 cartridges/details_window.py:221
msgid "Executable cannot be empty."
msgstr "Выканальны файл не можа быць пустым."
#: cartridges/details_window.py:212 cartridges/details_window.py:220
msgid "Couldn't Apply Preferences"
msgstr "Не ўдалося прымяніць параметры"
#. The variable is the title of the game
#: cartridges/game.py:139
msgid "{} hidden"
msgstr "{} схаваная"
#: cartridges/game.py:139
msgid "{} unhidden"
msgstr "{} непрыхавана"
#. The variable is the title of the game
#. The variable is the number of games removed
#: cartridges/game.py:153 cartridges/importer/importer.py:391
msgid "{} removed"
msgstr "{} выдалена"
#: cartridges/preferences.py:124
msgid "All games removed"
msgstr "Усе гульні выдалены"
#: cartridges/preferences.py:172
msgid ""
"An API key is required to use SteamGridDB. You can generate one {}here{}."
msgstr ""
"Для выкарыстання SteamGridDB патрабуецца ключ API. Вы можаце стварыць яго "
"{}тут{}."
#: cartridges/preferences.py:184
msgid "Downloading covers…"
msgstr "Спампоўка вокладак…"
#: cartridges/preferences.py:203
msgid "Covers updated"
msgstr "Вокладкі абноўлены"
#: cartridges/preferences.py:335
msgid "Installation Not Found"
msgstr "Усталяванне не знойдзена"
#: cartridges/preferences.py:336
msgid "Select a valid directory."
msgstr "Выберыце сапраўдны каталог."
#: cartridges/preferences.py:372 cartridges/importer/importer.py:317
msgid "Warning"
msgstr "Увага"
#: cartridges/preferences.py:406
msgid "Invalid Directory"
msgstr "Няправільны каталог"
#: cartridges/preferences.py:412
msgid "Set Location"
msgstr "Задаць размяшчэнне"
#: cartridges/utils/create_dialog.py:33 cartridges/importer/importer.py:318
msgid "Dismiss"
msgstr "Адхіліць"
#: cartridges/importer/importer.py:145
msgid "Importing Games…"
msgstr "Імпарт гульняў…"
#: cartridges/importer/importer.py:338
msgid "The following errors occured during import:"
msgstr "Падчас імпарту адбыліся наступныя памылкі:"
#: cartridges/importer/importer.py:367
msgid "No new games found"
msgstr "Новыя гульні не знойдзены"
#: cartridges/importer/importer.py:379
msgid "1 game imported"
msgstr "Імпартавана 1 гульня"
#. The variable is the number of games
#: cartridges/importer/importer.py:383
msgid "{} games imported"
msgstr "{} гульняў імпартавана"
#. A single game removed
#: cartridges/importer/importer.py:387
msgid "1 removed"
msgstr "1 выдалена"
#. The variable is the name of the source
#: cartridges/importer/location.py:33
msgid "Select the {} cache directory."
msgstr "Выберыце каталог кэша {}."
#. The variable is the name of the source
#: cartridges/importer/location.py:35
msgid "Select the {} configuration directory."
msgstr "Выберыце каталог канфігурацыі {}."
#. The variable is the name of the source
#: cartridges/importer/location.py:37
msgid "Select the {} data directory."
msgstr "Выберыце каталог даных {}."
#: cartridges/importer/retroarch_source.py:129
msgid "No RetroArch Core Selected"
msgstr "Ядро RetroArch не выбрана"
#. The variable is a newline separated list of playlists
#: cartridges/importer/retroarch_source.py:131
msgid "The following playlists have no default core:"
msgstr "Наступныя плэйлісты не маюць ядра па змаўчанні:"
#: cartridges/importer/retroarch_source.py:133
msgid "Games with no core selected were not imported"
msgstr "Гульні без выбранага ядра не былі імпартаваныя"
#: cartridges/store/managers/sgdb_manager.py:46
msgid "Couldn't Authenticate SteamGridDB"
msgstr "Немагчыма аўтэнтыфікаваць SteamGridDB"
#: cartridges/store/managers/sgdb_manager.py:47
msgid "Verify your API key in preferences"
msgstr "Праверце свой ключ API ў наладах"

View File

@@ -11,8 +11,8 @@ msgstr ""
"Project-Id-Version: cartridges\n" "Project-Id-Version: cartridges\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-10-10 22:22+0200\n" "POT-Creation-Date: 2023-10-10 22:22+0200\n"
"PO-Revision-Date: 2023-10-05 19:10+0000\n" "PO-Revision-Date: 2023-11-03 22:32+0000\n"
"Last-Translator: Jiri Grönroos <jiri.gronroos@iki.fi>\n" "Last-Translator: Kimmo Kujansuu <mrkujansuu@gmail.com>\n"
"Language-Team: Finnish <https://hosted.weblate.org/projects/cartridges/" "Language-Team: Finnish <https://hosted.weblate.org/projects/cartridges/"
"cartridges/fi/>\n" "cartridges/fi/>\n"
"Language: fi\n" "Language: fi\n"
@@ -20,7 +20,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.1-dev\n" "X-Generator: Weblate 5.2-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3 #: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6 #: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -42,13 +42,10 @@ msgstr "Käynnistä kaikki pelisi"
msgid "" msgid ""
"gaming;launcher;steam;lutris;heroic;bottles;itch;flatpak;legendary;retroarch;" "gaming;launcher;steam;lutris;heroic;bottles;itch;flatpak;legendary;retroarch;"
msgstr "" msgstr ""
"gaming;launcher;steam;lutris;heroic;bottles;itch;flatpak;legendary;retroarch;"
"peli;pelaaminen;pullot;"
#: data/hu.kramo.Cartridges.metainfo.xml.in:9 #: data/hu.kramo.Cartridges.metainfo.xml.in:9
#, fuzzy
#| msgid ""
#| "Cartridges is a simple game launcher. It has support for importing your "
#| "games from Steam, Heroic and Bottles with organizational features such as "
#| "hiding and sorting by date added or last played."
msgid "" msgid ""
"Cartridges is a simple game launcher for all of your games. It has support " "Cartridges is a simple game launcher for all of your games. It has support "
"for importing games from Steam, Lutris, Heroic and more with no login " "for importing games from Steam, Lutris, Heroic and more with no login "
@@ -56,9 +53,8 @@ msgid ""
"SteamGridDB." "SteamGridDB."
msgstr "" msgstr ""
"Cartridges on helppo pelikäynnistin. Se tukee pelien tuontia Steamista, " "Cartridges on helppo pelikäynnistin. Se tukee pelien tuontia Steamista, "
"Heroicista ja Bottlesista ja tarjoaa ominaisuuden järjestelyyn, kuten " "Heroicista ja Bottlesista, sekä muistaa ilman kirjautumista. Voit lajitella "
"piilottamisen ja lajittelun lisäyspäivämäärän tai viimeisimmän pelatun pelin " "tai piilottaa pelejä ja ladata kansikuvan SteamGridDB tietokannasta."
"mukaan."
#: data/hu.kramo.Cartridges.metainfo.xml.in:34 data/gtk/window.blp:288 #: data/hu.kramo.Cartridges.metainfo.xml.in:34 data/gtk/window.blp:288
#: cartridges/details_window.py:71 #: cartridges/details_window.py:71
@@ -202,7 +198,7 @@ msgstr "Korkealaatuiset kuvat"
#: data/gtk/preferences.blp:29 #: data/gtk/preferences.blp:29
msgid "Save game covers losslessly at the cost of storage" msgid "Save game covers losslessly at the cost of storage"
msgstr "Tallenna pelien kansikuvat häviöttömästi tallennustilan kustannuksella" msgstr "Tallenna pelin kannet häviöttömästi tallennustilan kustannuksella."
#: data/gtk/preferences.blp:34 #: data/gtk/preferences.blp:34
msgid "Danger Zone" msgid "Danger Zone"
@@ -229,7 +225,7 @@ msgstr "Steam"
#: data/gtk/preferences.blp:191 data/gtk/preferences.blp:208 #: data/gtk/preferences.blp:191 data/gtk/preferences.blp:208
#: data/gtk/preferences.blp:225 data/gtk/preferences.blp:242 #: data/gtk/preferences.blp:225 data/gtk/preferences.blp:242
msgid "Install Location" msgid "Install Location"
msgstr "Asennussijainti" msgstr "Asennuspaikka"
#: data/gtk/preferences.blp:100 cartridges/importer/lutris_source.py:92 #: data/gtk/preferences.blp:100 cartridges/importer/lutris_source.py:92
msgid "Lutris" msgid "Lutris"
@@ -277,7 +273,7 @@ msgstr "itch"
#: data/gtk/preferences.blp:204 cartridges/importer/legendary_source.py:97 #: data/gtk/preferences.blp:204 cartridges/importer/legendary_source.py:97
msgid "Legendary" msgid "Legendary"
msgstr "" msgstr "Legendaarinen"
#: data/gtk/preferences.blp:221 cartridges/importer/retroarch_source.py:142 #: data/gtk/preferences.blp:221 cartridges/importer/retroarch_source.py:142
msgid "RetroArch" msgid "RetroArch"
@@ -289,7 +285,7 @@ msgstr "Flatpak"
#: data/gtk/preferences.blp:254 #: data/gtk/preferences.blp:254
msgid "Import Game Launchers" msgid "Import Game Launchers"
msgstr "Tuo pelikäynnistim" msgstr "Tuo pelin käynnistimet"
#: data/gtk/preferences.blp:259 cartridges/importer/desktop_source.py:215 #: data/gtk/preferences.blp:259 cartridges/importer/desktop_source.py:215
msgid "Desktop Entries" msgid "Desktop Entries"
@@ -313,15 +309,15 @@ msgstr "Käytä SteamGridDB:tä"
#: data/gtk/preferences.blp:282 #: data/gtk/preferences.blp:282
msgid "Download images when adding or importing games" msgid "Download images when adding or importing games"
msgstr "Lataa kuvat pelejä lisätessä tai tuotaessa" msgstr "Lataa kuvia, kun lisäät tai tuot pelejä"
#: data/gtk/preferences.blp:286 #: data/gtk/preferences.blp:286
msgid "Prefer Over Official Images" msgid "Prefer Over Official Images"
msgstr "Suosi virallisten kuvien sijaan" msgstr "Mieluummin kuin virallisia kuvia"
#: data/gtk/preferences.blp:290 #: data/gtk/preferences.blp:290
msgid "Prefer Animated Images" msgid "Prefer Animated Images"
msgstr "Suosi animoituja kuvia" msgstr "Mieluummin animoituja kuvia"
#: data/gtk/preferences.blp:296 #: data/gtk/preferences.blp:296
msgid "Update Covers" msgid "Update Covers"
@@ -453,7 +449,7 @@ msgstr "Lisää"
#: cartridges/details_window.py:93 #: cartridges/details_window.py:93
msgid "Executables" msgid "Executables"
msgstr "Suoritettavat tiedostot" msgstr "Suoritettava"
#. Translate this string as you would translate "file" #. Translate this string as you would translate "file"
#: cartridges/details_window.py:108 #: cartridges/details_window.py:108
@@ -487,11 +483,11 @@ msgid ""
"\n" "\n"
"If the path contains spaces, make sure to wrap it in double quotes!" "If the path contains spaces, make sure to wrap it in double quotes!"
msgstr "" msgstr ""
"Käynnistääksesi suoritettavan ohjelman \"{exe_name}\", käytä komentoa:\n" "Käynnistääksesi suoritettavan ohjelman \"{}\", käytä komentoa:\n"
"\n" "\n"
"<tt>\"{}\"</tt>\n" "<tt>\"{}\"</tt>\n"
"\n" "\n"
"Avataksesi tiedoston \"{}\" oletussovelluksella, käytä komentoa:\n" "Jos haluat avata tiedoston \"{}\" oletussovelluksella, käytä komentoa:\n"
"\n" "\n"
"<tt>{} \"{}\"</tt>\n" "<tt>{} \"{}\"</tt>\n"
"\n" "\n"
@@ -537,8 +533,8 @@ msgstr "Kaikki pelit poistettu"
msgid "" msgid ""
"An API key is required to use SteamGridDB. You can generate one {}here{}." "An API key is required to use SteamGridDB. You can generate one {}here{}."
msgstr "" msgstr ""
"API-avain on pakollinen, jos haluat käyttää SteamGridDB:tä. Voit luoda " "SteamGridDB:n käyttäminen edellyttää API-avainta. Voit luoda sellaisen "
"avaimen {}täällä{}." "{}täältä{}."
#: cartridges/preferences.py:184 #: cartridges/preferences.py:184
msgid "Downloading covers…" msgid "Downloading covers…"
@@ -627,10 +623,8 @@ msgid "Games with no core selected were not imported"
msgstr "Pelejä, joihin ei ole valittu ydintä, ei tuotu" msgstr "Pelejä, joihin ei ole valittu ydintä, ei tuotu"
#: cartridges/store/managers/sgdb_manager.py:46 #: cartridges/store/managers/sgdb_manager.py:46
#, fuzzy
#| msgid "Couldn't Connect to SteamGridDB"
msgid "Couldn't Authenticate SteamGridDB" msgid "Couldn't Authenticate SteamGridDB"
msgstr "Ei voitu yhdistää SteamGridDB:hen" msgstr "Ei voitu kirjautua SteamGridDB:hen"
#: cartridges/store/managers/sgdb_manager.py:47 #: cartridges/store/managers/sgdb_manager.py:47
msgid "Verify your API key in preferences" msgid "Verify your API key in preferences"

View File

@@ -12,8 +12,8 @@ msgstr ""
"Project-Id-Version: cartridges\n" "Project-Id-Version: cartridges\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-10-10 22:22+0200\n" "POT-Creation-Date: 2023-10-10 22:22+0200\n"
"PO-Revision-Date: 2023-09-21 14:55+0000\n" "PO-Revision-Date: 2023-11-05 22:34+0000\n"
"Last-Translator: Geoffrey Coulaud <geoffrey.coulaud+github@gmail.com>\n" "Last-Translator: John Donne <akheron@zaclys.net>\n"
"Language-Team: French <https://hosted.weblate.org/projects/cartridges/" "Language-Team: French <https://hosted.weblate.org/projects/cartridges/"
"cartridges/fr/>\n" "cartridges/fr/>\n"
"Language: fr\n" "Language: fr\n"
@@ -21,7 +21,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n" "Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 5.1-dev\n" "X-Generator: Weblate 5.2-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3 #: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6 #: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -164,14 +164,10 @@ msgid "Import"
msgstr "Importer" msgstr "Importer"
#: data/gtk/help-overlay.blp:63 #: data/gtk/help-overlay.blp:63
#, fuzzy
#| msgid "Show hidden games"
msgid "Show Hidden Games" msgid "Show Hidden Games"
msgstr "Afficher les jeux masqués" msgstr "Afficher les jeux masqués"
#: data/gtk/help-overlay.blp:68 #: data/gtk/help-overlay.blp:68
#, fuzzy
#| msgid "Remove game"
msgid "Remove Game" msgid "Remove Game"
msgstr "Supprimer le jeu" msgstr "Supprimer le jeu"
@@ -327,18 +323,16 @@ msgid "Prefer Animated Images"
msgstr "Préférer les images animées" msgstr "Préférer les images animées"
#: data/gtk/preferences.blp:296 #: data/gtk/preferences.blp:296
#, fuzzy
#| msgid "Delete Cover"
msgid "Update Covers" msgid "Update Covers"
msgstr "Supprimer la couverture" msgstr "Mettre à jour les pochettes des jeux"
#: data/gtk/preferences.blp:297 #: data/gtk/preferences.blp:297
msgid "Fetch covers for games already in your library" msgid "Fetch covers for games already in your library"
msgstr "" msgstr "Récupérer les pochettes des jeux déjà présents dans votre bibliothèque"
#: data/gtk/preferences.blp:301 #: data/gtk/preferences.blp:301
msgid "Update" msgid "Update"
msgstr "" msgstr "Mise à jour"
#: data/gtk/window.blp:6 data/gtk/window.blp:14 #: data/gtk/window.blp:6 data/gtk/window.blp:14
msgid "No Games Found" msgid "No Games Found"
@@ -546,14 +540,12 @@ msgstr ""
"une {}ici{}." "une {}ici{}."
#: cartridges/preferences.py:184 #: cartridges/preferences.py:184
#, fuzzy
#| msgid "Importing Covers…"
msgid "Downloading covers…" msgid "Downloading covers…"
msgstr "Importation des pochettes des jeux…" msgstr "Téléchargement des pochettes des jeux…"
#: cartridges/preferences.py:203 #: cartridges/preferences.py:203
msgid "Covers updated" msgid "Covers updated"
msgstr "" msgstr "Couvertures des jeux mises à jour"
#: cartridges/preferences.py:335 #: cartridges/preferences.py:335
msgid "Installation Not Found" msgid "Installation Not Found"

View File

@@ -1 +1 @@
i18n.gettext('cartridges', preset: 'glib') i18n.gettext('cartridges', preset: 'glib', args: ['--copyright-holder=kramo', '--package-name=Cartridges'])

View File

@@ -9,7 +9,7 @@ msgstr ""
"Project-Id-Version: cartridges\n" "Project-Id-Version: cartridges\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-10-10 22:22+0200\n" "POT-Creation-Date: 2023-10-10 22:22+0200\n"
"PO-Revision-Date: 2023-09-26 15:28+0000\n" "PO-Revision-Date: 2023-10-14 05:01+0000\n"
"Last-Translator: Сергей <asvmail.as@gmail.com>\n" "Last-Translator: Сергей <asvmail.as@gmail.com>\n"
"Language-Team: Russian <https://hosted.weblate.org/projects/cartridges/" "Language-Team: Russian <https://hosted.weblate.org/projects/cartridges/"
"cartridges/ru/>\n" "cartridges/ru/>\n"
@@ -35,7 +35,7 @@ msgstr "Средство запуска игр"
#: data/hu.kramo.Cartridges.desktop.in:5 #: data/hu.kramo.Cartridges.desktop.in:5
#: data/hu.kramo.Cartridges.metainfo.xml.in:7 #: data/hu.kramo.Cartridges.metainfo.xml.in:7
msgid "Launch all your games" msgid "Launch all your games"
msgstr "Запустите все свои игры" msgstr "Запускайте все свои игры"
#: data/hu.kramo.Cartridges.desktop.in:11 #: data/hu.kramo.Cartridges.desktop.in:11
msgid "" msgid ""

View File

@@ -4,13 +4,14 @@
# micke <mikanybe@gmail.com>, 2023. # micke <mikanybe@gmail.com>, 2023.
# micke <micke@users.noreply.hosted.weblate.org>, 2023. # micke <micke@users.noreply.hosted.weblate.org>, 2023.
# Luna Jernberg <droidbittin@gmail.com>, 2023. # Luna Jernberg <droidbittin@gmail.com>, 2023.
# bittin1ddc447d824349b2 <bittin@reimu.nl>, 2023.
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: Cartridges\n" "Project-Id-Version: Cartridges\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-10-10 22:22+0200\n" "POT-Creation-Date: 2023-10-10 22:22+0200\n"
"PO-Revision-Date: 2023-09-06 03:24+0000\n" "PO-Revision-Date: 2023-10-20 04:03+0000\n"
"Last-Translator: Luna Jernberg <droidbittin@gmail.com>\n" "Last-Translator: bittin1ddc447d824349b2 <bittin@reimu.nl>\n"
"Language-Team: Swedish <https://hosted.weblate.org/projects/cartridges/" "Language-Team: Swedish <https://hosted.weblate.org/projects/cartridges/"
"cartridges/sv/>\n" "cartridges/sv/>\n"
"Language: sv\n" "Language: sv\n"
@@ -18,7 +19,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.0.1-dev\n" "X-Generator: Weblate 5.1\n"
#: data/hu.kramo.Cartridges.desktop.in:3 #: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6 #: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -142,7 +143,7 @@ msgstr "Avsluta"
#: data/gtk/help-overlay.blp:39 data/gtk/window.blp:88 data/gtk/window.blp:164 #: data/gtk/help-overlay.blp:39 data/gtk/window.blp:88 data/gtk/window.blp:164
msgid "Toggle Sidebar" msgid "Toggle Sidebar"
msgstr "" msgstr "Växla sidofält"
#: data/gtk/help-overlay.blp:44 data/gtk/window.blp:177 data/gtk/window.blp:236 #: data/gtk/help-overlay.blp:44 data/gtk/window.blp:177 data/gtk/window.blp:236
msgid "Main Menu" msgid "Main Menu"
@@ -162,14 +163,10 @@ msgid "Import"
msgstr "Importera" msgstr "Importera"
#: data/gtk/help-overlay.blp:63 #: data/gtk/help-overlay.blp:63
#, fuzzy
#| msgid "Show hidden games"
msgid "Show Hidden Games" msgid "Show Hidden Games"
msgstr "Visa dolda spel" msgstr "Visa dolda spel"
#: data/gtk/help-overlay.blp:68 #: data/gtk/help-overlay.blp:68
#, fuzzy
#| msgid "Remove game"
msgid "Remove Game" msgid "Remove Game"
msgstr "Ta bort spel" msgstr "Ta bort spel"
@@ -323,18 +320,16 @@ msgid "Prefer Animated Images"
msgstr "Föredra animerade bilder" msgstr "Föredra animerade bilder"
#: data/gtk/preferences.blp:296 #: data/gtk/preferences.blp:296
#, fuzzy
#| msgid "Delete Cover"
msgid "Update Covers" msgid "Update Covers"
msgstr "Ta bort omslag" msgstr "Uppdatera omslag"
#: data/gtk/preferences.blp:297 #: data/gtk/preferences.blp:297
msgid "Fetch covers for games already in your library" msgid "Fetch covers for games already in your library"
msgstr "" msgstr "Hämta omslag till spel som redan finns i ditt bibliotek"
#: data/gtk/preferences.blp:301 #: data/gtk/preferences.blp:301
msgid "Update" msgid "Update"
msgstr "" msgstr "Uppdatera"
#: data/gtk/window.blp:6 data/gtk/window.blp:14 #: data/gtk/window.blp:6 data/gtk/window.blp:14
msgid "No Games Found" msgid "No Games Found"
@@ -361,22 +356,16 @@ msgid "Games you hide will appear here."
msgstr "Spel som du döljer kommer visas här." msgstr "Spel som du döljer kommer visas här."
#: data/gtk/window.blp:75 data/gtk/window.blp:106 cartridges/main.py:207 #: data/gtk/window.blp:75 data/gtk/window.blp:106 cartridges/main.py:207
#, fuzzy
#| msgid "Remove All Games"
msgid "All Games" msgid "All Games"
msgstr "Ta bort alla spel" msgstr "Alla spel"
#: data/gtk/window.blp:126 cartridges/main.py:209 #: data/gtk/window.blp:126 cartridges/main.py:209
#, fuzzy
#| msgid "Added: {}"
msgid "Added" msgid "Added"
msgstr "Tillagt: {}" msgstr "Tillagt"
#: data/gtk/window.blp:141 #: data/gtk/window.blp:141
#, fuzzy
#| msgid "Import"
msgid "Imported" msgid "Imported"
msgstr "Importera" msgstr "Importerad"
#: data/gtk/window.blp:229 #: data/gtk/window.blp:229
msgid "Hidden Games" msgid "Hidden Games"
@@ -547,14 +536,12 @@ msgstr ""
"En API-nyckel krävs för att använda SteamGridDB. Du kan generera en {}här{}." "En API-nyckel krävs för att använda SteamGridDB. Du kan generera en {}här{}."
#: cartridges/preferences.py:184 #: cartridges/preferences.py:184
#, fuzzy
#| msgid "Importing Covers…"
msgid "Downloading covers…" msgid "Downloading covers…"
msgstr "Importerar omslagsbilder…" msgstr "Laddar ner omslagsbilder…"
#: cartridges/preferences.py:203 #: cartridges/preferences.py:203
msgid "Covers updated" msgid "Covers updated"
msgstr "" msgstr "Omslagsbilder uppdaterade"
#: cartridges/preferences.py:335 #: cartridges/preferences.py:335
msgid "Installation Not Found" msgid "Installation Not Found"

View File

@@ -9,7 +9,7 @@ msgstr ""
"Project-Id-Version: Cartridges\n" "Project-Id-Version: Cartridges\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-10-10 22:22+0200\n" "POT-Creation-Date: 2023-10-10 22:22+0200\n"
"PO-Revision-Date: 2023-09-30 08:01+0000\n" "PO-Revision-Date: 2023-11-12 11:42+0000\n"
"Last-Translator: \"K.B.Dharun Krishna\" <kbdharunkrishna@gmail.com>\n" "Last-Translator: \"K.B.Dharun Krishna\" <kbdharunkrishna@gmail.com>\n"
"Language-Team: Tamil <https://hosted.weblate.org/projects/cartridges/" "Language-Team: Tamil <https://hosted.weblate.org/projects/cartridges/"
"cartridges/ta/>\n" "cartridges/ta/>\n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.1-dev\n" "X-Generator: Weblate 5.2-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3 #: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6 #: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -40,8 +40,8 @@ msgstr "உங்கள் எல்லா விளையாட்டுகள
msgid "" msgid ""
"gaming;launcher;steam;lutris;heroic;bottles;itch;flatpak;legendary;retroarch;" "gaming;launcher;steam;lutris;heroic;bottles;itch;flatpak;legendary;retroarch;"
msgstr "" msgstr ""
"விளையாட்டு; துவக்கி; steam;lutris;heroic;பாட்டில்கள்;itch;flatpak;legendary;" "விளையாட்டு; துவக்கி; "
"Retroarch;" "steam;lutris;heroic;பாட்டில்கள்;itch;flatpak;legendary;retroarch;"
#: data/hu.kramo.Cartridges.metainfo.xml.in:9 #: data/hu.kramo.Cartridges.metainfo.xml.in:9
msgid "" msgid ""

View File

@@ -7,7 +7,7 @@ msgstr ""
"Project-Id-Version: Cartridges\n" "Project-Id-Version: Cartridges\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-10-10 22:22+0200\n" "POT-Creation-Date: 2023-10-10 22:22+0200\n"
"PO-Revision-Date: 2023-10-03 16:11+0000\n" "PO-Revision-Date: 2023-11-03 16:11+0000\n"
"Last-Translator: Sabri Ünal <libreajans@gmail.com>\n" "Last-Translator: Sabri Ünal <libreajans@gmail.com>\n"
"Language-Team: Turkish <https://hosted.weblate.org/projects/cartridges/" "Language-Team: Turkish <https://hosted.weblate.org/projects/cartridges/"
"cartridges/tr/>\n" "cartridges/tr/>\n"
@@ -16,7 +16,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n" "Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.1-dev\n" "X-Generator: Weblate 5.2-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3 #: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6 #: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -175,7 +175,7 @@ msgstr "Davranış"
#: data/gtk/preferences.blp:15 #: data/gtk/preferences.blp:15
msgid "Exit After Launching Games" msgid "Exit After Launching Games"
msgstr "Oyunu Başlatıldıktan Sonra Çık" msgstr "Oyunları Başlattıktan Sonra Çık"
#: data/gtk/preferences.blp:19 #: data/gtk/preferences.blp:19
msgid "Cover Image Launches Game" msgid "Cover Image Launches Game"

View File

@@ -11,7 +11,7 @@ msgstr ""
"Project-Id-Version: cartridges\n" "Project-Id-Version: cartridges\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-10-10 22:22+0200\n" "POT-Creation-Date: 2023-10-10 22:22+0200\n"
"PO-Revision-Date: 2023-10-05 19:10+0000\n" "PO-Revision-Date: 2023-10-24 17:02+0000\n"
"Last-Translator: Andrii Murha <flat.assembly@gmail.com>\n" "Last-Translator: Andrii Murha <flat.assembly@gmail.com>\n"
"Language-Team: Ukrainian <https://hosted.weblate.org/projects/cartridges/" "Language-Team: Ukrainian <https://hosted.weblate.org/projects/cartridges/"
"cartridges/uk/>\n" "cartridges/uk/>\n"
@@ -21,7 +21,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && " "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" "n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 5.1-dev\n" "X-Generator: Weblate 5.1.1-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3 #: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6 #: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -145,7 +145,7 @@ msgstr "Вийти"
#: data/gtk/help-overlay.blp:39 data/gtk/window.blp:88 data/gtk/window.blp:164 #: data/gtk/help-overlay.blp:39 data/gtk/window.blp:88 data/gtk/window.blp:164
msgid "Toggle Sidebar" msgid "Toggle Sidebar"
msgstr "Перкключити бічну панель" msgstr "Переключити бічну панель"
#: data/gtk/help-overlay.blp:44 data/gtk/window.blp:177 data/gtk/window.blp:236 #: data/gtk/help-overlay.blp:44 data/gtk/window.blp:177 data/gtk/window.blp:236
msgid "Main Menu" msgid "Main Menu"

611
po/zh_Hans.po Normal file
View File

@@ -0,0 +1,611 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR kramo
# This file is distributed under the same license as the Cartridges package.
# 刘韬 <lyuutau@outlook.com>, 2023.
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2023.
msgid ""
msgstr ""
"Project-Id-Version: Cartridges\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-10-10 22:22+0200\n"
"PO-Revision-Date: 2023-10-18 04:12+0000\n"
"Last-Translator: 刘韬 <lyuutau@outlook.com>\n"
"Language-Team: Chinese (Simplified) <https://hosted.weblate.org/projects/"
"cartridges/cartridges/zh_Hans/>\n"
"Language: zh_Hans\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 5.1\n"
#: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6
#: data/hu.kramo.Cartridges.metainfo.xml.in:30 data/gtk/window.blp:47
#: data/gtk/window.blp:80 cartridges/main.py:185
msgid "Cartridges"
msgstr "Cartridges"
#: data/hu.kramo.Cartridges.desktop.in:4
msgid "Game Launcher"
msgstr "游戏启动器"
#: data/hu.kramo.Cartridges.desktop.in:5
#: data/hu.kramo.Cartridges.metainfo.xml.in:7
msgid "Launch all your games"
msgstr ""
#: data/hu.kramo.Cartridges.desktop.in:11
msgid ""
"gaming;launcher;steam;lutris;heroic;bottles;itch;flatpak;legendary;retroarch;"
msgstr ""
#: data/hu.kramo.Cartridges.metainfo.xml.in:9
msgid ""
"Cartridges is a simple game launcher for all of your games. It has support "
"for importing games from Steam, Lutris, Heroic and more with no login "
"necessary. You can sort and hide games or download cover art from "
"SteamGridDB."
msgstr ""
#: data/hu.kramo.Cartridges.metainfo.xml.in:34 data/gtk/window.blp:288
#: cartridges/details_window.py:71
msgid "Game Details"
msgstr "游戏详情"
#: data/hu.kramo.Cartridges.metainfo.xml.in:38
msgid "Edit Game Details"
msgstr "编辑游戏详情"
#: data/hu.kramo.Cartridges.metainfo.xml.in:42 data/gtk/help-overlay.blp:19
#: data/gtk/window.blp:515 cartridges/details_window.py:271
#: cartridges/importer/importer.py:319 cartridges/importer/importer.py:370
msgid "Preferences"
msgstr ""
#: data/gtk/details-window.blp:25
msgid "Cancel"
msgstr "取消"
#: data/gtk/details-window.blp:55
msgid "New Cover"
msgstr "新封面"
#: data/gtk/details-window.blp:73
msgid "Delete Cover"
msgstr "删除封面"
#: data/gtk/details-window.blp:100 data/gtk/game.blp:81
msgid "Title"
msgstr "标题"
#: data/gtk/details-window.blp:103
msgid "Developer (optional)"
msgstr "开发者模式(可选)"
#: data/gtk/details-window.blp:108
msgid "Executable"
msgstr ""
#: data/gtk/details-window.blp:114
msgid "Select File"
msgstr "选择文件"
#: data/gtk/details-window.blp:125
msgid "More Info"
msgstr "更多信息"
#: data/gtk/game.blp:103 data/gtk/game.blp:122 data/gtk/window.blp:415
msgid "Edit"
msgstr "编辑"
#: data/gtk/game.blp:108 cartridges/window.py:350
msgid "Hide"
msgstr "隐藏"
#: data/gtk/game.blp:113 data/gtk/game.blp:132 data/gtk/preferences.blp:40
#: data/gtk/window.blp:435
msgid "Remove"
msgstr "移除"
#: data/gtk/game.blp:127 cartridges/window.py:352
msgid "Unhide"
msgstr "取消隐藏"
#: data/gtk/help-overlay.blp:11 data/gtk/preferences.blp:8
msgid "General"
msgstr ""
#: data/gtk/help-overlay.blp:14 data/gtk/window.blp:184 data/gtk/window.blp:243
#: data/gtk/window.blp:446
msgid "Search"
msgstr "搜索"
#: data/gtk/help-overlay.blp:24 data/gtk/window.blp:520
msgid "Keyboard Shortcuts"
msgstr "键盘快捷键"
#: data/gtk/help-overlay.blp:29 cartridges/game.py:103
#: cartridges/preferences.py:125 cartridges/importer/importer.py:394
msgid "Undo"
msgstr "撤销"
#: data/gtk/help-overlay.blp:34
msgid "Quit"
msgstr "退出"
#: data/gtk/help-overlay.blp:39 data/gtk/window.blp:88 data/gtk/window.blp:164
msgid "Toggle Sidebar"
msgstr ""
#: data/gtk/help-overlay.blp:44 data/gtk/window.blp:177 data/gtk/window.blp:236
msgid "Main Menu"
msgstr "主菜单"
#: data/gtk/help-overlay.blp:50
msgid "Games"
msgstr "游戏"
#: data/gtk/help-overlay.blp:53 data/gtk/window.blp:170 data/gtk/window.blp:534
msgid "Add Game"
msgstr "添加游戏"
#: data/gtk/help-overlay.blp:58 data/gtk/preferences.blp:68
#: data/gtk/window.blp:27 data/gtk/window.blp:541
msgid "Import"
msgstr "导入"
#: data/gtk/help-overlay.blp:63
msgid "Show Hidden Games"
msgstr "显示隐藏的游戏"
#: data/gtk/help-overlay.blp:68
msgid "Remove Game"
msgstr "移除游戏"
#: data/gtk/preferences.blp:12 data/gtk/preferences.blp:72
#: data/gtk/preferences.blp:278
msgid "Behavior"
msgstr ""
#: data/gtk/preferences.blp:15
msgid "Exit After Launching Games"
msgstr "启动游戏后退出"
#: data/gtk/preferences.blp:19
msgid "Cover Image Launches Game"
msgstr ""
#: data/gtk/preferences.blp:20
msgid "Swaps the behavior of the cover image and the play button"
msgstr ""
#: data/gtk/preferences.blp:25 cartridges/details_window.py:85
msgid "Images"
msgstr ""
#: data/gtk/preferences.blp:28
msgid "High Quality Images"
msgstr ""
#: data/gtk/preferences.blp:29
msgid "Save game covers losslessly at the cost of storage"
msgstr ""
#: data/gtk/preferences.blp:34
msgid "Danger Zone"
msgstr ""
#: data/gtk/preferences.blp:37
msgid "Remove All Games"
msgstr ""
#: data/gtk/preferences.blp:75
msgid "Remove Uninstalled Games"
msgstr ""
#: data/gtk/preferences.blp:80
msgid "Sources"
msgstr ""
#: data/gtk/preferences.blp:83 cartridges/importer/steam_source.py:114
msgid "Steam"
msgstr "Steam"
#: data/gtk/preferences.blp:87 data/gtk/preferences.blp:104
#: data/gtk/preferences.blp:141 data/gtk/preferences.blp:174
#: data/gtk/preferences.blp:191 data/gtk/preferences.blp:208
#: data/gtk/preferences.blp:225 data/gtk/preferences.blp:242
msgid "Install Location"
msgstr ""
#: data/gtk/preferences.blp:100 cartridges/importer/lutris_source.py:92
msgid "Lutris"
msgstr "Lutris"
#: data/gtk/preferences.blp:116
msgid "Cache Location"
msgstr ""
#: data/gtk/preferences.blp:128
msgid "Import Steam Games"
msgstr "导入 Steam 游戏"
#: data/gtk/preferences.blp:132
msgid "Import Flatpak Games"
msgstr "导入 Flatpak 游戏"
#: data/gtk/preferences.blp:137 cartridges/importer/heroic_source.py:355
msgid "Heroic"
msgstr "Heroic"
#: data/gtk/preferences.blp:153
msgid "Import Epic Games"
msgstr "导入 Epic 游戏"
#: data/gtk/preferences.blp:157
msgid "Import GOG Games"
msgstr "导入 GOG 游戏"
#: data/gtk/preferences.blp:161
msgid "Import Amazon Games"
msgstr ""
#: data/gtk/preferences.blp:165
msgid "Import Sideloaded Games"
msgstr ""
#: data/gtk/preferences.blp:170 cartridges/importer/bottles_source.py:86
msgid "Bottles"
msgstr ""
#: data/gtk/preferences.blp:187 cartridges/importer/itch_source.py:81
msgid "itch"
msgstr ""
#: data/gtk/preferences.blp:204 cartridges/importer/legendary_source.py:97
msgid "Legendary"
msgstr ""
#: data/gtk/preferences.blp:221 cartridges/importer/retroarch_source.py:142
msgid "RetroArch"
msgstr ""
#: data/gtk/preferences.blp:238 cartridges/importer/flatpak_source.py:118
msgid "Flatpak"
msgstr ""
#: data/gtk/preferences.blp:254
msgid "Import Game Launchers"
msgstr ""
#: data/gtk/preferences.blp:259 cartridges/importer/desktop_source.py:215
msgid "Desktop Entries"
msgstr ""
#: data/gtk/preferences.blp:266
msgid "SteamGridDB"
msgstr ""
#: data/gtk/preferences.blp:270
msgid "Authentication"
msgstr ""
#: data/gtk/preferences.blp:273
msgid "API Key"
msgstr ""
#: data/gtk/preferences.blp:281
msgid "Use SteamGridDB"
msgstr ""
#: data/gtk/preferences.blp:282
msgid "Download images when adding or importing games"
msgstr ""
#: data/gtk/preferences.blp:286
msgid "Prefer Over Official Images"
msgstr ""
#: data/gtk/preferences.blp:290
msgid "Prefer Animated Images"
msgstr ""
#: data/gtk/preferences.blp:296
msgid "Update Covers"
msgstr ""
#: data/gtk/preferences.blp:297
msgid "Fetch covers for games already in your library"
msgstr ""
#: data/gtk/preferences.blp:301
msgid "Update"
msgstr ""
#: data/gtk/window.blp:6 data/gtk/window.blp:14
msgid "No Games Found"
msgstr ""
#: data/gtk/window.blp:7 data/gtk/window.blp:15
msgid "Try a different search."
msgstr ""
#: data/gtk/window.blp:21
msgid "No Games"
msgstr ""
#: data/gtk/window.blp:22
msgid "Use the + button to add games."
msgstr ""
#: data/gtk/window.blp:40
msgid "No Hidden Games"
msgstr ""
#: data/gtk/window.blp:41
msgid "Games you hide will appear here."
msgstr ""
#: data/gtk/window.blp:75 data/gtk/window.blp:106 cartridges/main.py:207
msgid "All Games"
msgstr ""
#: data/gtk/window.blp:126 cartridges/main.py:209
msgid "Added"
msgstr ""
#: data/gtk/window.blp:141
msgid "Imported"
msgstr ""
#: data/gtk/window.blp:229
msgid "Hidden Games"
msgstr ""
#: data/gtk/window.blp:339
msgid "Game Title"
msgstr ""
#: data/gtk/window.blp:396
msgid "Play"
msgstr ""
#: data/gtk/window.blp:473
msgid "Sort"
msgstr ""
#: data/gtk/window.blp:476
msgid "A-Z"
msgstr ""
#: data/gtk/window.blp:482
msgid "Z-A"
msgstr ""
#: data/gtk/window.blp:488
msgid "Newest"
msgstr ""
#: data/gtk/window.blp:494
msgid "Oldest"
msgstr ""
#: data/gtk/window.blp:500
msgid "Last Played"
msgstr ""
#: data/gtk/window.blp:507
msgid "Show Hidden"
msgstr ""
#: data/gtk/window.blp:525
msgid "About Cartridges"
msgstr ""
#. The variable is the title of the game
#: cartridges/main.py:186 cartridges/game.py:125
msgid "{} launched"
msgstr ""
#. Translators: Replace this with your name for it to show up in the about window
#: cartridges/main.py:249
msgid "translator_credits"
msgstr ""
#. The variable is the date when the game was added
#: cartridges/window.py:373
msgid "Added: {}"
msgstr ""
#: cartridges/window.py:376
msgid "Never"
msgstr ""
#. The variable is the date when the game was last played
#: cartridges/window.py:380
msgid "Last played: {}"
msgstr ""
#: cartridges/details_window.py:76
msgid "Apply"
msgstr ""
#: cartridges/details_window.py:82
msgid "Add New Game"
msgstr ""
#: cartridges/details_window.py:83
msgid "Add"
msgstr ""
#: cartridges/details_window.py:93
msgid "Executables"
msgstr ""
#. Translate this string as you would translate "file"
#: cartridges/details_window.py:108
msgid "file.txt"
msgstr ""
#. As in software
#: cartridges/details_window.py:110
msgid "program"
msgstr ""
#. Translate this string as you would translate "path to {}"
#: cartridges/details_window.py:115 cartridges/details_window.py:117
msgid "C:\\path\\to\\{}"
msgstr ""
#. Translate this string as you would translate "path to {}"
#: cartridges/details_window.py:121 cartridges/details_window.py:123
msgid "/path/to/{}"
msgstr ""
#: cartridges/details_window.py:128
msgid ""
"To launch the executable \"{}\", use the command:\n"
"\n"
"<tt>\"{}\"</tt>\n"
"\n"
"To open the file \"{}\" with the default application, use:\n"
"\n"
"<tt>{} \"{}\"</tt>\n"
"\n"
"If the path contains spaces, make sure to wrap it in double quotes!"
msgstr ""
#: cartridges/details_window.py:171 cartridges/details_window.py:177
msgid "Couldn't Add Game"
msgstr ""
#: cartridges/details_window.py:171 cartridges/details_window.py:213
msgid "Game title cannot be empty."
msgstr ""
#: cartridges/details_window.py:177 cartridges/details_window.py:221
msgid "Executable cannot be empty."
msgstr ""
#: cartridges/details_window.py:212 cartridges/details_window.py:220
msgid "Couldn't Apply Preferences"
msgstr ""
#. The variable is the title of the game
#: cartridges/game.py:139
msgid "{} hidden"
msgstr ""
#: cartridges/game.py:139
msgid "{} unhidden"
msgstr ""
#. The variable is the title of the game
#. The variable is the number of games removed
#: cartridges/game.py:153 cartridges/importer/importer.py:391
msgid "{} removed"
msgstr ""
#: cartridges/preferences.py:124
msgid "All games removed"
msgstr ""
#: cartridges/preferences.py:172
msgid ""
"An API key is required to use SteamGridDB. You can generate one {}here{}."
msgstr ""
#: cartridges/preferences.py:184
msgid "Downloading covers…"
msgstr ""
#: cartridges/preferences.py:203
msgid "Covers updated"
msgstr ""
#: cartridges/preferences.py:335
msgid "Installation Not Found"
msgstr ""
#: cartridges/preferences.py:336
msgid "Select a valid directory."
msgstr ""
#: cartridges/preferences.py:372 cartridges/importer/importer.py:317
msgid "Warning"
msgstr ""
#: cartridges/preferences.py:406
msgid "Invalid Directory"
msgstr ""
#: cartridges/preferences.py:412
msgid "Set Location"
msgstr ""
#: cartridges/utils/create_dialog.py:33 cartridges/importer/importer.py:318
msgid "Dismiss"
msgstr ""
#: cartridges/importer/importer.py:145
msgid "Importing Games…"
msgstr ""
#: cartridges/importer/importer.py:338
msgid "The following errors occured during import:"
msgstr ""
#: cartridges/importer/importer.py:367
msgid "No new games found"
msgstr ""
#: cartridges/importer/importer.py:379
msgid "1 game imported"
msgstr ""
#. The variable is the number of games
#: cartridges/importer/importer.py:383
msgid "{} games imported"
msgstr ""
#. A single game removed
#: cartridges/importer/importer.py:387
msgid "1 removed"
msgstr ""
#. The variable is the name of the source
#: cartridges/importer/location.py:33
msgid "Select the {} cache directory."
msgstr ""
#. The variable is the name of the source
#: cartridges/importer/location.py:35
msgid "Select the {} configuration directory."
msgstr ""
#. The variable is the name of the source
#: cartridges/importer/location.py:37
msgid "Select the {} data directory."
msgstr ""
#: cartridges/importer/retroarch_source.py:129
msgid "No RetroArch Core Selected"
msgstr ""
#. The variable is a newline separated list of playlists
#: cartridges/importer/retroarch_source.py:131
msgid "The following playlists have no default core:"
msgstr ""
#: cartridges/importer/retroarch_source.py:133
msgid "Games with no core selected were not imported"
msgstr ""
#: cartridges/store/managers/sgdb_manager.py:46
msgid "Couldn't Authenticate SteamGridDB"
msgstr ""
#: cartridges/store/managers/sgdb_manager.py:47
msgid "Verify your API key in preferences"
msgstr ""

View File

@@ -165,7 +165,11 @@ class SearchCartridgesService(Server, Gio.Application):
continue continue
try: try:
if any({data["hidden"], data["blacklisted"], data["removed"]}): # Use .get for compatibility with pre-2.0 games
if any(
{data.get("hidden"), data.get("blacklisted"), data.get("removed")}
):
print(f"Skipped {game_file.name}")
continue continue
self.games[data["game_id"]] = (data["name"], data["developer"]) self.games[data["game_id"]] = (data["name"], data["developer"])
@@ -272,7 +276,6 @@ class SearchCartridgesService(Server, Gio.Application):
search = " ".join(terms).lower() search = " ".join(terms).lower()
try: try:
for game_id, data in self.games.items(): for game_id, data in self.games.items():
print(game_id, data)
if search in data[0].lower(): if search in data[0].lower():
game_ids.append(game_id) game_ids.append(game_id)
continue continue