Compare commits

...

39 Commits

Author SHA1 Message Date
kramo
afd1972a76 v2.8.1 2024-03-23 20:53:26 +01:00
kramo
8a7875b843 Update copyrights 2024-03-23 20:45:23 +01:00
kramo
aec8a4efa7 Fix #238 2024-03-23 20:28:36 +01:00
kramo
2b93a1feeb Fix #239 2024-03-23 20:10:37 +01:00
kramo
5306b7c81c Update copyright dates 2024-03-20 15:15:36 +01:00
kramo
c5675efa48 v2.8 2024-03-20 15:05:49 +01:00
kramo
83399c7882 Remove incorrect shortcut from hidden search entry 2024-03-20 15:05:07 +01:00
kramo
04900c7acf Temporarily disable Windows CI 2024-03-20 14:58:32 +01:00
kramo
3ae6b40773 Merge pull request #228 from kra-mo/libadwaita-1.5
Port to Libadwaita 1.5 widgets
2024-03-20 14:48:09 +01:00
kramo
4a5ebb3221 Merge branch 'main' into libadwaita-1.5 2024-03-20 14:47:29 +01:00
kramo
778caead01 Revert "Futile effort to try and fix CI"
This reverts commit 2b7f520f2a.
2024-03-16 11:16:42 +01:00
kramo
2b7f520f2a Futile effort to try and fix CI 2024-03-16 11:11:07 +01:00
kramo
c80f5271da Update CI to Flathub 46 runtime 2024-03-16 11:06:59 +01:00
kramo
f7cf7c4a3b Merge pull request #236 from yakushabb/yakushabb-patch-1
Update developer ID
2024-03-16 11:04:02 +01:00
Sabri Ünal
c4aa903752 Update developer ID
Appstream decided to use reverse DNS for developer IDds.

More information: ximion/appstream#575
2024-03-11 17:22:29 +03:00
Weblate (bot)
4559516b5a Translations update from Hosted Weblate (#235)
* Translated using Weblate (German)

Currently translated at 100.0% (141 of 141 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Konstantin Tutsch <mail@konstantintutsch.com>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/de/
Translation: Cartridges/Cartridges

* Translated using Weblate (Italian)

Currently translated at 99.2% (140 of 141 strings)

Co-authored-by: Andrea Costola <lamaildiandreac@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/it/
Translation: Cartridges/Cartridges

* Translated using Weblate (Spanish)

Currently translated at 100.0% (141 of 141 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Óscar Fernández Díaz <oscfdezdz@users.noreply.hosted.weblate.org>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/es/
Translation: Cartridges/Cartridges

* Translated using Weblate (Korean)

Currently translated at 100.0% (141 of 141 strings)

Co-authored-by: Seong-ho Cho <darkcircle.0426@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/ko/
Translation: Cartridges/Cartridges

---------

Co-authored-by: Konstantin Tutsch <mail@konstantintutsch.com>
Co-authored-by: Andrea Costola <lamaildiandreac@gmail.com>
Co-authored-by: Óscar Fernández Díaz <oscfdezdz@users.noreply.hosted.weblate.org>
Co-authored-by: Seong-ho Cho <darkcircle.0426@gmail.com>
2024-03-06 12:33:32 +01:00
kramo
d4dbf9e589 v2.7.4 2024-03-06 12:32:13 +01:00
kramo
1f7c9a8b0b Add branding colors to metainfo 2024-02-27 22:29:41 +01:00
kramo
725267c7b9 Update GNOME CoC URL 2024-02-25 11:18:46 +01:00
kramo
78d6416285 I hate automation I hate the cloud I hate CI I h-- 2024-02-17 15:12:26 +01:00
kramo
c86f14c4f5 Revert addation of appstream package 2024-02-17 15:03:53 +01:00
kramo
97e8f93744 Properly specify MSYS2 package type 2024-02-17 14:47:39 +01:00
kramo
6d47629bd0 Add mingw-w64-appstream as a dependency for Window builds 2024-02-17 14:46:48 +01:00
kramo
ccd97c73ea v2.7.3 2024-02-17 14:31:13 +01:00
Weblate (bot)
8ec776a04c Translations update from Hosted Weblate (#231)
* Translated using Weblate (German)

Currently translated at 100.0% (141 of 141 strings)

Co-authored-by: Konstantin Tutsch <mail@konstantintutsch.com>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/de/
Translation: Cartridges/Cartridges

* Translated using Weblate (Hungarian)

Currently translated at 100.0% (141 of 141 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: kramo <contact@kramo.hu>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/hu/
Translation: Cartridges/Cartridges

* Translated using Weblate (Hindi)

Currently translated at 100.0% (141 of 141 strings)

Translated using Weblate (Hindi)

Currently translated at 100.0% (141 of 141 strings)

Added translation using Weblate (Hindi)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Nitin Khalia <weblate.scrambled777@simplelogin.com>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/hi/
Translation: Cartridges/Cartridges

* Translated using Weblate (Dutch)

Currently translated at 100.0% (141 of 141 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Philip Goto <philip.goto@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/nl/
Translation: Cartridges/Cartridges

* Translated using Weblate (Chinese (Simplified))

Currently translated at 100.0% (141 of 141 strings)

Co-authored-by: Float <float.hu+@gmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
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: Konstantin Tutsch <mail@konstantintutsch.com>
Co-authored-by: kramo <contact@kramo.hu>
Co-authored-by: Nitin Khalia <weblate.scrambled777@simplelogin.com>
Co-authored-by: Philip Goto <philip.goto@gmail.com>
Co-authored-by: Float <float.hu+@gmail.com>
2024-02-17 14:28:24 +01:00
kramo
8efce829ca Update Lutris cover art location - Fixes #233 2024-02-17 14:26:01 +01:00
kramo
6155ace0ec Add default argument to UnresolvableLocationError 2024-02-17 14:07:15 +01:00
kramo
35d85a607f Port to adaptive dialogs 2024-02-17 09:58:03 +01:00
Weblate (bot)
7ed7814e51 Translations update from Hosted Weblate (#224)
* Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (141 of 141 strings)

Translated using Weblate (Portuguese (Brazil))

Currently translated at 100.0% (141 of 141 strings)

Co-authored-by: Filipe Motta <luiz_filipe_motta@hotmail.com>
Co-authored-by: Hosted Weblate <hosted@weblate.org>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/pt_BR/
Translation: Cartridges/Cartridges

* Translated using Weblate (Ukrainian)

Currently translated at 100.0% (141 of 141 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/uk/
Translation: Cartridges/Cartridges

* Translated using Weblate (Japanese)

Currently translated at 5.6% (8 of 141 strings)

Added translation using Weblate (Japanese)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: Scott Anecito <scott.anecito@linux.com>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/ja/
Translation: Cartridges/Cartridges

* Translated using Weblate (Portuguese)

Currently translated at 100.0% (141 of 141 strings)

Co-authored-by: Hosted Weblate <hosted@weblate.org>
Co-authored-by: ssantos <ssantos@web.de>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/pt/
Translation: Cartridges/Cartridges

* Translated using Weblate (Finnish)

Currently translated at 97.8% (138 of 141 strings)

Co-authored-by: Scott Anecito <scott.anecito@linux.com>
Translate-URL: https://hosted.weblate.org/projects/cartridges/cartridges/fi/
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: Filipe Motta <luiz_filipe_motta@hotmail.com>
Co-authored-by: Сергій <sergiy.goncharuk.1@gmail.com>
Co-authored-by: Scott Anecito <scott.anecito@linux.com>
Co-authored-by: ssantos <ssantos@web.de>
2024-02-02 18:31:54 +01:00
kramo
b086766b77 kramo.hu → kramo.page (#230) 2024-01-28 20:07:56 +01:00
kramo
389b904455 kramo.hu → kramo.page 2024-01-28 20:06:24 +01:00
kramo
303f2a2063 Fix CI, escape not working 2024-01-27 09:34:30 +01:00
kramo
3e1ef88a1f Port to libadwaita 1.5 widgets 2024-01-27 08:52:50 +01:00
kramo
124d2c8ec7 Don't blacklist games on failed API calls
Fixes #227
2024-01-26 18:00:27 +01:00
kramo
f741b9f100 Fix arguments passed via idle_add 2024-01-24 15:46:20 +01:00
kramo
7c9d9a317b Potentially fix crash during import 2024-01-22 11:50:22 +01:00
kramo
b707f90a3f Update actions dependency versions 2024-01-02 16:57:09 +01:00
kramo
06e4dadf3c Set last_played as the default sort mode 2023-12-31 16:40:07 +01:00
Sabri Ünal
80c8566535 appdata: Improve appdata for AppStream 1.0 (#222)
* appdata: Improve appdata for AppStream 1.0

- Add the `<developer><name>` tag
- Mark the `<developer_name>` tag as deprecated
- Improve appstreamcli parameters
- Activate meson tests on Flatpak manifest

* Change developer ID to kramo.hu

---------

Co-authored-by: kramo <93832451+kra-mo@users.noreply.github.com>
2023-12-31 16:29:15 +01:00
39 changed files with 1777 additions and 616 deletions

View File

@@ -10,51 +10,51 @@ jobs:
name: Flatpak
runs-on: ubuntu-latest
container:
image: bilelmoussaoui/flatpak-github-actions:gnome-44
image: bilelmoussaoui/flatpak-github-actions:gnome-45
options: --privileged
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Flatpak Builder
uses: flatpak/flatpak-github-actions/flatpak-builder@v6.1
uses: flatpak/flatpak-github-actions/flatpak-builder@v6.3
with:
bundle: hu.kramo.Cartridges.Devel.flatpak
manifest-path: flatpak/hu.kramo.Cartridges.Devel.json
windows:
name: Windows
runs-on: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v3
# windows:
# name: Windows
# runs-on: windows-latest
# steps:
# - name: Checkout
# uses: actions/checkout@v4
- name: Setup MSYS2
uses: msys2/setup-msys2@v2
with:
msystem: UCRT64
update: true
install: mingw-w64-ucrt-x86_64-gtk4 mingw-w64-ucrt-x86_64-libadwaita mingw-w64-ucrt-x86_64-python-gobject mingw-w64-ucrt-x86_64-python-yaml mingw-w64-ucrt-x86_64-python-requests mingw-w64-ucrt-x86_64-python-pillow mingw-w64-ucrt-x86_64-desktop-file-utils mingw-w64-ucrt-x86_64-ca-certificates mingw-w64-ucrt-x86_64-meson git
# - name: Setup MSYS2
# uses: msys2/setup-msys2@v2
# with:
# msystem: UCRT64
# update: true
# install: mingw-w64-ucrt-x86_64-gtk4 mingw-w64-ucrt-x86_64-libadwaita mingw-w64-ucrt-x86_64-python-gobject mingw-w64-ucrt-x86_64-python-yaml mingw-w64-ucrt-x86_64-python-requests mingw-w64-ucrt-x86_64-python-pillow mingw-w64-ucrt-x86_64-desktop-file-utils mingw-w64-ucrt-x86_64-ca-certificates mingw-w64-ucrt-x86_64-meson git
- name: Compile
shell: msys2 {0}
run: |
meson setup _build
ninja -C _build install
pacman --noconfirm -Rs mingw-w64-ucrt-x86_64-desktop-file-utils mingw-w64-ucrt-x86_64-meson git
find /ucrt64/share/locale/ -type f ! -name "*cartridges.mo" -delete
# - name: Compile
# shell: msys2 {0}
# run: |
# meson setup _build
# ninja -C _build install
# pacman --noconfirm -Rs mingw-w64-ucrt-x86_64-desktop-file-utils mingw-w64-ucrt-x86_64-meson git
# find /ucrt64/share/locale/ -type f ! -name "*cartridges.mo" -delete
- name: Test
shell: msys2 {0}
run: |
set +e
timeout 2 cartridges; [ "$?" -eq "124" ]
# - name: Test
# shell: msys2 {0}
# run: |
# set +e
# timeout 2 cartridges; [ "$?" -eq "124" ]
- name: Inno Setup
run: iscc ".\_build\windows\Cartridges.iss"
# - name: Inno Setup
# run: iscc ".\_build\windows\Cartridges.iss"
- name: Upload Artifact
uses: actions/upload-artifact@v3
with:
name: Windows Installer
path: _build/windows/Output/Cartridges Setup.exe
# - name: Upload Artifact
# uses: actions/upload-artifact@v3
# with:
# name: Windows Installer
# path: _build/windows/Output/Cartridges Setup.exe

View File

@@ -11,10 +11,10 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Download workflow artifact
uses: dawidd6/action-download-artifact@v2.27.0
uses: dawidd6/action-download-artifact@v3.0.0
with:
workflow: ci.yml
commit: ${{ github.sha }}
@@ -39,7 +39,7 @@ jobs:
- name: Publish release
uses: softprops/action-gh-release@v0.1.15
with:
files: Windows Installer/Cartridges Setup.exe
fail_on_unmatched_files: true
# files: Windows Installer/Cartridges Setup.exe
# fail_on_unmatched_files: true
tag_name: ${{ steps.get_tag_name.outputs.tag_name }}
body_path: release_notes
body_path: release_notes

View File

@@ -1,3 +1,3 @@
The project follows the [GNOME Code of Conduct](https://wiki.gnome.org/Foundation/CodeOfConduct).
The project follows the [GNOME Code of Conduct](https://conduct.gnome.org/).
If you believe that someone is violating the Code of Conduct, or have any other concerns, please contact us via [cartridges-community@kramo.hu](mailto:cartridges-community@kramo.hu).
If you believe that someone is violating the Code of Conduct, or have any other concerns, please contact us via [cartridges-community@kramo.page](mailto:cartridges-community@kramo.page).

View File

@@ -59,4 +59,4 @@ VSCode extensions are available for all of these and you can set them up with th
"isort.args":["--profile", "black"],
```
For other code editors, you can install them via `pip` and invoke them via the command line.
For other code editors, you can install them via `pip` and invoke them from the command line.

View File

@@ -82,7 +82,7 @@ Note: Windows might present you with a warning when trying to install the app. T
### Winget
Install the latest release with the command: `winget install cartridges`.
Install the latest release with the command: `winget install cartridges`.
## Building manually
@@ -96,6 +96,6 @@ Thanks to [Weblate](https://weblate.org/) for hosting our translations!
# Code of Conduct
The project follows the [GNOME Code of Conduct](https://wiki.gnome.org/Foundation/CodeOfConduct).
The project follows the [GNOME Code of Conduct](https://conduct.gnome.org/).
See [CODE_OF_CONDUCT.md](https://github.com/kra-mo/cartridges/blob/main/CODE_OF_CONDUCT.md).

View File

@@ -22,7 +22,7 @@ Cartridges is a simple game launcher for all of your games. It has support for i
<maintainer>
<foaf:Person>
<foaf:name>kramo</foaf:name>
<foaf:mbox rdf:resource="mailto:contact@kramo.hu" />
<foaf:mbox rdf:resource="mailto:contact@kramo.page" />
<foaf:account>
<foaf:OnlineAccount>
<foaf:accountServiceHomepage rdf:resource="https://github.com"/>
@@ -38,4 +38,4 @@ Cartridges is a simple game launcher for all of your games. It has support for i
</foaf:Person>
</maintainer>
</Project>
</Project>

View File

@@ -1,6 +1,6 @@
# details_window.py
#
# Copyright 2022-2023 kramo
# Copyright 2022-2024 kramo
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -36,9 +36,9 @@ from cartridges.utils.create_dialog import create_dialog
from cartridges.utils.save_cover import convert_cover, save_cover
@Gtk.Template(resource_path=shared.PREFIX + "/gtk/details-window.ui")
class DetailsWindow(Adw.Window):
__gtype_name__ = "DetailsWindow"
@Gtk.Template(resource_path=shared.PREFIX + "/gtk/details-dialog.ui")
class DetailsDialog(Adw.Dialog):
__gtype_name__ = "DetailsDialog"
cover_overlay = Gtk.Template.Child()
cover = Gtk.Template.Child()
@@ -61,12 +61,9 @@ class DetailsWindow(Adw.Window):
def __init__(self, game: Optional[Game] = None, **kwargs: Any):
super().__init__(**kwargs)
self.game: Game = game
self.game_cover: GameCover = GameCover({self.cover})
self.set_transient_for(shared.win)
if self.game:
self.set_title(_("Game Details"))
self.name.set_text(self.game.name)
@@ -152,7 +149,6 @@ class DetailsWindow(Adw.Window):
self.executable.connect("entry-activated", self.apply_preferences)
self.set_focus(self.name)
self.present()
def delete_pixbuf(self, *_args: Any) -> None:
self.game_cover.new_cover()
@@ -325,7 +321,7 @@ class DetailsWindow(Adw.Window):
self.executable.set_text(shlex.quote(path))
def choose_executable(self, *_args: Any) -> None:
self.exec_file_dialog.open(self, None, self.set_executable)
self.exec_file_dialog.open(self.get_root(), None, self.set_executable)
def choose_cover(self, *_args: Any) -> None:
self.image_file_dialog.open(self, None, self.set_cover)
self.image_file_dialog.open(self.get_root(), None, self.set_cover)

View File

@@ -40,7 +40,7 @@ class Importer(ErrorProducer):
progressbar: Gtk.ProgressBar
import_statuspage: Adw.StatusPage
import_dialog: Adw.MessageDialog
import_dialog: Adw.AlertDialog
summary_toast: Optional[Adw.Toast] = None
sources: set[Source]
@@ -53,7 +53,7 @@ class Importer(ErrorProducer):
removed_game_ids: set[str]
imported_game_ids: set[str]
close_req_id: int
close_attempt_id: int
def __init__(self) -> None:
super().__init__()
@@ -145,20 +145,17 @@ class Importer(ErrorProducer):
title=_("Importing Games…"),
child=self.progressbar,
)
self.import_dialog = Adw.Window(
content=self.import_statuspage,
modal=True,
default_width=350,
default_height=-1,
transient_for=shared.win,
deletable=False,
self.import_dialog = Adw.Dialog(
child=self.import_statuspage,
content_width=350,
can_close=False,
)
self.close_req_id = self.import_dialog.connect(
"close-request", lambda *_: shared.win.close()
self.close_attempt_id = self.import_dialog.connect(
"close-attempt", lambda *_: shared.win.close()
)
self.import_dialog.present()
self.import_dialog.present(shared.win)
def source_task_thread_func(self, data: tuple) -> None:
"""Source import task code"""
@@ -211,7 +208,11 @@ class Importer(ErrorProducer):
pipeline: Pipeline = shared.store.add_game(game, additional_data)
if pipeline is not None:
logging.info("Imported %s (%s)", game.name, game.game_id)
pipeline.connect("advanced", self.pipeline_advanced_callback)
pipeline.connect(
"advanced",
# I'm not sure idle_add is needed here, but a widget is updated in the callback
lambda *args: GLib.idle_add(self.pipeline_advanced_callback, *args),
)
self.game_pipelines.add(pipeline)
def update_progressbar(self) -> None:
@@ -278,9 +279,9 @@ class Importer(ErrorProducer):
self.imported_game_ids = shared.store.new_game_ids
shared.store.new_game_ids = set()
shared.store.duplicate_game_ids = set()
# Disconnect the close-request signal that closes the main window
self.import_dialog.disconnect(self.close_req_id)
self.import_dialog.close()
# Disconnect the close-attempt signal that closes the main window
self.import_dialog.disconnect(self.close_attempt_id)
self.import_dialog.force_close()
self.__class__.summary_toast = self.create_summary_toast()
self.create_error_dialog()
shared.win.get_application().lookup_action("import").set_enabled(True)
@@ -313,13 +314,12 @@ class Importer(ErrorProducer):
return
# Create error dialog
dialog = Adw.MessageDialog()
dialog = Adw.AlertDialog()
dialog.set_heading(_("Warning"))
dialog.add_response("close", _("Dismiss"))
dialog.add_response("open_preferences_import", _("Preferences"))
dialog.set_default_response("open_preferences_import")
dialog.connect("response", self.dialog_response_callback)
dialog.set_transient_for(shared.win)
if len(errors) == 1:
dialog.set_heading((error := next(iter(errors)))[0])
@@ -338,7 +338,7 @@ class Importer(ErrorProducer):
dialog.set_body(_("The following errors occured during import:"))
dialog.set_extra_child(list_box)
dialog.present()
dialog.present(shared.win)
def undo_import(self, *_args: Any) -> None:
for game_id in self.imported_game_ids:
@@ -403,7 +403,7 @@ class Importer(ErrorProducer):
self,
page_name: Optional[str] = None,
expander_row: Optional[Adw.ExpanderRow] = None,
) -> Adw.PreferencesWindow:
) -> Adw.PreferencesDialog:
return shared.win.get_application().on_preferences_action(
page_name=page_name, expander_row=expander_row
)

View File

@@ -16,7 +16,7 @@ class LocationSubPath(NamedTuple):
class UnresolvableLocationError(Exception):
def __init__(self, optional):
def __init__(self, optional: Optional[bool] = False):
self.optional = optional

View File

@@ -1,6 +1,6 @@
# lutris_source.py
#
# Copyright 2022-2023 kramo
# Copyright 2022-2024 kramo
# Copyright 2023 Geoffrey Coulaud
#
# This program is free software: you can redistribute it and/or modify
@@ -51,9 +51,12 @@ class LutrisSourceIterable(SourceIterable):
"import_steam": shared.schema.get_boolean("lutris-import-steam"),
"import_flatpak": shared.schema.get_boolean("lutris-import-flatpak"),
}
db_path = copy_db(self.source.locations.config["pga.db"])
db_path = copy_db(self.source.locations.data["pga.db"])
connection = connect(db_path)
cursor = connection.execute(request, params)
coverart_is_dir = (
coverart_path := self.source.locations.data.root / "coverart"
).is_dir()
# Create games from the DB results
for row in cursor:
@@ -69,10 +72,12 @@ class LutrisSourceIterable(SourceIterable):
"executable": self.source.make_executable(game_id=row[0]),
}
game = Game(values)
additional_data = {}
# Get official image path
image_path = self.source.locations.cache["coverart"] / f"{row[2]}.jpg"
additional_data = {"local_image_path": image_path}
if coverart_is_dir:
image_path = coverart_path / f"{row[2]}.jpg"
additional_data["local_image_path"] = image_path
yield (game, additional_data)
@@ -81,8 +86,7 @@ class LutrisSourceIterable(SourceIterable):
class LutrisLocations(NamedTuple):
config: Location
cache: Location
data: Location
class LutrisSource(URLExecutableSource):
@@ -94,8 +98,6 @@ class LutrisSource(URLExecutableSource):
url_format = "lutris:rungameid/{game_id}"
available_on = {"linux"}
# FIXME possible bug: config picks ~/.var... and cache picks ~/.local...
locations: LutrisLocations
@property
@@ -116,17 +118,5 @@ class LutrisSource(URLExecutableSource):
"pga.db": LocationSubPath("pga.db"),
},
invalid_subtitle=Location.DATA_INVALID_SUBTITLE,
),
Location(
schema_key="lutris-cache-location",
candidates=(
shared.flatpak_dir / "net.lutris.Lutris" / "cache" / "lutris",
shared.cache_dir / "lutris",
shared.host_cache_dir / "lutris",
),
paths={
"coverart": LocationSubPath("coverart", True),
},
invalid_subtitle=Location.CACHE_INVALID_SUBTITLE,
),
)
)

View File

@@ -1,6 +1,6 @@
# main.py
#
# Copyright 2022-2023 kramo
# Copyright 2022-2024 kramo
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -34,7 +34,7 @@ gi.require_version("Adw", "1")
from gi.repository import Adw, Gio, GLib, Gtk
from cartridges import shared
from cartridges.details_window import DetailsWindow
from cartridges.details_dialog import DetailsDialog
from cartridges.game import Game
from cartridges.importer.bottles_source import BottlesSource
from cartridges.importer.desktop_source import DesktopSource
@@ -47,7 +47,7 @@ from cartridges.importer.lutris_source import LutrisSource
from cartridges.importer.retroarch_source import RetroarchSource
from cartridges.importer.steam_source import SteamSource
from cartridges.logging.setup import log_system_info, setup_logging
from cartridges.preferences import PreferencesWindow
from cartridges.preferences import CartridgesPreferences
from cartridges.store.managers.cover_manager import CoverManager
from cartridges.store.managers.display_manager import DisplayManager
from cartridges.store.managers.file_manager import FileManager
@@ -153,7 +153,6 @@ class CartridgesApplication(Adw.Application):
("go_to_parent", ("<alt>Up",), shared.win),
("go_home", ("<alt>Home",), shared.win),
("toggle_search", ("<primary>f",), shared.win),
("escape", ("Escape",), shared.win),
("undo", ("<primary>z",), shared.win),
("open_menu", ("F10",), shared.win),
("close", ("<primary>w",), shared.win),
@@ -161,13 +160,13 @@ class CartridgesApplication(Adw.Application):
)
sort_action = Gio.SimpleAction.new_stateful(
"sort_by", GLib.VariantType.new("s"), GLib.Variant("s", "a-z")
"sort_by",
GLib.VariantType.new("s"),
sort_mode := GLib.Variant("s", shared.state_schema.get_string("sort-mode")),
)
sort_action.connect("activate", shared.win.on_sort_action)
shared.win.add_action(sort_action)
shared.win.on_sort_action(
sort_action, shared.state_schema.get_value("sort-mode")
)
shared.win.on_sort_action(sort_action, sort_mode)
if self.init_search_term: # For command line activation
shared.win.search_bar.set_search_mode(True)
@@ -246,13 +245,12 @@ class CartridgesApplication(Adw.Application):
debug_str += log_file.read()
log_file.close()
about = Adw.AboutWindow.new_from_appdata(
about = Adw.AboutDialog.new_from_appdata(
shared.PREFIX + "/" + shared.APP_ID + ".metainfo.xml", shared.VERSION
)
about.set_transient_for(shared.win)
about.set_developers(
(
"kramo https://kramo.hu",
"kramo https://kramo.page",
"Geoffrey Coulaud https://geoffrey-coulaud.fr",
"Rilic https://rilic.red",
"Arcitec https://github.com/Arcitec",
@@ -263,8 +261,8 @@ class CartridgesApplication(Adw.Application):
"Sabri Ünal https://github.com/sabriunal",
)
)
about.set_designers(("kramo https://kramo.hu",))
about.set_copyright("© 2022-2023 kramo")
about.set_designers(("kramo https://kramo.page",))
about.set_copyright("© 2022-2024 kramo")
# Translators: Replace this with your name for it to show up in the about window
about.set_translator_credits = (_("translator_credits"),)
about.set_debug_info(debug_str)
@@ -275,7 +273,7 @@ class CartridgesApplication(Adw.Application):
Gtk.License.CUSTOM,
"Steam and the Steam logo are trademarks and/or registered trademarks of Valve Corporation in the U.S. and/or other countries.", # pylint: disable=line-too-long
)
about.present()
about.present(shared.win)
def on_preferences_action(
self,
@@ -284,12 +282,12 @@ class CartridgesApplication(Adw.Application):
page_name: Optional[str] = None,
expander_row: Optional[str] = None,
) -> CartridgesWindow:
win = PreferencesWindow()
win = CartridgesPreferences()
if page_name:
win.set_visible_page_name(page_name)
if expander_row:
getattr(win, expander_row).set_expanded(True)
win.present()
win.present(shared.win)
return win
@@ -300,10 +298,10 @@ class CartridgesApplication(Adw.Application):
shared.win.active_game.toggle_hidden()
def on_edit_game_action(self, *_args: Any) -> None:
DetailsWindow(shared.win.active_game)
DetailsDialog(shared.win.active_game).present(shared.win)
def on_add_game_action(self, *_args: Any) -> None:
DetailsWindow()
DetailsDialog().present(shared.win)
def on_import_action(self, *_args: Any) -> None:
shared.importer = Importer()

View File

@@ -18,7 +18,7 @@ install_data(
'main.py',
'window.py',
'preferences.py',
'details_window.py',
'details_dialog.py',
'game.py',
'game_cover.py',
configure_file(
@@ -28,4 +28,4 @@ install_data(
)
],
install_dir: moduledir
)
)

View File

@@ -43,8 +43,8 @@ from cartridges.utils.create_dialog import create_dialog
@Gtk.Template(resource_path=shared.PREFIX + "/gtk/preferences.ui")
class PreferencesWindow(Adw.PreferencesWindow):
__gtype_name__ = "PreferencesWindow"
class CartridgesPreferences(Adw.PreferencesDialog):
__gtype_name__ = "CartridgesPreferences"
general_page = Gtk.Template.Child()
import_page = Gtk.Template.Child()
@@ -63,10 +63,8 @@ class PreferencesWindow(Adw.PreferencesWindow):
steam_data_file_chooser_button = Gtk.Template.Child()
lutris_expander_row = Gtk.Template.Child()
lutris_config_action_row = Gtk.Template.Child()
lutris_config_file_chooser_button = Gtk.Template.Child()
lutris_cache_action_row = Gtk.Template.Child()
lutris_cache_file_chooser_button = Gtk.Template.Child()
lutris_data_action_row = Gtk.Template.Child()
lutris_data_file_chooser_button = Gtk.Template.Child()
lutris_import_steam_switch = Gtk.Template.Child()
lutris_import_flatpak_switch = Gtk.Template.Child()
@@ -123,7 +121,6 @@ class PreferencesWindow(Adw.PreferencesWindow):
def __init__(self, **kwargs: Any) -> None:
super().__init__(**kwargs)
self.file_chooser = Gtk.FileDialog()
self.set_transient_for(shared.win)
self.toast = Adw.Toast.new(_("All games removed"))
self.toast.set_button_label(_("Undo"))

View File

@@ -48,10 +48,16 @@ class SteamAPIManager(AsyncManager):
appid = additional_data.get("steam_appid", None)
if appid is None:
return
# Get online metadata
try:
online_data = self.steam_api_helper.get_api_data(appid=appid)
except (SteamNotAGameError, SteamGameNotFoundError):
except SteamGameNotFoundError:
return
except SteamNotAGameError:
game.update_values({"blacklisted": True})
else:
game.update_values(online_data)

View File

@@ -28,12 +28,12 @@ def create_dialog(
body: str,
extra_option: Optional[str] = None,
extra_label: Optional[str] = None,
) -> Adw.MessageDialog:
dialog = Adw.MessageDialog.new(win, heading, body)
) -> Adw.AlertDialog:
dialog = Adw.AlertDialog.new(heading, body)
dialog.add_response("dismiss", _("Dismiss"))
if extra_option:
dialog.add_response(extra_option, _(extra_label))
dialog.present()
dialog.choose(win)
return dialog

View File

@@ -81,7 +81,7 @@ class CartridgesWindow(Adw.ApplicationWindow):
toasts: dict = {}
active_game: Game
details_view_game_cover: Optional[GameCover] = None
sort_state: str = "a-z"
sort_state: str = "last_played"
filter_state: str = "all"
source_rows: dict = {}
@@ -469,15 +469,6 @@ class CartridgesWindow(Adw.ApplicationWindow):
search_entry.set_text("")
def on_escape_action(self, *_args: Any) -> None:
if (
self.get_focus() == self.search_entry.get_focus_child()
or self.hidden_search_entry.get_focus_child()
):
self.on_toggle_search_action()
else:
self.navigation_view.pop()
def show_details_page_search(self, widget: Gtk.Widget) -> None:
library = (
self.hidden_library if widget == self.hidden_search_entry else self.library

View File

@@ -6,7 +6,7 @@
<file preprocess="xml-stripblanks">gtk/help-overlay.ui</file>
<file preprocess="xml-stripblanks">gtk/game.ui</file>
<file preprocess="xml-stripblanks">gtk/preferences.ui</file>
<file preprocess="xml-stripblanks">gtk/details-window.ui</file>
<file preprocess="xml-stripblanks">gtk/details-dialog.ui</file>
<file alias="style.css">gtk/style.css</file>
<file alias="style-dark.css">gtk/style-dark.css</file>
<file>library_placeholder.svg</file>

View File

@@ -1,17 +1,8 @@
using Gtk 4.0;
using Adw 1;
template $DetailsWindow : Adw.Window {
default-width: 480; // Same as Nautilus' properties window
default-height: -1;
modal: true;
ShortcutController {
Shortcut {
trigger: "Escape";
action: "action(window.close)";
}
}
template $DetailsDialog : Adw.Dialog {
content-width: 480;
Adw.ToolbarView {
@@ -85,7 +76,7 @@ template $DetailsWindow : Adw.Window {
Picture cover {
width-request: 200;
height-request: 300;
styles [
"card"
]
@@ -149,4 +140,4 @@ template $DetailsWindow : Adw.Window {
}
}
}
}
}

View File

@@ -1,7 +1,8 @@
using Gtk 4.0;
using Adw 1;
template $PreferencesWindow : Adw.PreferencesWindow {
template $CartridgesPreferences : Adw.PreferencesDialog {
search-enabled: true;
Adw.PreferencesPage general_page {
name: "general";
@@ -154,22 +155,10 @@ template $PreferencesWindow : Adw.PreferencesWindow {
icon-name: "lutris-source-symbolic";
}
Adw.ActionRow lutris_config_action_row {
Adw.ActionRow lutris_data_action_row {
title: _("Install Location");
Button lutris_config_file_chooser_button {
icon-name: "folder-symbolic";
valign: center;
styles [
"flat"
]
}
}
Adw.ActionRow lutris_cache_action_row {
title: _("Cache Location");
Button lutris_cache_file_chooser_button {
Button lutris_data_file_chooser_button {
icon-name: "folder-symbolic";
valign: center;
styles [

View File

@@ -45,7 +45,7 @@ Adw.StatusPage hidden_notice_empty {
template $CartridgesWindow : Adw.ApplicationWindow {
title: _("Cartridges");
width-request: 281;
width-request: 360;
height-request: 100;
Adw.Breakpoint {
@@ -75,6 +75,8 @@ template $CartridgesWindow : Adw.ApplicationWindow {
title: _("All Games");
Adw.OverlaySplitView overlay_split_view {
sidebar-width-fraction: .2;
[sidebar]
Adw.NavigationPage {
title: _("Cartridges");
@@ -199,6 +201,13 @@ template $CartridgesWindow : Adw.ApplicationWindow {
SearchEntry search_entry {
placeholder-text: _("Search");
hexpand: true;
ShortcutController {
Shortcut {
trigger: "Escape";
action: "action(win.toggle_search)";
}
}
}
}
}

View File

@@ -127,7 +127,7 @@
<choice value="oldest" />
<choice value="last_played" />
</choices>
<default>"a-z"</default>
<default>"last_played"</default>
</key>
<key name="show-sidebar" type="b">
<default>false</default>

View File

@@ -11,20 +11,27 @@
<url type="homepage">https://github.com/kra-mo/cartridges</url>
<url type="bugtracker">https://github.com/kra-mo/cartridges/issues</url>
<url type="translate">https://hosted.weblate.org/engage/cartridges/</url>
<url type="contact">https://www.kramo.hu/about/</url>
<url type="contact">https://www.kramo.page/about/</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>
<!-- developer_name tag deprecated with Appstream 1.0 -->
<developer_name translatable="no">kramo</developer_name>
<project_group>GNOME</project_group>
<developer id="page.kramo">
<name translatable="no">kramo</name>
</developer>
<launchable type="desktop-id">@APP_ID@.desktop</launchable>
<translation type="gettext">cartridges</translation>
<branding>
<color type="primary" scheme_preference="light">#d5b0e7</color>
<color type="primary" scheme_preference="dark">#501a5c</color>
</branding>
<supports>
<control>pointing</control>
<control>keyboard</control>
<control>touch</control>
</supports>
<recommends>
<display_length compare="gt">280</display_length>
<display_length compare="ge">360</display_length>
</recommends>
<screenshots>
<screenshot type="default">
@@ -46,10 +53,18 @@
</screenshots>
<content_rating type="oars-1.1" />
<releases>
<release version="2.7.2" date="2023-12-31">
<release version="2.8.1" date="2024-03-23">
<description translatable="no">
<ul>
<li>Fixes a bug with Flatpak user games not importing</li>
<li>Fixes an issue with Lutris games not importing</li>
<li>Fixes an issue with file chooser buttons being unresponsive</li>
</ul>
</description>
</release>
<release version="2.8" date="2024-03-20">
<description translatable="no">
<ul>
<li>The app features new adaptive widgets taking advantage of developments in GNOME 46</li>
</ul>
</description>
</release>

View File

@@ -4,7 +4,7 @@ blueprints = custom_target('blueprints',
'gtk/window.blp',
'gtk/game.blp',
'gtk/preferences.blp',
'gtk/details-window.blp'
'gtk/details-dialog.blp'
),
output: '.',
command: [find_program('blueprint-compiler'), 'batch-compile', '@OUTPUT@', '@CURRENT_SOURCE_DIR@', '@INPUT@'],
@@ -54,7 +54,11 @@ appstream_file = i18n.merge_file(
appstreamcli = find_program('appstreamcli', required: false)
if appstreamcli.found()
test('Validate appstream file', appstreamcli, args: ['validate', appstream_file])
test('Validate appstream file',
appstreamcli,
args: ['validate', '--no-net', '--explain', appstream_file],
workdir: meson.current_build_dir()
)
endif
install_data(

View File

@@ -1,7 +1,7 @@
{
"id" : "hu.kramo.Cartridges.Devel",
"runtime" : "org.gnome.Platform",
"runtime-version" : "45",
"runtime-version" : "46",
"sdk" : "org.gnome.Sdk",
"command" : "cartridges",
"finish-args" : [
@@ -123,6 +123,7 @@
"name" : "cartridges",
"builddir" : true,
"buildsystem" : "meson",
"run-tests" : true,
"config-opts": [
"-Dprofile=development"
],

View File

@@ -1,5 +1,5 @@
project('cartridges',
version: '2.7.2',
version: '2.8.1',
meson_version: '>= 0.59.0',
default_options: [ 'warning_level=2', 'werror=false', ],
)
@@ -49,4 +49,4 @@ gnome.post_install(
glib_compile_schemas: true,
gtk_update_icon_cache: true,
update_desktop_database: true,
)
)

View File

@@ -24,3 +24,5 @@ zh_Hans
be
hr
ca
ja
hi

128
po/de.po
View File

@@ -5,13 +5,14 @@
# WebSnke <websnke@tutanota.com>, 2023.
# Ettore Atalan <atalanttore@googlemail.com>, 2023.
# Simon Hahne <simonhahne@web.de>, 2023.
# Konstantin Tutsch <mail@konstantintutsch.com>, 2024.
msgid ""
msgstr ""
"Project-Id-Version: Cartridges\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-12-12 10:32+0100\n"
"PO-Revision-Date: 2023-08-05 08:07+0000\n"
"Last-Translator: Simon Hahne <simonhahne@web.de>\n"
"PO-Revision-Date: 2024-02-19 06:35+0000\n"
"Last-Translator: Konstantin Tutsch <mail@konstantintutsch.com>\n"
"Language-Team: German <https://hosted.weblate.org/projects/cartridges/"
"cartridges/de/>\n"
"Language: de\n"
@@ -19,7 +20,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.0-dev\n"
"X-Generator: Weblate 5.4\n"
#: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -35,14 +36,13 @@ msgstr "Spiele-Launcher"
#: data/hu.kramo.Cartridges.desktop.in:5
#: data/hu.kramo.Cartridges.metainfo.xml.in:7
msgid "Launch all your games"
msgstr "Starte all deine Spiele"
msgstr "Starten Sie alle Ihre Spiele"
#: data/hu.kramo.Cartridges.desktop.in:11
#, fuzzy
#| msgid "gaming;launcher;steam;lutris;heroic;bottles;itch;flatpak;legendary;"
msgid ""
"gaming;launcher;steam;lutris;heroic;bottles;itch;flatpak;legendary;retroarch;"
msgstr "spiel;launcher;steam;lutris;heroic;bottles;itch;flatpak;legendary;"
msgstr ""
"spiel;launcher;steam;lutris;heroic;bottles;itch;flatpak;legendary;retroarch;"
#: data/hu.kramo.Cartridges.metainfo.xml.in:9
msgid ""
@@ -51,10 +51,10 @@ msgid ""
"necessary. You can sort and hide games or download cover art from "
"SteamGridDB."
msgstr ""
"Cartridges ist ein einfacher Spiel-Launcher. Es unterstützt das Importieren "
"von Spielen aus Steam, Lutris, Heroic und mehr, keine Anmeldung "
"erforderlich. Du kannst sortieren, Spiele verstecken oder das Cover-Art aus "
"SteamGRID herunterladen."
"Cartridges ist ein einfacher Game Launcher für alle deine Spiele. Es bietet "
"Unterstützung für den Import von Spielen aus Steam, Lutris, Heroic und mehr, "
"ohne dass eine Anmeldung erforderlich ist. Sie können Spiele sortieren und "
"ausblenden oder Cover-Art von SteamGridDB herunterladen."
#: data/hu.kramo.Cartridges.metainfo.xml.in:36 data/gtk/window.blp:290
#: cartridges/details_window.py:71
@@ -88,10 +88,8 @@ msgid "Title"
msgstr "Titel"
#: data/gtk/details-window.blp:103
#, fuzzy
#| msgid "The developer or publisher (optional)"
msgid "Developer (optional)"
msgstr "Der Entwickler oder Verlag (optional)"
msgstr "Entwickler (optional)"
#: data/gtk/details-window.blp:108
msgid "Executable"
@@ -99,7 +97,7 @@ msgstr "Ausführbare Datei"
#: data/gtk/details-window.blp:114
msgid "Select File"
msgstr ""
msgstr "Datei auswählen"
#: data/gtk/details-window.blp:125
msgid "More Info"
@@ -145,7 +143,7 @@ msgstr "Beenden"
#: data/gtk/help-overlay.blp:39 data/gtk/window.blp:88 data/gtk/window.blp:164
msgid "Toggle Sidebar"
msgstr ""
msgstr "Seitenleiste umschalten"
#: data/gtk/help-overlay.blp:44 data/gtk/window.blp:177 data/gtk/window.blp:237
msgid "Main Menu"
@@ -165,14 +163,10 @@ msgid "Import"
msgstr "Importieren"
#: data/gtk/help-overlay.blp:63
#, fuzzy
#| msgid "Show hidden games"
msgid "Show Hidden Games"
msgstr "Ausgeblendete Spiele anzeigen"
#: data/gtk/help-overlay.blp:68
#, fuzzy
#| msgid "Remove game"
msgid "Remove Game"
msgstr "Spiel entfernen"
@@ -214,10 +208,8 @@ msgid "Remove All Games"
msgstr "Alle Spiele entfernen"
#: data/gtk/preferences.blp:119
#, fuzzy
#| msgid "Remove All Games"
msgid "Remove Uninstalled Games"
msgstr "Alle Spiele entfernen"
msgstr "Deinstallierte Spiele entfernen"
#: data/gtk/preferences.blp:124
msgid "Sources"
@@ -285,7 +277,7 @@ msgstr "Legendary"
#: data/gtk/preferences.blp:295 cartridges/importer/retroarch_source.py:142
msgid "RetroArch"
msgstr ""
msgstr "RetroArch"
#: data/gtk/preferences.blp:317 cartridges/importer/flatpak_source.py:124
msgid "Flatpak"
@@ -293,17 +285,13 @@ msgstr "Flatpak"
#. The location of the system-wide data directory
#: data/gtk/preferences.blp:327
#, fuzzy
#| msgid "Set Location"
msgid "System Location"
msgstr "Ort festlegen"
msgstr "System Ort"
#. The location of the user-specific data directory
#: data/gtk/preferences.blp:340
#, fuzzy
#| msgid "Set Location"
msgid "User Location"
msgstr "Ort festlegen"
msgstr "Nutzer Ort"
#: data/gtk/preferences.blp:352
msgid "Import Game Launchers"
@@ -311,7 +299,7 @@ msgstr "Spiele-Launcher importieren"
#: data/gtk/preferences.blp:357 cartridges/importer/desktop_source.py:215
msgid "Desktop Entries"
msgstr ""
msgstr "Desktop Einträge"
#: data/gtk/preferences.blp:369 data/gtk/window.blp:537
msgid "SteamGridDB"
@@ -335,25 +323,23 @@ msgstr "Lade Bilder herunter, wenn Spiele hinzugefügt oder importiert werden"
#: data/gtk/preferences.blp:389
msgid "Prefer Over Official Images"
msgstr "Über offizielien Images bevorzugen"
msgstr "Über offiziellen Bildern bevorzugen"
#: data/gtk/preferences.blp:393
msgid "Prefer Animated Images"
msgstr "Animierte Bilder bevorzugen"
#: data/gtk/preferences.blp:399
#, fuzzy
#| msgid "Delete Cover"
msgid "Update Covers"
msgstr "Cover löschen"
msgstr "Cover aktualisieren"
#: data/gtk/preferences.blp:400
msgid "Fetch covers for games already in your library"
msgstr ""
msgstr "Cover für in der Bibliothek vorhandene Spiele laden"
#: data/gtk/preferences.blp:405
msgid "Update"
msgstr ""
msgstr "Aktualisieren"
#: data/gtk/window.blp:6 data/gtk/window.blp:14
msgid "No Games Found"
@@ -380,22 +366,16 @@ msgid "Games you hide will appear here."
msgstr "Ausgeblendete Spiele, werden hier angezeigt."
#: data/gtk/window.blp:75 data/gtk/window.blp:106 cartridges/main.py:226
#, fuzzy
#| msgid "Remove All Games"
msgid "All Games"
msgstr "Alle Spiele entfernen"
msgstr "Alle Spiele"
#: data/gtk/window.blp:126 cartridges/main.py:228
#, fuzzy
#| msgid "Added: {}"
msgid "Added"
msgstr "Hinzugefügt: {}"
msgstr "Hinzugefügt"
#: data/gtk/window.blp:141
#, fuzzy
#| msgid "Import"
msgid "Imported"
msgstr "Importieren"
msgstr "Importiert"
#: data/gtk/window.blp:230
msgid "Hidden Games"
@@ -443,15 +423,15 @@ msgstr "Über Cartridges"
#: data/gtk/window.blp:536
msgid "IGDB"
msgstr ""
msgstr "IGDB"
#: data/gtk/window.blp:538
msgid "ProtonDB"
msgstr ""
msgstr "ProtonDB"
#: data/gtk/window.blp:540
msgid "HowLongToBeat"
msgstr ""
msgstr "HowLongToBeat"
#. The variable is the title of the game
#: cartridges/main.py:206 cartridges/game.py:125
@@ -487,13 +467,11 @@ msgstr "Neues Spiel hinzufügen"
#: cartridges/details_window.py:83
msgid "Add"
msgstr ""
msgstr "Hinzufügen"
#: cartridges/details_window.py:93
#, fuzzy
#| msgid "Executable"
msgid "Executables"
msgstr "Ausführbare Datei"
msgstr "Ausführbare Dateien"
#. Translate this string as you would translate "file"
#: cartridges/details_window.py:108
@@ -581,14 +559,12 @@ msgstr ""
"können ihn {}hier{} generieren."
#: cartridges/preferences.py:191
#, fuzzy
#| msgid "Importing Covers…"
msgid "Downloading covers…"
msgstr "Spielecover werden importiert…"
msgstr "Cover werden geladen…"
#: cartridges/preferences.py:210
msgid "Covers updated"
msgstr ""
msgstr "Cover aktualisiert"
#: cartridges/preferences.py:345
msgid "Installation Not Found"
@@ -600,7 +576,7 @@ msgstr "Wähle ein gültiges Verzeichnis aus."
#: cartridges/preferences.py:382 cartridges/importer/importer.py:317
msgid "Warning"
msgstr ""
msgstr "Warnung"
#: cartridges/preferences.py:416
msgid "Invalid Directory"
@@ -620,73 +596,57 @@ msgstr "Spiele werden importiert…"
#: cartridges/importer/importer.py:338
msgid "The following errors occured during import:"
msgstr ""
msgstr "Die folgenden Fehler sind beim Import aufgetreten:"
#: cartridges/importer/importer.py:367
#, fuzzy
#| msgid "No Games Found"
msgid "No new games found"
msgstr "Keine Spiele gefunden"
msgstr "Keine neuen Spiele gefunden"
#: cartridges/importer/importer.py:379
#, fuzzy
#| msgid "Game Imported"
msgid "1 game imported"
msgstr "Spiel Importiert"
msgstr "1 Spiel importiert"
#. The variable is the number of games
#: cartridges/importer/importer.py:383
#, fuzzy
#| msgid "Games Imported"
msgid "{} games imported"
msgstr "Spiele importiert"
msgstr "{} Spiele importiert"
#. A single game removed
#: cartridges/importer/importer.py:387
#, fuzzy
#| msgid "{} removed"
msgid "1 removed"
msgstr "{} entfernt"
msgstr "1 entfernt"
#. The variable is the name of the source
#: cartridges/importer/location.py:33
#, fuzzy
#| msgid "Select the {} data directory."
msgid "Select the {} cache directory."
msgstr "Wähle das Cache-Verzeichnis von {} aus."
msgstr "Wählen Sie das Cache-Verzeichnis {}."
#. The variable is the name of the source
#: cartridges/importer/location.py:35
#, fuzzy
#| msgid "Select the {} configuration directory."
msgid "Select the {} configuration directory."
msgstr "Wähle das Konfigurationsverzeichnis von {} aus."
#. The variable is the name of the source
#: cartridges/importer/location.py:37
#, fuzzy
#| msgid "Select the {} data directory."
msgid "Select the {} data directory."
msgstr "Wähle das Datenverzeichnis von {} aus."
#: cartridges/importer/retroarch_source.py:129
msgid "No RetroArch Core Selected"
msgstr ""
msgstr "Kein RetroArch Kern ausgewählt"
#. The variable is a newline separated list of playlists
#: cartridges/importer/retroarch_source.py:131
msgid "The following playlists have no default core:"
msgstr ""
msgstr "Diese Playlists haben keinen Standard Kern:"
#: cartridges/importer/retroarch_source.py:133
msgid "Games with no core selected were not imported"
msgstr ""
msgstr "Spiele ohne ausgewählten Kern wurden nicht importiert"
#: cartridges/store/managers/sgdb_manager.py:46
#, fuzzy
#| msgid "Couldn't Connect to SteamGridDB"
msgid "Couldn't Authenticate SteamGridDB"
msgstr "Verbindung zu SteamGridDB konnte nicht hergestellt werden"
msgstr "SteamGridDB konnte nicht authentifiziert werden"
#: cartridges/store/managers/sgdb_manager.py:47
msgid "Verify your API key in preferences"

View File

@@ -1,7 +1,7 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the cartridges package.
# Óscar Fernández Díaz <oscfdezdz@users.noreply.hosted.weblate.org>, 2023.
# Óscar Fernández Díaz <oscfdezdz@users.noreply.hosted.weblate.org>, 2023, 2024.
# gallegonovato <fran-carro@hotmail.es>, 2023.
# kramo <contact@kramo.hu>, 2023.
msgid ""
@@ -9,8 +9,9 @@ msgstr ""
"Project-Id-Version: cartridges\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-12-12 10:32+0100\n"
"PO-Revision-Date: 2023-12-15 13:10+0000\n"
"Last-Translator: gallegonovato <fran-carro@hotmail.es>\n"
"PO-Revision-Date: 2024-02-19 06:35+0000\n"
"Last-Translator: Óscar Fernández Díaz <oscfdezdz@users.noreply.hosted.weblate"
".org>\n"
"Language-Team: Spanish <https://hosted.weblate.org/projects/cartridges/"
"cartridges/es/>\n"
"Language: es\n"
@@ -18,7 +19,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.3\n"
"X-Generator: Weblate 5.4\n"
#: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -40,8 +41,8 @@ msgstr "Lance todos sus juegos"
msgid ""
"gaming;launcher;steam;lutris;heroic;bottles;itch;flatpak;legendary;retroarch;"
msgstr ""
"juegos;lanzador;steam;lutris;heroico;botellas;itch;flatpak;legendario;"
"retroarch;"
"gaming;launcher;steam;lutris;heroic;bottles;itch;flatpak;legendary;retroarch;"
"juegos;lanzador;"
#: data/hu.kramo.Cartridges.metainfo.xml.in:9
msgid ""
@@ -96,7 +97,7 @@ msgstr "Ejecutable"
#: data/gtk/details-window.blp:114
msgid "Select File"
msgstr "Seleccionar el archivo"
msgstr "Seleccionar archivo"
#: data/gtk/details-window.blp:125
msgid "More Info"
@@ -142,7 +143,7 @@ msgstr "Salir"
#: data/gtk/help-overlay.blp:39 data/gtk/window.blp:88 data/gtk/window.blp:164
msgid "Toggle Sidebar"
msgstr "Alternar la barra lateral"
msgstr "Conmutar la barra lateral"
#: data/gtk/help-overlay.blp:44 data/gtk/window.blp:177 data/gtk/window.blp:237
msgid "Main Menu"
@@ -163,11 +164,11 @@ msgstr "Importar"
#: data/gtk/help-overlay.blp:63
msgid "Show Hidden Games"
msgstr "Mostrar los juegos ocultos"
msgstr "Mostrar juegos ocultos"
#: data/gtk/help-overlay.blp:68
msgid "Remove Game"
msgstr "Eliminar el juego"
msgstr "Eliminar juego"
#: data/gtk/preferences.blp:12 data/gtk/preferences.blp:116
#: data/gtk/preferences.blp:381
@@ -257,7 +258,7 @@ msgstr "Importar juegos de GOG"
#: data/gtk/preferences.blp:220
msgid "Import Amazon Games"
msgstr "Importar de Amazon Games"
msgstr "Importar juegos de Amazon"
#: data/gtk/preferences.blp:224
msgid "Import Sideloaded Games"
@@ -299,7 +300,7 @@ msgstr "Importar lanzadores de juegos"
#: data/gtk/preferences.blp:357 cartridges/importer/desktop_source.py:215
msgid "Desktop Entries"
msgstr "Entradas en el escritorio"
msgstr "Entradas de escritorio"
#: data/gtk/preferences.blp:369 data/gtk/window.blp:537
msgid "SteamGridDB"
@@ -331,11 +332,11 @@ msgstr "Prefiero las imágenes animadas"
#: data/gtk/preferences.blp:399
msgid "Update Covers"
msgstr "Actualización de las portadas"
msgstr "Actualizar las portadas"
#: data/gtk/preferences.blp:400
msgid "Fetch covers for games already in your library"
msgstr "Busca las carátulas de los juegos de tu biblioteca"
msgstr "Busca las portadas de los juegos de su biblioteca"
#: data/gtk/preferences.blp:405
msgid "Update"
@@ -571,7 +572,7 @@ msgstr "Instalación no encontrada"
#: cartridges/preferences.py:346
msgid "Select a valid directory."
msgstr "Selecciona un directorio válido."
msgstr "Seleccione un directorio válido."
#: cartridges/preferences.py:382 cartridges/importer/importer.py:317
msgid "Warning"
@@ -579,7 +580,7 @@ msgstr "Advertencia"
#: cartridges/preferences.py:416
msgid "Invalid Directory"
msgstr "Directorio incorrecto"
msgstr "Directorio no válido"
#: cartridges/preferences.py:422
msgid "Set Location"
@@ -608,7 +609,7 @@ msgstr "1 juego importado"
#. The variable is the number of games
#: cartridges/importer/importer.py:383
msgid "{} games imported"
msgstr "0 juegos importados"
msgstr "{} juegos importados"
#. A single game removed
#: cartridges/importer/importer.py:387
@@ -618,26 +619,27 @@ msgstr "1 eliminado"
#. The variable is the name of the source
#: cartridges/importer/location.py:33
msgid "Select the {} cache directory."
msgstr "Seleccione el directorio de la caché {}."
msgstr "Seleccione el directorio de la caché de {}."
#. The variable is the name of the source
#: cartridges/importer/location.py:35
msgid "Select the {} configuration directory."
msgstr "Seleccione el directorio de configuración {}."
msgstr "Seleccione el directorio de configuración de {}."
#. The variable is the name of the source
#: cartridges/importer/location.py:37
msgid "Select the {} data directory."
msgstr "Seleccione el directorio de datos {}."
msgstr "Selecciona el directorio de los datos {}."
#: cartridges/importer/retroarch_source.py:129
msgid "No RetroArch Core Selected"
msgstr "No seleccionaste ningún núcleo para RetroArch"
msgstr "No hay ningún núcleo RetroArch seleccionado"
#. The variable is a newline separated list of playlists
#: cartridges/importer/retroarch_source.py:131
msgid "The following playlists have no default core:"
msgstr "Las siguientes listas de reproducción no tienen un núcleo por defecto:"
msgstr ""
"Las siguientes listas de reproducción no tienen un núcleo predeterminado:"
#: cartridges/importer/retroarch_source.py:133
msgid "Games with no core selected were not imported"
@@ -649,7 +651,7 @@ msgstr "No se ha podido autenticar SteamGridDB"
#: cartridges/store/managers/sgdb_manager.py:47
msgid "Verify your API key in preferences"
msgstr "Verifica tu clave API en las preferencias"
msgstr "Verifique su clave API en las preferencias"
#~ msgid "Library"
#~ msgstr "Biblioteca"

View File

@@ -6,13 +6,14 @@
# Kopimi <tatuus@tutanota.com>, 2023.
# Jiri Grönroos <jiri.gronroos@iki.fi>, 2023.
# kramo <contact@kramo.hu>, 2023.
# Scott Anecito <scott.anecito@linux.com>, 2024.
msgid ""
msgstr ""
"Project-Id-Version: cartridges\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-12-12 10:32+0100\n"
"PO-Revision-Date: 2023-11-03 22:32+0000\n"
"Last-Translator: Kimmo Kujansuu <mrkujansuu@gmail.com>\n"
"PO-Revision-Date: 2024-01-16 06:06+0000\n"
"Last-Translator: Scott Anecito <scott.anecito@linux.com>\n"
"Language-Team: Finnish <https://hosted.weblate.org/projects/cartridges/"
"cartridges/fi/>\n"
"Language: fi\n"
@@ -20,7 +21,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.2-dev\n"
"X-Generator: Weblate 5.4-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -427,11 +428,11 @@ msgstr "Tietoja - Cartridges"
#: data/gtk/window.blp:536
msgid "IGDB"
msgstr ""
msgstr "IGDB"
#: data/gtk/window.blp:538
msgid "ProtonDB"
msgstr ""
msgstr "ProtonDB"
#: data/gtk/window.blp:540
msgid "HowLongToBeat"

648
po/hi.po Normal file
View File

@@ -0,0 +1,648 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR kramo
# This file is distributed under the same license as the Cartridges package.
# Nitin Khalia <weblate.scrambled777@simplelogin.com>, 2024.
msgid ""
msgstr ""
"Project-Id-Version: Cartridges\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-12-12 10:32+0100\n"
"PO-Revision-Date: 2024-02-11 03:37+0000\n"
"Last-Translator: Nitin Khalia <weblate.scrambled777@simplelogin.com>\n"
"Language-Team: Hindi <https://hosted.weblate.org/projects/cartridges/"
"cartridges/hi/>\n"
"Language: hi\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 5.4-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6
#: data/hu.kramo.Cartridges.metainfo.xml.in:32 data/gtk/window.blp:47
#: data/gtk/window.blp:80 cartridges/main.py:205
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 ""
"गेमिंग;लॉन्चर;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 ""
"Cartridges आपके सभी गेम के लिए एक सरल गेम लॉन्चर है। इसमें बिना किसी लॉगिन "
"अवश्यक्ता के Steam, Lutris, Heroic और अन्य से गेम आयात करने का समर्थन है। आप "
"गेम को सॉर्ट और छिपा सकते हैं या SteamGridDB से कवर आर्ट डाउनलोड कर सकते हैं।"
#: data/hu.kramo.Cartridges.metainfo.xml.in:36 data/gtk/window.blp:290
#: cartridges/details_window.py:71
msgid "Game Details"
msgstr "गेम विवरण"
#: data/hu.kramo.Cartridges.metainfo.xml.in:40
msgid "Edit Game Details"
msgstr "गेम विवरण संपादित करें"
#: data/hu.kramo.Cartridges.metainfo.xml.in:44 data/gtk/help-overlay.blp:19
#: data/gtk/window.blp:516 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:102 data/gtk/game.blp:110 data/gtk/window.blp:417
msgid "Edit"
msgstr "संपादित करें"
#: data/gtk/game.blp:103 cartridges/window.py:350
msgid "Hide"
msgstr "छुपाएं"
#: data/gtk/game.blp:104 data/gtk/game.blp:112 data/gtk/window.blp:437
msgid "Remove"
msgstr "हटाएँ"
#: data/gtk/game.blp:111 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:200
#: data/gtk/window.blp:244 data/gtk/window.blp:260 data/gtk/window.blp:448
msgid "Search"
msgstr "खोजें"
#: data/gtk/help-overlay.blp:24 data/gtk/window.blp:517
msgid "Keyboard Shortcuts"
msgstr "कीबोर्ड शॉर्टकट"
#: data/gtk/help-overlay.blp:29 cartridges/game.py:103
#: cartridges/preferences.py:129 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:237
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:524
msgid "Add Game"
msgstr "गेम जोड़ें"
#: data/gtk/help-overlay.blp:58 data/gtk/preferences.blp:112
#: data/gtk/window.blp:27 data/gtk/window.blp:528
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:116
#: data/gtk/preferences.blp:381
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:47
msgid "Remove All Games"
msgstr "सभी गेम्स हटाएं"
#: data/gtk/preferences.blp:119
msgid "Remove Uninstalled Games"
msgstr "अनइंस्टॉल किए गए गेम्स हटाएं"
#: data/gtk/preferences.blp:124
msgid "Sources"
msgstr "स्रोत"
#: data/gtk/preferences.blp:127 cartridges/importer/steam_source.py:114
msgid "Steam"
msgstr "Steam"
#: data/gtk/preferences.blp:136 data/gtk/preferences.blp:158
#: data/gtk/preferences.blp:200 data/gtk/preferences.blp:238
#: data/gtk/preferences.blp:260 data/gtk/preferences.blp:282
#: data/gtk/preferences.blp:304
msgid "Install Location"
msgstr "इंस्टॉल जगह"
#: data/gtk/preferences.blp:149 data/gtk/window.blp:539
#: cartridges/importer/lutris_source.py:92
msgid "Lutris"
msgstr "Lutris"
#: data/gtk/preferences.blp:170
msgid "Cache Location"
msgstr "कैशे की जगह"
#: data/gtk/preferences.blp:182
msgid "Import Steam Games"
msgstr "Steam गेम्स आयात करें"
#: data/gtk/preferences.blp:186
msgid "Import Flatpak Games"
msgstr "Flatpak गेम्स आयात करें"
#: data/gtk/preferences.blp:191 cartridges/importer/heroic_source.py:355
msgid "Heroic"
msgstr "Heroic"
#: data/gtk/preferences.blp:212
msgid "Import Epic Games"
msgstr "Epic गेम्स आयात करें"
#: data/gtk/preferences.blp:216
msgid "Import GOG Games"
msgstr "GOG गेम्स आयात करें"
#: data/gtk/preferences.blp:220
msgid "Import Amazon Games"
msgstr "Amazon गेम्स आयात करें"
#: data/gtk/preferences.blp:224
msgid "Import Sideloaded Games"
msgstr "साइडलोडेड गेम्स आयात करें"
#: data/gtk/preferences.blp:229 cartridges/importer/bottles_source.py:86
msgid "Bottles"
msgstr "Bottles"
#: data/gtk/preferences.blp:251 cartridges/importer/itch_source.py:81
msgid "itch"
msgstr "itch"
#: data/gtk/preferences.blp:273 cartridges/importer/legendary_source.py:97
msgid "Legendary"
msgstr "Legendary"
#: data/gtk/preferences.blp:295 cartridges/importer/retroarch_source.py:142
msgid "RetroArch"
msgstr "RetroArch"
#: data/gtk/preferences.blp:317 cartridges/importer/flatpak_source.py:124
msgid "Flatpak"
msgstr "Flatpak"
#. The location of the system-wide data directory
#: data/gtk/preferences.blp:327
msgid "System Location"
msgstr "सिस्टम की जगह"
#. The location of the user-specific data directory
#: data/gtk/preferences.blp:340
msgid "User Location"
msgstr "उपयोगकर्ता की जगह"
#: data/gtk/preferences.blp:352
msgid "Import Game Launchers"
msgstr "गेम लॉन्चर आयात करें"
#: data/gtk/preferences.blp:357 cartridges/importer/desktop_source.py:215
msgid "Desktop Entries"
msgstr "डेस्कटॉप प्रविष्टियाँ"
#: data/gtk/preferences.blp:369 data/gtk/window.blp:537
msgid "SteamGridDB"
msgstr "SteamGridDB"
#: data/gtk/preferences.blp:373
msgid "Authentication"
msgstr "प्रमाणीकरण"
#: data/gtk/preferences.blp:376
msgid "API Key"
msgstr "API कुंजी"
#: data/gtk/preferences.blp:384
msgid "Use SteamGridDB"
msgstr "SteamGridDB का प्रयोग करें"
#: data/gtk/preferences.blp:385
msgid "Download images when adding or importing games"
msgstr "गेम जोड़ते या आयात करते समय छवियां डाउनलोड करें"
#: data/gtk/preferences.blp:389
msgid "Prefer Over Official Images"
msgstr "आधिकारिक छवियों से अधिक प्राथमिकता दें"
#: data/gtk/preferences.blp:393
msgid "Prefer Animated Images"
msgstr "एनिमेटेड छवियों को प्राथमिकता दें"
#: data/gtk/preferences.blp:399
msgid "Update Covers"
msgstr "कवर अपडेट करें"
#: data/gtk/preferences.blp:400
msgid "Fetch covers for games already in your library"
msgstr "अपनी लाइब्रेरी में पहले से ही गेम के लिए कवर प्राप्त करें"
#: data/gtk/preferences.blp:405
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:226
msgid "All Games"
msgstr "सभी गेम्स"
#: data/gtk/window.blp:126 cartridges/main.py:228
msgid "Added"
msgstr "जोड़ा गया"
#: data/gtk/window.blp:141
msgid "Imported"
msgstr "आयातित"
#: data/gtk/window.blp:230
msgid "Hidden Games"
msgstr "छुपे हुए गेम्स"
#: data/gtk/window.blp:341
msgid "Game Title"
msgstr "गेम शीर्षक"
#: data/gtk/window.blp:398
msgid "Play"
msgstr "खेलें"
#: data/gtk/window.blp:475
msgid "Sort"
msgstr "क्रमबद्ध करें"
#: data/gtk/window.blp:478
msgid "A-Z"
msgstr "A-Z"
#: data/gtk/window.blp:484
msgid "Z-A"
msgstr "Z-A"
#: data/gtk/window.blp:490
msgid "Newest"
msgstr "नवीनतम"
#: data/gtk/window.blp:496
msgid "Oldest"
msgstr "सबसे पुराने"
#: data/gtk/window.blp:502
msgid "Last Played"
msgstr "अंतिम बार खेला गया"
#: data/gtk/window.blp:509
msgid "Show Hidden"
msgstr "छुपा हुआ दिखाए"
#: data/gtk/window.blp:518
msgid "About Cartridges"
msgstr "Cartridges के बारे में"
#: data/gtk/window.blp:536
msgid "IGDB"
msgstr "IGDB"
#: data/gtk/window.blp:538
msgid "ProtonDB"
msgstr "ProtonDB"
#: data/gtk/window.blp:540
msgid "HowLongToBeat"
msgstr "HowLongToBeat"
#. The variable is the title of the game
#: cartridges/main.py:206 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:269
msgid "translator_credits"
msgstr "Scrambled777 <weblate.scrambled777@simplelogin.com>"
#. 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 "फाइल.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 "Executable खाली नहीं हो सकता।"
#: 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:128
msgid "All games removed"
msgstr "सभी गेम्स हटा दिए गए"
#: cartridges/preferences.py:176
msgid ""
"An API key is required to use SteamGridDB. You can generate one {}here{}."
msgstr ""
"SteamGridDB का उपयोग करने के लिए API कुंजी की आवश्यकता होती है। आप {}यहां{} "
"एक उत्पन्न कर सकते हैं।"
#: cartridges/preferences.py:191
msgid "Downloading covers…"
msgstr "कवर डाउनलोड हो रहा है…"
#: cartridges/preferences.py:210
msgid "Covers updated"
msgstr "कवर अप्डैटिड"
#: cartridges/preferences.py:345
msgid "Installation Not Found"
msgstr "इंस्टालेशन नहीं मिला"
#: cartridges/preferences.py:346
msgid "Select a valid directory."
msgstr "एक वैध डॉयरेक्टरी का चयन करें।"
#: cartridges/preferences.py:382 cartridges/importer/importer.py:317
msgid "Warning"
msgstr "चेतावनी"
#: cartridges/preferences.py:416
msgid "Invalid Directory"
msgstr "अवैध डॉयरेक्टरी"
#: cartridges/preferences.py:422
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

@@ -3,13 +3,13 @@
# This file is distributed under the same license as the cartridges package.
# kramo, 2023.
#
# kramo <contact@kramo.hu>, 2023.
# kramo <contact@kramo.hu>, 2023, 2024.
msgid ""
msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-12-12 10:32+0100\n"
"PO-Revision-Date: 2023-12-12 09:33+0000\n"
"PO-Revision-Date: 2024-01-28 19:06+0000\n"
"Last-Translator: kramo <contact@kramo.hu>\n"
"Language-Team: Hungarian <https://hosted.weblate.org/projects/cartridges/"
"cartridges/hu/>\n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.3-dev\n"
"X-Generator: Weblate 5.4-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -438,7 +438,7 @@ msgstr "{} elindítva"
#. Translators: Replace this with your name for it to show up in the about window
#: cartridges/main.py:269
msgid "translator_credits"
msgstr "kramo https://kramo.hu"
msgstr "kramo https://kramo.page"
#. The variable is the date when the game was added
#: cartridges/window.py:373

View File

@@ -5,13 +5,14 @@
# albanobattistella <albano_battistella@hotmail.com>, 2023.
# kramo <contact@kramo.hu>, 2023.
# Giasko <dibiame@hotmail.it>, 2023.
# Andrea Costola <lamaildiandreac@gmail.com>, 2024.
msgid ""
msgstr ""
"Project-Id-Version: cartridges\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-12-12 10:32+0100\n"
"PO-Revision-Date: 2023-12-26 16:08+0000\n"
"Last-Translator: albanobattistella <albano_battistella@hotmail.com>\n"
"PO-Revision-Date: 2024-02-24 08:02+0000\n"
"Last-Translator: Andrea Costola <lamaildiandreac@gmail.com>\n"
"Language-Team: Italian <https://hosted.weblate.org/projects/cartridges/"
"cartridges/it/>\n"
"Language: it\n"
@@ -19,7 +20,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.4-dev\n"
"X-Generator: Weblate 5.5-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -423,7 +424,7 @@ msgstr "Informazioni su Cartucce"
#: data/gtk/window.blp:536
msgid "IGDB"
msgstr ""
msgstr "IGDB"
#: data/gtk/window.blp:538
msgid "ProtonDB"

632
po/ja.po Normal file
View File

@@ -0,0 +1,632 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR kramo
# This file is distributed under the same license as the Cartridges package.
# Scott Anecito <scott.anecito@linux.com>, 2024.
msgid ""
msgstr ""
"Project-Id-Version: Cartridges\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-12-12 10:32+0100\n"
"PO-Revision-Date: 2024-01-16 06:06+0000\n"
"Last-Translator: Scott Anecito <scott.anecito@linux.com>\n"
"Language-Team: Japanese <https://hosted.weblate.org/projects/cartridges/"
"cartridges/ja/>\n"
"Language: ja\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.4-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6
#: data/hu.kramo.Cartridges.metainfo.xml.in:32 data/gtk/window.blp:47
#: data/gtk/window.blp:80 cartridges/main.py:205
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 ""
#: 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:36 data/gtk/window.blp:290
#: cartridges/details_window.py:71
msgid "Game Details"
msgstr ""
#: data/hu.kramo.Cartridges.metainfo.xml.in:40
msgid "Edit Game Details"
msgstr ""
#: data/hu.kramo.Cartridges.metainfo.xml.in:44 data/gtk/help-overlay.blp:19
#: data/gtk/window.blp:516 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:102 data/gtk/game.blp:110 data/gtk/window.blp:417
msgid "Edit"
msgstr ""
#: data/gtk/game.blp:103 cartridges/window.py:350
msgid "Hide"
msgstr ""
#: data/gtk/game.blp:104 data/gtk/game.blp:112 data/gtk/window.blp:437
msgid "Remove"
msgstr ""
#: data/gtk/game.blp:111 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:200
#: data/gtk/window.blp:244 data/gtk/window.blp:260 data/gtk/window.blp:448
msgid "Search"
msgstr ""
#: data/gtk/help-overlay.blp:24 data/gtk/window.blp:517
msgid "Keyboard Shortcuts"
msgstr ""
#: data/gtk/help-overlay.blp:29 cartridges/game.py:103
#: cartridges/preferences.py:129 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:237
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:524
msgid "Add Game"
msgstr ""
#: data/gtk/help-overlay.blp:58 data/gtk/preferences.blp:112
#: data/gtk/window.blp:27 data/gtk/window.blp:528
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:116
#: data/gtk/preferences.blp:381
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:47
msgid "Remove All Games"
msgstr ""
#: data/gtk/preferences.blp:119
msgid "Remove Uninstalled Games"
msgstr ""
#: data/gtk/preferences.blp:124
msgid "Sources"
msgstr ""
#: data/gtk/preferences.blp:127 cartridges/importer/steam_source.py:114
msgid "Steam"
msgstr ""
#: data/gtk/preferences.blp:136 data/gtk/preferences.blp:158
#: data/gtk/preferences.blp:200 data/gtk/preferences.blp:238
#: data/gtk/preferences.blp:260 data/gtk/preferences.blp:282
#: data/gtk/preferences.blp:304
msgid "Install Location"
msgstr ""
#: data/gtk/preferences.blp:149 data/gtk/window.blp:539
#: cartridges/importer/lutris_source.py:92
msgid "Lutris"
msgstr ""
#: data/gtk/preferences.blp:170
msgid "Cache Location"
msgstr ""
#: data/gtk/preferences.blp:182
msgid "Import Steam Games"
msgstr ""
#: data/gtk/preferences.blp:186
msgid "Import Flatpak Games"
msgstr ""
#: data/gtk/preferences.blp:191 cartridges/importer/heroic_source.py:355
msgid "Heroic"
msgstr ""
#: data/gtk/preferences.blp:212
msgid "Import Epic Games"
msgstr ""
#: data/gtk/preferences.blp:216
msgid "Import GOG Games"
msgstr ""
#: data/gtk/preferences.blp:220
msgid "Import Amazon Games"
msgstr ""
#: data/gtk/preferences.blp:224
msgid "Import Sideloaded Games"
msgstr ""
#: data/gtk/preferences.blp:229 cartridges/importer/bottles_source.py:86
msgid "Bottles"
msgstr ""
#: data/gtk/preferences.blp:251 cartridges/importer/itch_source.py:81
msgid "itch"
msgstr ""
#: data/gtk/preferences.blp:273 cartridges/importer/legendary_source.py:97
msgid "Legendary"
msgstr ""
#: data/gtk/preferences.blp:295 cartridges/importer/retroarch_source.py:142
msgid "RetroArch"
msgstr ""
#: data/gtk/preferences.blp:317 cartridges/importer/flatpak_source.py:124
msgid "Flatpak"
msgstr ""
#. The location of the system-wide data directory
#: data/gtk/preferences.blp:327
msgid "System Location"
msgstr ""
#. The location of the user-specific data directory
#: data/gtk/preferences.blp:340
msgid "User Location"
msgstr ""
#: data/gtk/preferences.blp:352
msgid "Import Game Launchers"
msgstr ""
#: data/gtk/preferences.blp:357 cartridges/importer/desktop_source.py:215
msgid "Desktop Entries"
msgstr ""
#: data/gtk/preferences.blp:369 data/gtk/window.blp:537
msgid "SteamGridDB"
msgstr ""
#: data/gtk/preferences.blp:373
msgid "Authentication"
msgstr ""
#: data/gtk/preferences.blp:376
msgid "API Key"
msgstr ""
#: data/gtk/preferences.blp:384
msgid "Use SteamGridDB"
msgstr ""
#: data/gtk/preferences.blp:385
msgid "Download images when adding or importing games"
msgstr ""
#: data/gtk/preferences.blp:389
msgid "Prefer Over Official Images"
msgstr ""
#: data/gtk/preferences.blp:393
msgid "Prefer Animated Images"
msgstr ""
#: data/gtk/preferences.blp:399
msgid "Update Covers"
msgstr ""
#: data/gtk/preferences.blp:400
msgid "Fetch covers for games already in your library"
msgstr ""
#: data/gtk/preferences.blp:405
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:226
msgid "All Games"
msgstr ""
#: data/gtk/window.blp:126 cartridges/main.py:228
msgid "Added"
msgstr ""
#: data/gtk/window.blp:141
msgid "Imported"
msgstr ""
#: data/gtk/window.blp:230
msgid "Hidden Games"
msgstr ""
#: data/gtk/window.blp:341
msgid "Game Title"
msgstr ""
#: data/gtk/window.blp:398
msgid "Play"
msgstr ""
#: data/gtk/window.blp:475
msgid "Sort"
msgstr ""
#: data/gtk/window.blp:478
msgid "A-Z"
msgstr ""
#: data/gtk/window.blp:484
msgid "Z-A"
msgstr ""
#: data/gtk/window.blp:490
msgid "Newest"
msgstr ""
#: data/gtk/window.blp:496
msgid "Oldest"
msgstr ""
#: data/gtk/window.blp:502
msgid "Last Played"
msgstr ""
#: data/gtk/window.blp:509
msgid "Show Hidden"
msgstr ""
#: data/gtk/window.blp:518
msgid "About Cartridges"
msgstr ""
#: data/gtk/window.blp:536
msgid "IGDB"
msgstr "IGDB"
#: data/gtk/window.blp:538
msgid "ProtonDB"
msgstr "ProtonDB"
#: data/gtk/window.blp:540
msgid "HowLongToBeat"
msgstr ""
#. The variable is the title of the game
#: cartridges/main.py:206 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:269
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 "ファイル.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 ""
#. 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:128
msgid "All games removed"
msgstr ""
#: cartridges/preferences.py:176
msgid ""
"An API key is required to use SteamGridDB. You can generate one {}here{}."
msgstr ""
#: cartridges/preferences.py:191
msgid "Downloading covers…"
msgstr ""
#: cartridges/preferences.py:210
msgid "Covers updated"
msgstr ""
#: cartridges/preferences.py:345
msgid "Installation Not Found"
msgstr ""
#: cartridges/preferences.py:346
msgid "Select a valid directory."
msgstr ""
#: cartridges/preferences.py:382 cartridges/importer/importer.py:317
msgid "Warning"
msgstr "警告"
#: cartridges/preferences.py:416
msgid "Invalid Directory"
msgstr ""
#: cartridges/preferences.py:422
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 ""

315
po/ko.po
View File

@@ -2,13 +2,14 @@
# Copyright (C) YEAR kramo
# This file is distributed under the same license as the Cartridges package.
# MJKim <kmj10727@gmail.com>, 2023.
# Seong-ho Cho <darkcircle.0426@gmail.com>, 2024.
msgid ""
msgstr ""
"Project-Id-Version: Cartridges\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-12-12 10:32+0100\n"
"PO-Revision-Date: 2023-03-28 22:23+0000\n"
"Last-Translator: MJKim <kmj10727@gmail.com>\n"
"PO-Revision-Date: 2024-03-02 19:01+0000\n"
"Last-Translator: Seong-ho Cho <darkcircle.0426@gmail.com>\n"
"Language-Team: Korean <https://hosted.weblate.org/projects/cartridges/"
"cartridges/ko/>\n"
"Language: ko\n"
@@ -16,7 +17,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 4.17-dev\n"
"X-Generator: Weblate 5.5-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -38,371 +39,353 @@ msgstr "모든 게임을 실행합니다"
msgid ""
"gaming;launcher;steam;lutris;heroic;bottles;itch;flatpak;legendary;retroarch;"
msgstr ""
"gaming;게임;게이밍;launcher;실행기;실행프로그램;steam;스팀;lutris;루트리스;he"
"roic;히어로익;bottles;보틀즈;itch;잇치;flatpak;플랫팩;legendary;레젠더리;retr"
"oarch;레트로아키;"
#: 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 ""
"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, Heroic 및 Bottles"
"에서 게임을 가져올 수 있습니다."
"카트리지는 간단한 게임 실행 프로그램입니다. 스팀, 루트리스, 히어로익 등의 "
"사이트에서 로그인을 하지 않고 게임을 가져올 수 있습니다. 게임을 정리하고 "
"숨기거나, SteamGridDB에서 표지를 다운로드할 수 있습니다."
#: data/hu.kramo.Cartridges.metainfo.xml.in:36 data/gtk/window.blp:290
#: cartridges/details_window.py:71
msgid "Game Details"
msgstr ""
msgstr "게임 세부 정보"
#: data/hu.kramo.Cartridges.metainfo.xml.in:40
msgid "Edit Game Details"
msgstr ""
msgstr "게임 세부 정보 편집"
#: data/hu.kramo.Cartridges.metainfo.xml.in:44 data/gtk/help-overlay.blp:19
#: data/gtk/window.blp:516 cartridges/details_window.py:271
#: cartridges/importer/importer.py:319 cartridges/importer/importer.py:370
msgid "Preferences"
msgstr ""
msgstr "기본 설정"
#: data/gtk/details-window.blp:25
msgid "Cancel"
msgstr ""
msgstr "취소"
#: data/gtk/details-window.blp:55
msgid "New Cover"
msgstr ""
msgstr "새 표지"
#: data/gtk/details-window.blp:73
msgid "Delete Cover"
msgstr ""
msgstr "표지 삭제"
#: data/gtk/details-window.blp:100 data/gtk/game.blp:81
msgid "Title"
msgstr ""
msgstr "제목"
#: data/gtk/details-window.blp:103
msgid "Developer (optional)"
msgstr ""
msgstr "개발자 (옵션)"
#: data/gtk/details-window.blp:108
msgid "Executable"
msgstr ""
msgstr "실행 가능"
#: data/gtk/details-window.blp:114
msgid "Select File"
msgstr ""
msgstr "파일 선택"
#: data/gtk/details-window.blp:125
msgid "More Info"
msgstr ""
msgstr "추가 정보"
#: data/gtk/game.blp:102 data/gtk/game.blp:110 data/gtk/window.blp:417
msgid "Edit"
msgstr ""
msgstr "편집"
#: data/gtk/game.blp:103 cartridges/window.py:350
msgid "Hide"
msgstr ""
msgstr "숨기기"
#: data/gtk/game.blp:104 data/gtk/game.blp:112 data/gtk/window.blp:437
msgid "Remove"
msgstr ""
msgstr "제거"
#: data/gtk/game.blp:111 cartridges/window.py:352
msgid "Unhide"
msgstr ""
msgstr "숨기기 취소"
#: data/gtk/help-overlay.blp:11 data/gtk/preferences.blp:8
msgid "General"
msgstr ""
msgstr "일반"
#: data/gtk/help-overlay.blp:14 data/gtk/window.blp:184 data/gtk/window.blp:200
#: data/gtk/window.blp:244 data/gtk/window.blp:260 data/gtk/window.blp:448
msgid "Search"
msgstr ""
msgstr "검색"
#: data/gtk/help-overlay.blp:24 data/gtk/window.blp:517
msgid "Keyboard Shortcuts"
msgstr ""
msgstr "키보드 바로 가기 키"
#: data/gtk/help-overlay.blp:29 cartridges/game.py:103
#: cartridges/preferences.py:129 cartridges/importer/importer.py:394
msgid "Undo"
msgstr ""
msgstr "실행 취소"
#: data/gtk/help-overlay.blp:34
msgid "Quit"
msgstr ""
msgstr "끝내기"
#: data/gtk/help-overlay.blp:39 data/gtk/window.blp:88 data/gtk/window.blp:164
msgid "Toggle Sidebar"
msgstr ""
msgstr "가장 자리 창 표시 전환"
#: data/gtk/help-overlay.blp:44 data/gtk/window.blp:177 data/gtk/window.blp:237
msgid "Main Menu"
msgstr ""
msgstr "메인 메뉴"
#: data/gtk/help-overlay.blp:50
#, fuzzy
#| msgid "No Games"
msgid "Games"
msgstr "게임이 없습니다"
msgstr "게임"
#: data/gtk/help-overlay.blp:53 data/gtk/window.blp:170 data/gtk/window.blp:524
msgid "Add Game"
msgstr ""
msgstr "게임 추가"
#: data/gtk/help-overlay.blp:58 data/gtk/preferences.blp:112
#: data/gtk/window.blp:27 data/gtk/window.blp:528
msgid "Import"
msgstr ""
msgstr "가져오기"
#: data/gtk/help-overlay.blp:63
msgid "Show Hidden Games"
msgstr ""
msgstr "숨긴 게임 표시"
#: data/gtk/help-overlay.blp:68
#, fuzzy
#| msgid "No Games"
msgid "Remove Game"
msgstr "게임이 없습니다"
msgstr "게임 제거"
#: data/gtk/preferences.blp:12 data/gtk/preferences.blp:116
#: data/gtk/preferences.blp:381
msgid "Behavior"
msgstr ""
msgstr "동작"
#: data/gtk/preferences.blp:15
msgid "Exit After Launching Games"
msgstr ""
msgstr "게임 실행 후 나가기"
#: data/gtk/preferences.blp:19
msgid "Cover Image Launches Game"
msgstr ""
msgstr "표지 그림 선택시 게임 실행"
#: data/gtk/preferences.blp:20
msgid "Swaps the behavior of the cover image and the play button"
msgstr ""
msgstr "표지 그림과 게임하기 단추 동작 바꾸기"
#: data/gtk/preferences.blp:25 cartridges/details_window.py:85
msgid "Images"
msgstr ""
msgstr "그림"
#: data/gtk/preferences.blp:28
msgid "High Quality Images"
msgstr ""
msgstr "고화질 그림"
#: data/gtk/preferences.blp:29
msgid "Save game covers losslessly at the cost of storage"
msgstr ""
msgstr "게임 표지를 화질 손실 없도록 저장소를 충분히 할애하여 저장"
#: data/gtk/preferences.blp:34
msgid "Danger Zone"
msgstr ""
msgstr "위험 영역"
#: data/gtk/preferences.blp:47
msgid "Remove All Games"
msgstr ""
msgstr "모든 게임 제거"
#: data/gtk/preferences.blp:119
msgid "Remove Uninstalled Games"
msgstr ""
msgstr "설치 취소한 게임 제거"
#: data/gtk/preferences.blp:124
msgid "Sources"
msgstr ""
msgstr "공급원"
#: data/gtk/preferences.blp:127 cartridges/importer/steam_source.py:114
msgid "Steam"
msgstr ""
msgstr "스팀"
#: data/gtk/preferences.blp:136 data/gtk/preferences.blp:158
#: data/gtk/preferences.blp:200 data/gtk/preferences.blp:238
#: data/gtk/preferences.blp:260 data/gtk/preferences.blp:282
#: data/gtk/preferences.blp:304
msgid "Install Location"
msgstr ""
msgstr "설치 위치"
#: data/gtk/preferences.blp:149 data/gtk/window.blp:539
#: cartridges/importer/lutris_source.py:92
msgid "Lutris"
msgstr ""
msgstr "루트리스"
#: data/gtk/preferences.blp:170
msgid "Cache Location"
msgstr ""
msgstr "캐시 위치"
#: data/gtk/preferences.blp:182
#, fuzzy
#| msgid "No Games"
msgid "Import Steam Games"
msgstr "게임이 없습니다"
msgstr "스팀 게임 가져오기"
#: data/gtk/preferences.blp:186
#, fuzzy
#| msgid "No Games"
msgid "Import Flatpak Games"
msgstr "게임이 없습니다"
msgstr "플랫팩 게임 가져오기"
#: data/gtk/preferences.blp:191 cartridges/importer/heroic_source.py:355
msgid "Heroic"
msgstr ""
msgstr "히어로익"
#: data/gtk/preferences.blp:212
msgid "Import Epic Games"
msgstr ""
msgstr "에픽 게임 가져오기"
#: data/gtk/preferences.blp:216
msgid "Import GOG Games"
msgstr ""
msgstr "GOG 게임 가져오기"
#: data/gtk/preferences.blp:220
#, fuzzy
#| msgid "No Games"
msgid "Import Amazon Games"
msgstr "게임이 없습니다"
msgstr "아마존 게임 가져오기"
#: data/gtk/preferences.blp:224
msgid "Import Sideloaded Games"
msgstr ""
msgstr "사이드로디드 게임 가져오기"
#: data/gtk/preferences.blp:229 cartridges/importer/bottles_source.py:86
msgid "Bottles"
msgstr ""
msgstr "보틀즈"
#: data/gtk/preferences.blp:251 cartridges/importer/itch_source.py:81
msgid "itch"
msgstr ""
msgstr "잇치"
#: data/gtk/preferences.blp:273 cartridges/importer/legendary_source.py:97
msgid "Legendary"
msgstr ""
msgstr "레젠더리"
#: data/gtk/preferences.blp:295 cartridges/importer/retroarch_source.py:142
msgid "RetroArch"
msgstr ""
msgstr "레트로아키"
#: data/gtk/preferences.blp:317 cartridges/importer/flatpak_source.py:124
msgid "Flatpak"
msgstr ""
msgstr "플랫팩"
#. The location of the system-wide data directory
#: data/gtk/preferences.blp:327
msgid "System Location"
msgstr ""
msgstr "시스템 위치"
#. The location of the user-specific data directory
#: data/gtk/preferences.blp:340
msgid "User Location"
msgstr ""
msgstr "사용자 위치"
#: data/gtk/preferences.blp:352
#, fuzzy
#| msgid "Game Launcher"
msgid "Import Game Launchers"
msgstr "게임 런처"
msgstr "게임 실행 프로그램 가져오기"
#: data/gtk/preferences.blp:357 cartridges/importer/desktop_source.py:215
msgid "Desktop Entries"
msgstr ""
msgstr "데스크톱 항목"
#: data/gtk/preferences.blp:369 data/gtk/window.blp:537
msgid "SteamGridDB"
msgstr ""
msgstr "SteamGridDB"
#: data/gtk/preferences.blp:373
msgid "Authentication"
msgstr ""
msgstr "인증"
#: data/gtk/preferences.blp:376
msgid "API Key"
msgstr ""
msgstr "API 키"
#: data/gtk/preferences.blp:384
msgid "Use SteamGridDB"
msgstr ""
msgstr "SteamGridDB 활용"
#: data/gtk/preferences.blp:385
msgid "Download images when adding or importing games"
msgstr ""
msgstr "게임을 추가하거나 가져올 때 표지 그림 다운로드"
#: data/gtk/preferences.blp:389
msgid "Prefer Over Official Images"
msgstr ""
msgstr "공식 그림 우선"
#: data/gtk/preferences.blp:393
msgid "Prefer Animated Images"
msgstr ""
msgstr "움직이는 그림 우선"
#: data/gtk/preferences.blp:399
msgid "Update Covers"
msgstr ""
msgstr "표지 그림 업데이트"
#: data/gtk/preferences.blp:400
msgid "Fetch covers for games already in your library"
msgstr ""
msgstr "라이브러리에 이미 있는 게임 표지 그림 가져오기"
#: data/gtk/preferences.blp:405
msgid "Update"
msgstr ""
msgstr "업데이트"
#: data/gtk/window.blp:6 data/gtk/window.blp:14
msgid "No Games Found"
msgstr ""
msgstr "게임 없음"
#: data/gtk/window.blp:7 data/gtk/window.blp:15
msgid "Try a different search."
msgstr ""
msgstr "다른 단어로 검색해보십시오."
#: data/gtk/window.blp:21
msgid "No Games"
msgstr "게임습니다"
msgstr "게임 없"
#: data/gtk/window.blp:22
msgid "Use the + button to add games."
msgstr ""
msgstr "게임을 추가하려면 + 단추를 사용하십시오."
#: data/gtk/window.blp:40
msgid "No Hidden Games"
msgstr ""
msgstr "숨긴 게임 없음"
#: data/gtk/window.blp:41
msgid "Games you hide will appear here."
msgstr ""
msgstr "숨긴 게임이 이곳에 나타납니다."
#: data/gtk/window.blp:75 data/gtk/window.blp:106 cartridges/main.py:226
#, fuzzy
#| msgid "No Games"
msgid "All Games"
msgstr "게임이 없습니다"
msgstr "모든 게임"
#: data/gtk/window.blp:126 cartridges/main.py:228
msgid "Added"
msgstr ""
msgstr "추가함"
#: data/gtk/window.blp:141
#, fuzzy
#| msgid "No Games"
msgid "Imported"
msgstr "게임이 없습니다"
msgstr "가져옴"
#: data/gtk/window.blp:230
msgid "Hidden Games"
msgstr ""
msgstr "숨긴 게임"
#: data/gtk/window.blp:341
msgid "Game Title"
msgstr ""
msgstr "게임 제목"
#: data/gtk/window.blp:398
msgid "Play"
msgstr ""
msgstr "게임하기"
#: data/gtk/window.blp:475
msgid "Sort"
@@ -410,27 +393,27 @@ msgstr "정렬"
#: data/gtk/window.blp:478
msgid "A-Z"
msgstr ""
msgstr "오름차순"
#: data/gtk/window.blp:484
msgid "Z-A"
msgstr ""
msgstr "내림차순"
#: data/gtk/window.blp:490
msgid "Newest"
msgstr ""
msgstr "최신순"
#: data/gtk/window.blp:496
msgid "Oldest"
msgstr ""
msgstr "과거순"
#: data/gtk/window.blp:502
msgid "Last Played"
msgstr ""
msgstr "최근 플레이"
#: data/gtk/window.blp:509
msgid "Show Hidden"
msgstr ""
msgstr "숨긴 게임 표시"
#: data/gtk/window.blp:518
msgid "About Cartridges"
@@ -438,75 +421,75 @@ msgstr "카트리지 정보"
#: data/gtk/window.blp:536
msgid "IGDB"
msgstr ""
msgstr "IGDB"
#: data/gtk/window.blp:538
msgid "ProtonDB"
msgstr ""
msgstr "ProtonDB"
#: data/gtk/window.blp:540
msgid "HowLongToBeat"
msgstr ""
msgstr "HowLongToBeat"
#. The variable is the title of the game
#: cartridges/main.py:206 cartridges/game.py:125
msgid "{} launched"
msgstr ""
msgstr "{} 실행함"
#. Translators: Replace this with your name for it to show up in the about window
#: cartridges/main.py:269
msgid "translator_credits"
msgstr ""
msgstr "조성호 <shcho@gnome.org>"
#. The variable is the date when the game was added
#: cartridges/window.py:373
msgid "Added: {}"
msgstr ""
msgstr "추가: {}"
#: cartridges/window.py:376
msgid "Never"
msgstr ""
msgstr "안함"
#. The variable is the date when the game was last played
#: cartridges/window.py:380
msgid "Last played: {}"
msgstr ""
msgstr "최근 플레이: {}"
#: cartridges/details_window.py:76
msgid "Apply"
msgstr ""
msgstr "적용"
#: cartridges/details_window.py:82
msgid "Add New Game"
msgstr ""
msgstr "새 게임 추가"
#: cartridges/details_window.py:83
msgid "Add"
msgstr ""
msgstr "추가"
#: cartridges/details_window.py:93
msgid "Executables"
msgstr ""
msgstr "실행 파일"
#. Translate this string as you would translate "file"
#: cartridges/details_window.py:108
msgid "file.txt"
msgstr ""
msgstr "file.txt"
#. As in software
#: cartridges/details_window.py:110
msgid "program"
msgstr ""
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 ""
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 ""
msgstr "/디렉터리/경로/{}"
#: cartridges/details_window.py:128
msgid ""
@@ -520,142 +503,150 @@ msgid ""
"\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 ""
msgstr "게임을 추가할 수 없습니다"
#: cartridges/details_window.py:171 cartridges/details_window.py:213
msgid "Game title cannot be empty."
msgstr ""
msgstr "게임 제목은 비워둘 수 없습니다."
#: cartridges/details_window.py:177 cartridges/details_window.py:221
msgid "Executable cannot be empty."
msgstr ""
msgstr "실행 파일을 비워둘 수 없습니다."
#: cartridges/details_window.py:212 cartridges/details_window.py:220
msgid "Couldn't Apply Preferences"
msgstr ""
msgstr "기본 설정을 적용할 수 없습니다"
#. The variable is the title of the game
#: cartridges/game.py:139
msgid "{} hidden"
msgstr ""
msgstr "{} 숨김"
#: cartridges/game.py:139
msgid "{} unhidden"
msgstr ""
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 ""
msgstr "{} 제거함"
#: cartridges/preferences.py:128
msgid "All games removed"
msgstr ""
msgstr "모든 게임을 제거했습니다"
#: cartridges/preferences.py:176
msgid ""
"An API key is required to use SteamGridDB. You can generate one {}here{}."
msgstr ""
msgstr "SteamGridDB를 활용하려면 API 키가 필요합니다. {}여기{}에서 만들 수 있습니다."
#: cartridges/preferences.py:191
msgid "Downloading covers…"
msgstr ""
msgstr "표지 그림 다운로드 중…"
#: cartridges/preferences.py:210
msgid "Covers updated"
msgstr ""
msgstr "표지 그림을 업데이트했습니다"
#: cartridges/preferences.py:345
msgid "Installation Not Found"
msgstr ""
msgstr "설치한 항목이 없습니다"
#: cartridges/preferences.py:346
msgid "Select a valid directory."
msgstr ""
msgstr "올바른 디렉터리를 선택하십시오."
#: cartridges/preferences.py:382 cartridges/importer/importer.py:317
msgid "Warning"
msgstr ""
msgstr "경고"
#: cartridges/preferences.py:416
msgid "Invalid Directory"
msgstr ""
msgstr "부적절한 디렉터리"
#: cartridges/preferences.py:422
msgid "Set Location"
msgstr ""
msgstr "위치 설정"
#: cartridges/utils/create_dialog.py:33 cartridges/importer/importer.py:318
msgid "Dismiss"
msgstr ""
msgstr "버리기"
#: cartridges/importer/importer.py:145
#, fuzzy
#| msgid "No Games"
msgid "Importing Games…"
msgstr "게임이 없습니다"
msgstr "게임 가져오는 중…"
#: cartridges/importer/importer.py:338
msgid "The following errors occured during import:"
msgstr ""
msgstr "가져오는 동안 다음 오류가 나타났습니다:"
#: cartridges/importer/importer.py:367
msgid "No new games found"
msgstr ""
msgstr "새 게임이 없습니다"
#: cartridges/importer/importer.py:379
msgid "1 game imported"
msgstr ""
msgstr "게임 1건을 가져왔습니다"
#. The variable is the number of games
#: cartridges/importer/importer.py:383
msgid "{} games imported"
msgstr ""
msgstr "게임 {}건을 가져왔습니다"
#. A single game removed
#: cartridges/importer/importer.py:387
msgid "1 removed"
msgstr ""
msgstr "1건을 제거했습니다"
#. The variable is the name of the source
#: cartridges/importer/location.py:33
msgid "Select the {} cache directory."
msgstr ""
msgstr "{} 캐시 디렉터리를 선택하십시오."
#. The variable is the name of the source
#: cartridges/importer/location.py:35
msgid "Select the {} configuration directory."
msgstr ""
msgstr "{} 설정 디렉터리를 선택하십시오."
#. The variable is the name of the source
#: cartridges/importer/location.py:37
msgid "Select the {} data directory."
msgstr ""
msgstr "{} 데이터 디렉터리를 선택하십시오."
#: cartridges/importer/retroarch_source.py:129
msgid "No RetroArch Core Selected"
msgstr ""
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 ""
msgstr "다음 플레이 목록에 기본 코어가 없습니다:"
#: cartridges/importer/retroarch_source.py:133
msgid "Games with no core selected were not imported"
msgstr ""
msgstr "코어를 선택하지 않은 게임을 가져오지 않았습니다"
#: cartridges/store/managers/sgdb_manager.py:46
msgid "Couldn't Authenticate SteamGridDB"
msgstr ""
msgstr "SteamGridDB를 인증할 수 없습니다"
#: cartridges/store/managers/sgdb_manager.py:47
msgid "Verify your API key in preferences"
msgstr ""
msgstr "기본 설정에서 API 키를 검증하십시오"
#~ msgid "Library"
#~ msgstr "라이브러리"

View File

@@ -1,14 +1,14 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
# This file is distributed under the same license as the cartridges package.
# Philip Goto <philip.goto@gmail.com>, 2023.
# Philip Goto <philip.goto@gmail.com>, 2023, 2024.
# kramo <contact@kramo.hu>, 2023.
msgid ""
msgstr ""
"Project-Id-Version: cartridges\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-12-12 10:32+0100\n"
"PO-Revision-Date: 2023-09-30 08:01+0000\n"
"PO-Revision-Date: 2024-02-15 17:02+0000\n"
"Last-Translator: Philip Goto <philip.goto@gmail.com>\n"
"Language-Team: Dutch <https://hosted.weblate.org/projects/cartridges/"
"cartridges/nl/>\n"
@@ -17,7 +17,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 5.1-dev\n"
"X-Generator: Weblate 5.4-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -284,17 +284,13 @@ msgstr "Flatpak"
#. The location of the system-wide data directory
#: data/gtk/preferences.blp:327
#, fuzzy
#| msgid "Set Location"
msgid "System Location"
msgstr "Locatie instellen"
msgstr "Systeem­locatie"
#. The location of the user-specific data directory
#: data/gtk/preferences.blp:340
#, fuzzy
#| msgid "Set Location"
msgid "User Location"
msgstr "Locatie instellen"
msgstr "Gebruikers­locatie"
#: data/gtk/preferences.blp:352
msgid "Import Game Launchers"
@@ -426,15 +422,15 @@ msgstr "Over Cartridges"
#: data/gtk/window.blp:536
msgid "IGDB"
msgstr ""
msgstr "IGDB"
#: data/gtk/window.blp:538
msgid "ProtonDB"
msgstr ""
msgstr "ProtonDB"
#: data/gtk/window.blp:540
msgid "HowLongToBeat"
msgstr ""
msgstr "HowLongToBeat"
#. The variable is the title of the game
#: cartridges/main.py:206 cartridges/game.py:125

149
po/pt.po
View File

@@ -5,13 +5,14 @@
# kramo <contact@kramo.hu>, 2023.
# Henrique Machado <henriquecamposrj@gmail.com>, 2023.
# João Alves <joao.2003.couto@gmail.com>, 2023.
# ssantos <ssantos@web.de>, 2024.
msgid ""
msgstr ""
"Project-Id-Version: cartridges\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-12-12 10:32+0100\n"
"PO-Revision-Date: 2023-06-04 22:47+0000\n"
"Last-Translator: João Alves <joao.2003.couto@gmail.com>\n"
"PO-Revision-Date: 2024-01-08 09:06+0000\n"
"Last-Translator: ssantos <ssantos@web.de>\n"
"Language-Team: Portuguese <https://hosted.weblate.org/projects/cartridges/"
"cartridges/pt/>\n"
"Language: pt\n"
@@ -19,7 +20,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 4.18-dev\n"
"X-Generator: Weblate 5.4-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -38,11 +39,11 @@ msgid "Launch all your games"
msgstr "Inicie todos os seus jogos"
#: data/hu.kramo.Cartridges.desktop.in:11
#, fuzzy
#| msgid "gaming;launcher;steam;lutris;heroic;bottles;itch;"
msgid ""
"gaming;launcher;steam;lutris;heroic;bottles;itch;flatpak;legendary;retroarch;"
msgstr "gaming;iniciador;steam;lutris;heroic;bottles;itch;"
msgstr ""
"Jogos;lançador;gaming;launcher;steam;lutris;heroic;bottles;itch;flatpak;legen"
"dary;"
#: data/hu.kramo.Cartridges.metainfo.xml.in:9
msgid ""
@@ -88,10 +89,8 @@ msgid "Title"
msgstr "Título"
#: data/gtk/details-window.blp:103
#, fuzzy
#| msgid "The developer or publisher (optional)"
msgid "Developer (optional)"
msgstr "O desenvolvedor ou publicador (opcional)"
msgstr "Programador (opcional)"
#: data/gtk/details-window.blp:108
msgid "Executable"
@@ -99,7 +98,7 @@ msgstr "Executável"
#: data/gtk/details-window.blp:114
msgid "Select File"
msgstr ""
msgstr "Selecionar ficheiro"
#: data/gtk/details-window.blp:125
msgid "More Info"
@@ -145,7 +144,7 @@ msgstr "Sair"
#: data/gtk/help-overlay.blp:39 data/gtk/window.blp:88 data/gtk/window.blp:164
msgid "Toggle Sidebar"
msgstr ""
msgstr "Alternar barra lateral"
#: data/gtk/help-overlay.blp:44 data/gtk/window.blp:177 data/gtk/window.blp:237
msgid "Main Menu"
@@ -165,14 +164,10 @@ msgid "Import"
msgstr "Importar"
#: data/gtk/help-overlay.blp:63
#, fuzzy
#| msgid "Show hidden games"
msgid "Show Hidden Games"
msgstr "Exibir jogos ocultados"
msgstr "Exibir jogos ocultos"
#: data/gtk/help-overlay.blp:68
#, fuzzy
#| msgid "Remove game"
msgid "Remove Game"
msgstr "Remover jogo"
@@ -214,10 +209,8 @@ msgid "Remove All Games"
msgstr "Remover todos os jogos"
#: data/gtk/preferences.blp:119
#, fuzzy
#| msgid "Remove All Games"
msgid "Remove Uninstalled Games"
msgstr "Remover todos os jogos"
msgstr "Remover jogos desinstalados"
#: data/gtk/preferences.blp:124
msgid "Sources"
@@ -231,10 +224,8 @@ msgstr "Steam"
#: data/gtk/preferences.blp:200 data/gtk/preferences.blp:238
#: data/gtk/preferences.blp:260 data/gtk/preferences.blp:282
#: data/gtk/preferences.blp:304
#, fuzzy
#| msgid "itch Install Location"
msgid "Install Location"
msgstr "Local de instalação do itch"
msgstr "Local de instalação"
#: data/gtk/preferences.blp:149 data/gtk/window.blp:539
#: cartridges/importer/lutris_source.py:92
@@ -242,20 +233,16 @@ msgid "Lutris"
msgstr "Lutris"
#: data/gtk/preferences.blp:170
#, fuzzy
#| msgid "Lutris Cache Location"
msgid "Cache Location"
msgstr "Local do cache do Lutris"
msgstr "Local do cache"
#: data/gtk/preferences.blp:182
msgid "Import Steam Games"
msgstr "Importar jogos da Steam"
#: data/gtk/preferences.blp:186
#, fuzzy
#| msgid "Import Steam Games"
msgid "Import Flatpak Games"
msgstr "Importar jogos da Steam"
msgstr "Importar jogos do Flatpak"
#: data/gtk/preferences.blp:191 cartridges/importer/heroic_source.py:355
msgid "Heroic"
@@ -270,10 +257,8 @@ msgid "Import GOG Games"
msgstr "Importar jogos do GOG"
#: data/gtk/preferences.blp:220
#, fuzzy
#| msgid "Import Steam Games"
msgid "Import Amazon Games"
msgstr "Importar jogos da Steam"
msgstr "Importar jogos da Amazon"
#: data/gtk/preferences.blp:224
msgid "Import Sideloaded Games"
@@ -289,39 +274,33 @@ msgstr "itch"
#: data/gtk/preferences.blp:273 cartridges/importer/legendary_source.py:97
msgid "Legendary"
msgstr ""
msgstr "Lendário"
#: data/gtk/preferences.blp:295 cartridges/importer/retroarch_source.py:142
msgid "RetroArch"
msgstr ""
msgstr "RetroArch"
#: data/gtk/preferences.blp:317 cartridges/importer/flatpak_source.py:124
msgid "Flatpak"
msgstr ""
msgstr "Flatpak"
#. The location of the system-wide data directory
#: data/gtk/preferences.blp:327
#, fuzzy
#| msgid "Set Location"
msgid "System Location"
msgstr "Definir local"
msgstr "Local dos Dados no Sistema"
#. The location of the user-specific data directory
#: data/gtk/preferences.blp:340
#, fuzzy
#| msgid "Set Location"
msgid "User Location"
msgstr "Definir local"
msgstr "Local dos Dados de Utilizador"
#: data/gtk/preferences.blp:352
#, fuzzy
#| msgid "Game Launcher"
msgid "Import Game Launchers"
msgstr "Iniciador de jogos"
msgstr "Importar iniciadores de jogos"
#: data/gtk/preferences.blp:357 cartridges/importer/desktop_source.py:215
msgid "Desktop Entries"
msgstr ""
msgstr "Entradas desktop"
#: data/gtk/preferences.blp:369 data/gtk/window.blp:537
msgid "SteamGridDB"
@@ -352,18 +331,16 @@ msgid "Prefer Animated Images"
msgstr "Preferir imagens animadas"
#: data/gtk/preferences.blp:399
#, fuzzy
#| msgid "Delete Cover"
msgid "Update Covers"
msgstr "Apagar capa"
msgstr "Atualizar capas"
#: data/gtk/preferences.blp:400
msgid "Fetch covers for games already in your library"
msgstr ""
msgstr "Obter capas para jogos que já estão na sua biblioteca"
#: data/gtk/preferences.blp:405
msgid "Update"
msgstr ""
msgstr "Atualizar"
#: data/gtk/window.blp:6 data/gtk/window.blp:14
msgid "No Games Found"
@@ -390,22 +367,16 @@ msgid "Games you hide will appear here."
msgstr "Jogos ocultados vão aparecer aqui."
#: data/gtk/window.blp:75 data/gtk/window.blp:106 cartridges/main.py:226
#, fuzzy
#| msgid "Remove All Games"
msgid "All Games"
msgstr "Remover todos os jogos"
msgstr "Todos os jogos"
#: data/gtk/window.blp:126 cartridges/main.py:228
#, fuzzy
#| msgid "Added: {}"
msgid "Added"
msgstr "Adicionado: {}"
msgstr "Adicionado"
#: data/gtk/window.blp:141
#, fuzzy
#| msgid "Import"
msgid "Imported"
msgstr "Importar"
msgstr "Importado"
#: data/gtk/window.blp:230
msgid "Hidden Games"
@@ -441,7 +412,7 @@ msgstr "Mais antigo"
#: data/gtk/window.blp:502
msgid "Last Played"
msgstr "Última vez jogado"
msgstr "Jogou pela última vez"
#: data/gtk/window.blp:509
msgid "Show Hidden"
@@ -453,15 +424,15 @@ msgstr "Sobre o Cartuchos"
#: data/gtk/window.blp:536
msgid "IGDB"
msgstr ""
msgstr "IGDB"
#: data/gtk/window.blp:538
msgid "ProtonDB"
msgstr ""
msgstr "ProtonDB"
#: data/gtk/window.blp:540
msgid "HowLongToBeat"
msgstr ""
msgstr "HowLongToBeat"
#. The variable is the title of the game
#: cartridges/main.py:206 cartridges/game.py:125
@@ -485,7 +456,7 @@ msgstr "Nunca"
#. The variable is the date when the game was last played
#: cartridges/window.py:380
msgid "Last played: {}"
msgstr "Última vez jogado"
msgstr "Jogou pela última vez: {}"
#: cartridges/details_window.py:76
msgid "Apply"
@@ -497,13 +468,11 @@ msgstr "Adicionar novo jogo"
#: cartridges/details_window.py:83
msgid "Add"
msgstr ""
msgstr "Adicionar"
#: cartridges/details_window.py:93
#, fuzzy
#| msgid "Executable"
msgid "Executables"
msgstr "Executável"
msgstr "Executáveis"
#. Translate this string as you would translate "file"
#: cartridges/details_window.py:108
@@ -590,34 +559,28 @@ msgstr ""
"chave {}aqui{}."
#: cartridges/preferences.py:191
#, fuzzy
#| msgid "Importing Covers…"
msgid "Downloading covers…"
msgstr "Importando capas…"
msgstr "A descarregar capas…"
#: cartridges/preferences.py:210
msgid "Covers updated"
msgstr ""
msgstr "Capas atualizadas"
#: cartridges/preferences.py:345
#, fuzzy
#| msgid "Installation Not Found"
msgid "Installation Not Found"
msgstr "Instalação não encontrada"
#: cartridges/preferences.py:346
#, fuzzy
#| msgid "Select the {} data directory."
msgid "Select a valid directory."
msgstr "Selecione o diretório de informações de {}."
msgstr "Selecione um diretório válido."
#: cartridges/preferences.py:382 cartridges/importer/importer.py:317
msgid "Warning"
msgstr ""
msgstr "Atenção"
#: cartridges/preferences.py:416
msgid "Invalid Directory"
msgstr ""
msgstr "Diretório inválido"
#: cartridges/preferences.py:422
msgid "Set Location"
@@ -633,7 +596,7 @@ msgstr "Importando jogos…"
#: cartridges/importer/importer.py:338
msgid "The following errors occured during import:"
msgstr ""
msgstr "Ocorreram os seguintes erros durante a importação:"
#: cartridges/importer/importer.py:367
msgid "No new games found"
@@ -650,54 +613,44 @@ msgstr "{} jogos importados"
#. A single game removed
#: cartridges/importer/importer.py:387
#, fuzzy
#| msgid "{} removed"
msgid "1 removed"
msgstr "{} removido"
msgstr "1 removido"
#. The variable is the name of the source
#: cartridges/importer/location.py:33
#, fuzzy
#| msgid "Select the {} data directory."
msgid "Select the {} cache directory."
msgstr "Selecione o diretório de informações de {}."
msgstr "Selecione o diretório de cache {}."
#. The variable is the name of the source
#: cartridges/importer/location.py:35
#, fuzzy
#| msgid "Select the {} configuration directory."
msgid "Select the {} configuration directory."
msgstr "Selecione o diretório de configuração de {}."
msgstr "Selecione o diretório de configuração do(a) {}."
#. The variable is the name of the source
#: cartridges/importer/location.py:37
#, fuzzy
#| msgid "Select the {} data directory."
msgid "Select the {} data directory."
msgstr "Selecione o diretório de informações de {}."
msgstr "Selecione o diretório de dados do(a) {}."
#: cartridges/importer/retroarch_source.py:129
msgid "No RetroArch Core Selected"
msgstr ""
msgstr "Nenhum núcleo RetroArch selecionado"
#. The variable is a newline separated list of playlists
#: cartridges/importer/retroarch_source.py:131
msgid "The following playlists have no default core:"
msgstr ""
msgstr "As seguintes listas de jogos não têm núcleo padrão:"
#: cartridges/importer/retroarch_source.py:133
msgid "Games with no core selected were not imported"
msgstr ""
msgstr "Jogos sem núcleo selecionado não foram importados"
#: cartridges/store/managers/sgdb_manager.py:46
#, fuzzy
#| msgid "Couldn't Connect to SteamGridDB"
msgid "Couldn't Authenticate SteamGridDB"
msgstr "Não foi possível conectar à SteamGridDB"
msgstr "Não foi possível autenticar no SteamGridDB"
#: cartridges/store/managers/sgdb_manager.py:47
msgid "Verify your API key in preferences"
msgstr ""
msgstr "Verifique a sua chave de API nas preferências"
#~ msgid "Library"
#~ msgstr "Biblioteca"

View File

@@ -5,13 +5,14 @@
# Vinícius Gama Santos <vinny.stalck@protonmail.com>, 2023.
# Vítor Fernandes Almado <vfalmado@gmail.com>, 2023.
# Rafael Fontenelle <rafaelff@gnome.org>, 2023.
# Filipe Motta <luiz_filipe_motta@hotmail.com>, 2024.
msgid ""
msgstr ""
"Project-Id-Version: Cartridges\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-12-12 10:32+0100\n"
"PO-Revision-Date: 2023-09-26 07:17+0000\n"
"Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n"
"PO-Revision-Date: 2024-01-04 04:07+0000\n"
"Last-Translator: Filipe Motta <luiz_filipe_motta@hotmail.com>\n"
"Language-Team: Portuguese (Brazil) <https://hosted.weblate.org/projects/"
"cartridges/cartridges/pt_BR/>\n"
"Language: pt_BR\n"
@@ -19,7 +20,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=n > 1;\n"
"X-Generator: Weblate 5.1-dev\n"
"X-Generator: Weblate 5.4-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -285,17 +286,13 @@ msgstr "Flatpak"
#. The location of the system-wide data directory
#: data/gtk/preferences.blp:327
#, fuzzy
#| msgid "Set Location"
msgid "System Location"
msgstr "Definir local"
msgstr "Local dos Dados no Sistema"
#. The location of the user-specific data directory
#: data/gtk/preferences.blp:340
#, fuzzy
#| msgid "Set Location"
msgid "User Location"
msgstr "Definir local"
msgstr "Local dos Dados de Usuário"
#: data/gtk/preferences.blp:352
msgid "Import Game Launchers"
@@ -334,18 +331,16 @@ msgid "Prefer Animated Images"
msgstr "Preferir imagens animadas"
#: data/gtk/preferences.blp:399
#, fuzzy
#| msgid "Delete Cover"
msgid "Update Covers"
msgstr "Excluir capa"
msgstr "Atualizar capas"
#: data/gtk/preferences.blp:400
msgid "Fetch covers for games already in your library"
msgstr ""
msgstr "Obter capas para jogos que já estão na sua biblioteca"
#: data/gtk/preferences.blp:405
msgid "Update"
msgstr ""
msgstr "Atualizar"
#: data/gtk/window.blp:6 data/gtk/window.blp:14
msgid "No Games Found"
@@ -429,15 +424,15 @@ msgstr "Sobre o Cartuchos"
#: data/gtk/window.blp:536
msgid "IGDB"
msgstr ""
msgstr "IGDB"
#: data/gtk/window.blp:538
msgid "ProtonDB"
msgstr ""
msgstr "ProtonDB"
#: data/gtk/window.blp:540
msgid "HowLongToBeat"
msgstr ""
msgstr "HowLongToBeat"
#. The variable is the title of the game
#: cartridges/main.py:206 cartridges/game.py:125
@@ -447,7 +442,9 @@ msgstr "{} iniciado"
#. Translators: Replace this with your name for it to show up in the about window
#: cartridges/main.py:269
msgid "translator_credits"
msgstr "Pedro Sader Azevedo, Vinícius \"Stalck\""
msgstr ""
"Pedro Sader Azevedo, Vinícius \"Stalck\", Filipe Motta <luizfilipemotta@gmail"
".com>"
#. The variable is the date when the game was added
#: cartridges/window.py:373
@@ -564,14 +561,12 @@ msgstr ""
"uma {}aqui{}."
#: cartridges/preferences.py:191
#, fuzzy
#| msgid "Importing Covers…"
msgid "Downloading covers…"
msgstr "Importando capas…"
msgstr "Baixando capas…"
#: cartridges/preferences.py:210
msgid "Covers updated"
msgstr ""
msgstr "Capas atualizadas"
#: cartridges/preferences.py:345
msgid "Installation Not Found"

View File

@@ -6,13 +6,14 @@
# Вова Смірнов <vovasmirnon5895@gmail.com>, 2023.
# Dan <jonweblin2205@protonmail.com>, 2023.
# Andrii Murha <flat.assembly@gmail.com>, 2023.
# Сергій <sergiy.goncharuk.1@gmail.com>, 2024.
msgid ""
msgstr ""
"Project-Id-Version: cartridges\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-12-12 10:32+0100\n"
"PO-Revision-Date: 2023-10-24 17:02+0000\n"
"Last-Translator: Andrii Murha <flat.assembly@gmail.com>\n"
"PO-Revision-Date: 2024-01-08 09:06+0000\n"
"Last-Translator: Сергій <sergiy.goncharuk.1@gmail.com>\n"
"Language-Team: Ukrainian <https://hosted.weblate.org/projects/cartridges/"
"cartridges/uk/>\n"
"Language: uk\n"
@@ -21,7 +22,7 @@ msgstr ""
"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.1.1-dev\n"
"X-Generator: Weblate 5.4-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -169,7 +170,7 @@ msgstr "Показати приховані ігри"
#: data/gtk/help-overlay.blp:68
msgid "Remove Game"
msgstr "Видалити Гру"
msgstr "Видалити гру"
#: data/gtk/preferences.blp:12 data/gtk/preferences.blp:116
#: data/gtk/preferences.blp:381
@@ -286,17 +287,13 @@ msgstr "Flatpak"
#. The location of the system-wide data directory
#: data/gtk/preferences.blp:327
#, fuzzy
#| msgid "Set Location"
msgid "System Location"
msgstr "Встановити місцезнаходження"
msgstr "Розташування системного каталогу"
#. The location of the user-specific data directory
#: data/gtk/preferences.blp:340
#, fuzzy
#| msgid "Set Location"
msgid "User Location"
msgstr "Встановити місцезнаходження"
msgstr "Розташування каталогу користувача"
#: data/gtk/preferences.blp:352
msgid "Import Game Launchers"
@@ -428,15 +425,15 @@ msgstr "Про Картриджі"
#: data/gtk/window.blp:536
msgid "IGDB"
msgstr ""
msgstr "IGDB"
#: data/gtk/window.blp:538
msgid "ProtonDB"
msgstr ""
msgstr "ProtonDB"
#: data/gtk/window.blp:540
msgid "HowLongToBeat"
msgstr ""
msgstr "HowLongToBeat"
#. The variable is the title of the game
#: cartridges/main.py:206 cartridges/game.py:125

View File

@@ -3,13 +3,13 @@
# 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.
# Float <float.hu+@gmail.com>, 2023.
# Float <float.hu+@gmail.com>, 2023, 2024.
msgid ""
msgstr ""
"Project-Id-Version: Cartridges\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2023-12-12 10:32+0100\n"
"PO-Revision-Date: 2023-11-23 23:17+0000\n"
"PO-Revision-Date: 2024-01-28 19:06+0000\n"
"Last-Translator: Float <float.hu+@gmail.com>\n"
"Language-Team: Chinese (Simplified) <https://hosted.weblate.org/projects/"
"cartridges/cartridges/zh_Hans/>\n"
@@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 5.2.1-rc\n"
"X-Generator: Weblate 5.4-dev\n"
#: data/hu.kramo.Cartridges.desktop.in:3
#: data/hu.kramo.Cartridges.metainfo.xml.in:6
@@ -282,17 +282,13 @@ msgstr "Flatpak"
#. The location of the system-wide data directory
#: data/gtk/preferences.blp:327
#, fuzzy
#| msgid "Set Location"
msgid "System Location"
msgstr "设置位置"
msgstr "系统位置"
#. The location of the user-specific data directory
#: data/gtk/preferences.blp:340
#, fuzzy
#| msgid "Set Location"
msgid "User Location"
msgstr "设置位置"
msgstr "用户位置"
#: data/gtk/preferences.blp:352
msgid "Import Game Launchers"