Compare commits
47 commits
ae761f6e7b
...
a0a66279a3
Author | SHA1 | Date | |
---|---|---|---|
|
a0a66279a3 | ||
|
72d072fb5d | ||
|
c8600e1e36 | ||
|
87c868193a | ||
|
0a1c180c00 | ||
|
9d09b29808 | ||
|
c85b2e5a4e | ||
|
211623a3f7 | ||
|
b3c68de417 | ||
|
409fd0bc6e | ||
|
48d5990c80 | ||
|
e16cc89f3f | ||
|
c7eb4bdc04 | ||
|
45620244ab | ||
|
1af0c81347 | ||
|
a5dffec4b6 | ||
|
9dc598fcbc | ||
|
f8508baff1 | ||
|
8f02fbc54a | ||
|
c201184084 | ||
|
3d3abbd4a5 | ||
|
a6a610dc42 | ||
|
95d3399272 | ||
|
96c8918e5b | ||
|
ad08a400f5 | ||
|
91b890de37 | ||
f14f36a0f4 | |||
|
950b080729 | ||
|
54eb263d09 | ||
|
dea3de2100 | ||
3296584c59 | |||
b6151c1581 | |||
78958fd18e | |||
9ce292aaa2 | |||
dece8f660f | |||
6a0f42c1ab | |||
b80b5998e4 | |||
14c3dbdcf1 | |||
7456becf9e | |||
02b02edbbb | |||
0123a80883 | |||
495e5a7971 | |||
c543ca1538 | |||
|
62367ce9f4 | ||
c54e7acc08 | |||
e404f6c980 | |||
1587918ff5 |
76
0001-remove-gpt4all-support.patch
Normal file
76
0001-remove-gpt4all-support.patch
Normal file
|
@ -0,0 +1,76 @@
|
|||
diff --git a/src/main.py b/src/main.py
|
||||
index 79f5401..f82cd0f 100644
|
||||
--- a/src/main.py
|
||||
+++ b/src/main.py
|
||||
@@ -35,7 +35,6 @@ from .constants import app_id
|
||||
from .providers import PROVIDERS
|
||||
|
||||
import json
|
||||
-from gpt4all import GPT4All
|
||||
import os
|
||||
|
||||
user_config_dir = os.environ.get(
|
||||
@@ -306,15 +305,7 @@ class BavarderApplication(Adw.Application):
|
||||
def setup_chat(self):
|
||||
if not self.models:
|
||||
self.list_models()
|
||||
-
|
||||
- if not self.models:
|
||||
- return False
|
||||
- else:
|
||||
- if self.model is None:
|
||||
- if self.model_name not in self.models:
|
||||
- self.download_model(self.model_name)
|
||||
- self.model = GPT4All(self.model_name, model_path=model_path)
|
||||
- return True
|
||||
+ return bool(self.models)
|
||||
|
||||
def download_model(self, model=None):
|
||||
if model:
|
||||
diff --git a/src/views/preferences_window.py b/src/views/preferences_window.py
|
||||
index e057aff..73e4ea3 100644
|
||||
--- a/src/views/preferences_window.py
|
||||
+++ b/src/views/preferences_window.py
|
||||
@@ -5,8 +5,6 @@ from bavarder.providers.provider_item import Provider
|
||||
from bavarder.widgets.model_item import Model
|
||||
from bavarder.widgets.download_row import DownloadRow
|
||||
|
||||
-from gpt4all import GPT4All
|
||||
-
|
||||
@Gtk.Template(resource_path=f"{rootdir}/ui/preferences_window.ui")
|
||||
class PreferencesWindow(Adw.PreferencesWindow):
|
||||
__gtype_name__ = "Preferences"
|
||||
@@ -34,7 +32,6 @@ class PreferencesWindow(Adw.PreferencesWindow):
|
||||
def setup(self):
|
||||
self.setup_signals()
|
||||
self.load_providers()
|
||||
- self.load_models()
|
||||
|
||||
self.bot_name.set_text(self.app.bot_name)
|
||||
self.user_name.set_text(self.app.user_name)
|
||||
@@ -47,25 +44,6 @@ class PreferencesWindow(Adw.PreferencesWindow):
|
||||
p = Provider(self.app, self, provider)
|
||||
self.provider_group.add(p)
|
||||
|
||||
- def load_models(self):
|
||||
- self.general_page.remove(self.model_group)
|
||||
- self.model_group = Adw.PreferencesGroup()
|
||||
- self.model_group.set_title(_("Models"))
|
||||
-
|
||||
- for model in self.app.models:
|
||||
- p = Model(self.app, self, model)
|
||||
- self.model_group.add(p)
|
||||
- else:
|
||||
- self.no_models_available = Adw.ExpanderRow()
|
||||
- self.no_models_available.set_title(_("List of available models"))
|
||||
-
|
||||
- for model in GPT4All.list_models():
|
||||
- self.no_models_available.add_row(DownloadRow(self.app, self, model))
|
||||
-
|
||||
- self.model_group.add(self.no_models_available)
|
||||
-
|
||||
- self.general_page.add(self.model_group)
|
||||
-
|
||||
@Gtk.Template.Callback()
|
||||
def clear_all_chats_clicked(self, widget, *args):
|
||||
dialog = Adw.MessageDialog(
|
|
@ -12,18 +12,18 @@
|
|||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/4c/dd/2234eab22353ffc7d94e8d13177aaa050113286e93e7b40eae01fbf7c3d9/certifi-2023.7.22-py3-none-any.whl",
|
||||
"sha256": "92d6037539857d8206b8f6ae472e8b77db8058fec5937a1ef3f54304089edbb9"
|
||||
"url": "https://files.pythonhosted.org/packages/ba/06/a07f096c664aeb9f01624f858c3add0a4e913d6c96257acb4fce61e7de14/certifi-2024.2.2-py3-none-any.whl",
|
||||
"sha256": "dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/2a/53/cf0a48de1bdcf6ff6e1c9a023f5f523dfe303e4024f216feac64b6eb7f67/charset-normalizer-3.2.0.tar.gz",
|
||||
"sha256": "3bb3d25a8e6c0aedd251753a79ae98a093c7e7b471faa3aa9a93a81431987ace"
|
||||
"url": "https://files.pythonhosted.org/packages/63/09/c1bc53dab74b1816a00d8d030de5bf98f724c52c1635e07681d312f20be8/charset-normalizer-3.3.2.tar.gz",
|
||||
"sha256": "f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/fc/34/3030de6f1370931b9dbb4dad48f6ab1015ab1d32447850b9fc94e60097be/idna-3.4-py3-none-any.whl",
|
||||
"sha256": "90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"
|
||||
"url": "https://files.pythonhosted.org/packages/c2/e7/a82b05cf63a603df6e68d59ae6a68bf5064484a0718ea5033660af4b54a9/idna-3.6-py3-none-any.whl",
|
||||
"sha256": "c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
|
@ -32,8 +32,8 @@
|
|||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/9b/81/62fd61001fa4b9d0df6e31d47ff49cfa9de4af03adecf339c7bc30656b37/urllib3-2.0.4-py3-none-any.whl",
|
||||
"sha256": "de7df1803967d2c2a98e4b11bb7d6bd9210474c46e8a0401514e3a42a75ebde4"
|
||||
"url": "https://files.pythonhosted.org/packages/a2/73/a68704750a7679d0b6d3ad7aa8d4da8e14e151ae82e6fee774e6e0d05ec8/urllib3-2.2.1-py3-none-any.whl",
|
||||
"sha256": "450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
@ -46,8 +46,8 @@
|
|||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/00/e5/f12a80907d0884e6dff9c16d0c0114d81b8cd07dc3ae54c5e962cc83037e/tqdm-4.66.1-py3-none-any.whl",
|
||||
"sha256": "d302b3c5b53d47bce91fea46679d9c3c6508cf6332229aa1e7d8653723793386"
|
||||
"url": "https://files.pythonhosted.org/packages/2a/14/e75e52d521442e2fcc9f1df3c5e456aead034203d4797867980de558ab34/tqdm-4.66.2-py3-none-any.whl",
|
||||
"sha256": "1ee4f8a893eb9bef51c6e35730cebf234d5d0b6bd112b0271e10ed7c24a02bd9"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
@ -60,8 +60,8 @@
|
|||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/2a/53/cf0a48de1bdcf6ff6e1c9a023f5f523dfe303e4024f216feac64b6eb7f67/charset-normalizer-3.2.0.tar.gz",
|
||||
"sha256": "3bb3d25a8e6c0aedd251753a79ae98a093c7e7b471faa3aa9a93a81431987ace"
|
||||
"url": "https://files.pythonhosted.org/packages/63/09/c1bc53dab74b1816a00d8d030de5bf98f724c52c1635e07681d312f20be8/charset-normalizer-3.3.2.tar.gz",
|
||||
"sha256": "f30c3cb33b24454a82faecaf01b19c18562b1e89558fb6c56de4d9118a032fd5"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
@ -74,8 +74,8 @@
|
|||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/fc/34/3030de6f1370931b9dbb4dad48f6ab1015ab1d32447850b9fc94e60097be/idna-3.4-py3-none-any.whl",
|
||||
"sha256": "90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"
|
||||
"url": "https://files.pythonhosted.org/packages/c2/e7/a82b05cf63a603df6e68d59ae6a68bf5064484a0718ea5033660af4b54a9/idna-3.6-py3-none-any.whl",
|
||||
"sha256": "c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
@ -88,8 +88,8 @@
|
|||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/9b/81/62fd61001fa4b9d0df6e31d47ff49cfa9de4af03adecf339c7bc30656b37/urllib3-2.0.4-py3-none-any.whl",
|
||||
"sha256": "de7df1803967d2c2a98e4b11bb7d6bd9210474c46e8a0401514e3a42a75ebde4"
|
||||
"url": "https://files.pythonhosted.org/packages/a2/73/a68704750a7679d0b6d3ad7aa8d4da8e14e151ae82e6fee774e6e0d05ec8/urllib3-2.2.1-py3-none-any.whl",
|
||||
"sha256": "450b20ec296a467077128bff42b73080516e71b56ff59a60a02bef2232c4fa9d"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
@ -102,8 +102,8 @@
|
|||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/df/c4/1088865e0246d7ecf56d819a233ab2b72f7d6ab043965ef327d0731b5434/Babel-2.12.1-py3-none-any.whl",
|
||||
"sha256": "b4246fb7677d3b98f501a39d43396d3cafdc8eadb045f4a31be01863f655c610"
|
||||
"url": "https://files.pythonhosted.org/packages/0d/35/4196b21041e29a42dc4f05866d0c94fa26c9da88ce12c38c2265e42c82fb/Babel-2.14.0-py3-none-any.whl",
|
||||
"sha256": "efb1a25b7118e67ce3a259bed20545c29cb68be8ad2c784c83689981b7a57287"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
@ -116,73 +116,87 @@
|
|||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/d6/12/6fc7c7dcc84e263940e87cbafca17c1ef28f39dae6c0b10f51e4ccc764ee/aiohttp-3.8.5.tar.gz",
|
||||
"sha256": "b9552ec52cc147dbf1944ac7ac98af7602e51ea2dcd076ed194ca3c0d1c7d0bc"
|
||||
"url": "https://files.pythonhosted.org/packages/28/78/d31230046e58c207284c6b2c4e8d96e6d3cb4e52354721b944d3e1ee4aa5/annotated_types-0.6.0-py3-none-any.whl",
|
||||
"sha256": "0641064de18ba7a25dee8f96403ebc39113d0cb953a01429249d5c7564666a43"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/76/ac/a7305707cb852b7e16ff80eaf5692309bde30e2b1100a1fcacdc8f731d97/aiosignal-1.3.1-py3-none-any.whl",
|
||||
"sha256": "f8376fb07dd1e86a584e4fcdec80b36b7f81aac666ebc724e2c090300dd83b17"
|
||||
"url": "https://files.pythonhosted.org/packages/14/fd/2f20c40b45e4fb4324834aea24bd4afdf1143390242c0b33774da0e2e34f/anyio-4.3.0-py3-none-any.whl",
|
||||
"sha256": "048e05d0f6caeed70d731f3db756d35dcc1f35747c8c403364a8332c630441b8"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/a7/fa/e01228c2938de91d47b307831c62ab9e4001e747789d0b05baf779a6488c/async_timeout-4.0.3-py3-none-any.whl",
|
||||
"sha256": "7405140ff1230c310e51dc27b3145b9092d659ce68ff733fb0cefe3ee42be028"
|
||||
"url": "https://files.pythonhosted.org/packages/ba/06/a07f096c664aeb9f01624f858c3add0a4e913d6c96257acb4fce61e7de14/certifi-2024.2.2-py3-none-any.whl",
|
||||
"sha256": "dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/f0/eb/fcb708c7bf5056045e9e98f62b93bd7467eb718b0202e7698eb11d66416c/attrs-23.1.0-py3-none-any.whl",
|
||||
"sha256": "1f28b4522cdc2fb4256ac1a020c78acf9cba2c6b461ccd2c126f3aa8e8335d04"
|
||||
"url": "https://files.pythonhosted.org/packages/12/b3/231ffd4ab1fc9d679809f356cebee130ac7daa00d6d6f3206dd4fd137e9e/distro-1.9.0-py3-none-any.whl",
|
||||
"sha256": "7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/4c/dd/2234eab22353ffc7d94e8d13177aaa050113286e93e7b40eae01fbf7c3d9/certifi-2023.7.22-py3-none-any.whl",
|
||||
"sha256": "92d6037539857d8206b8f6ae472e8b77db8058fec5937a1ef3f54304089edbb9"
|
||||
"url": "https://files.pythonhosted.org/packages/95/04/ff642e65ad6b90db43e668d70ffb6736436c7ce41fcc549f4e9472234127/h11-0.14.0-py3-none-any.whl",
|
||||
"sha256": "e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/2a/53/cf0a48de1bdcf6ff6e1c9a023f5f523dfe303e4024f216feac64b6eb7f67/charset-normalizer-3.2.0.tar.gz",
|
||||
"sha256": "3bb3d25a8e6c0aedd251753a79ae98a093c7e7b471faa3aa9a93a81431987ace"
|
||||
"url": "https://files.pythonhosted.org/packages/2c/93/13f25f2f78646bab97aee7680821e30bd85b2ff0fc45d5fdf5393b79716d/httpcore-1.0.4-py3-none-any.whl",
|
||||
"sha256": "ac418c1db41bade2ad53ae2f3834a3a0f5ae76b56cf5aa497d2d033384fc7d73"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/8c/1f/49c96ccc87127682ba900b092863ef7c20302a2144b3185412a08480ca22/frozenlist-1.4.0.tar.gz",
|
||||
"sha256": "09163bdf0b2907454042edb19f887c6d33806adc71fbd54afc14908bfdc22251"
|
||||
"url": "https://files.pythonhosted.org/packages/41/7b/ddacf6dcebb42466abd03f368782142baa82e08fc0c1f8eaa05b4bae87d5/httpx-0.27.0-py3-none-any.whl",
|
||||
"sha256": "71d5465162c13681bff01ad59b2cc68dd838ea1f10e51574bac27103f00c91a5"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/fc/34/3030de6f1370931b9dbb4dad48f6ab1015ab1d32447850b9fc94e60097be/idna-3.4-py3-none-any.whl",
|
||||
"sha256": "90b77e79eaa3eba6de819a0c442c0b4ceefc341a7a2ab77d7562bf49f425c5c2"
|
||||
"url": "https://files.pythonhosted.org/packages/c2/e7/a82b05cf63a603df6e68d59ae6a68bf5064484a0718ea5033660af4b54a9/idna-3.6-py3-none-any.whl",
|
||||
"sha256": "c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/4a/15/bd620f7a6eb9aa5112c4ef93e7031bcd071e0611763d8e17706ef8ba65e0/multidict-6.0.4.tar.gz",
|
||||
"sha256": "3666906492efb76453c0e7b97f2cf459b0682e7402c0489a95484965dbc1da49"
|
||||
"url": "https://files.pythonhosted.org/packages/26/a1/75474477af2a1dae3a25f80b72bbaf20e8296191ece7fff2f67984206f33/openai-1.12.0-py3-none-any.whl",
|
||||
"sha256": "a54002c814e05222e413664f651b5916714e4700d041d5cf5724d3ae1a3e3481"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/67/78/7588a047e458cb8075a4089d721d7af5e143ff85a2388d4a28c530be0494/openai-0.27.8-py3-none-any.whl",
|
||||
"sha256": "e0a7c2f7da26bdbe5354b03c6d4b82a2f34bd4458c7a17ae1a7092c3e397e03c"
|
||||
"url": "https://files.pythonhosted.org/packages/42/28/f19be8d493c59a8ddf32c15d69765c6423ad712da1c6255b418df2fc1443/pydantic-2.6.2-py3-none-any.whl",
|
||||
"sha256": "37a5432e54b12fecaa1049c5195f3d860a10e01bdfd24f1840ef14bd0d3aeab3"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/70/8e/0e2d847013cb52cd35b38c009bb167a1a26b2ce6cd6965bf26b47bc0bf44/requests-2.31.0-py3-none-any.whl",
|
||||
"sha256": "58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"
|
||||
"url": "https://files.pythonhosted.org/packages/77/3f/65dbe5231946fe02b4e6ea92bc303d2462f45d299890fd5e8bfe4d1c3d66/pydantic_core-2.16.3.tar.gz",
|
||||
"sha256": "1cac689f80a3abab2d3c0048b29eea5751114054f032a941a32de4c852c59cad"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/00/e5/f12a80907d0884e6dff9c16d0c0114d81b8cd07dc3ae54c5e962cc83037e/tqdm-4.66.1-py3-none-any.whl",
|
||||
"sha256": "d302b3c5b53d47bce91fea46679d9c3c6508cf6332229aa1e7d8653723793386"
|
||||
"url": "https://files.pythonhosted.org/packages/c3/a0/5dba8ed157b0136607c7f2151db695885606968d1fae123dc3391e0cfdbf/sniffio-1.3.0-py3-none-any.whl",
|
||||
"sha256": "eecefdce1e5bbfb7ad2eeaabf7c1eeb404d7757c379bd1f7e5cce9d8bf425384"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/9b/81/62fd61001fa4b9d0df6e31d47ff49cfa9de4af03adecf339c7bc30656b37/urllib3-2.0.4-py3-none-any.whl",
|
||||
"sha256": "de7df1803967d2c2a98e4b11bb7d6bd9210474c46e8a0401514e3a42a75ebde4"
|
||||
"url": "https://files.pythonhosted.org/packages/2a/14/e75e52d521442e2fcc9f1df3c5e456aead034203d4797867980de558ab34/tqdm-4.66.2-py3-none-any.whl",
|
||||
"sha256": "1ee4f8a893eb9bef51c6e35730cebf234d5d0b6bd112b0271e10ed7c24a02bd9"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/5f/3f/04b3c5e57844fb9c034b09c5cb6d2b43de5d64a093c30529fd233e16cf09/yarl-1.9.2.tar.gz",
|
||||
"sha256": "04ab9d4b9f587c06d801c2abfe9317b77cdf996c65a90d5e84ecc45010823571"
|
||||
"url": "https://files.pythonhosted.org/packages/b7/f4/6a90020cd2d93349b442bfcb657d0dc91eee65491600b2cb1d388bc98e6b/typing_extensions-4.9.0-py3-none-any.whl",
|
||||
"sha256": "af72aea155e91adfc61c3ae9e0e342dbc0cba726d6cba4b6c72c1f34e47291cd"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "python3-pillow",
|
||||
"buildsystem": "simple",
|
||||
"build-commands": [
|
||||
"pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"pillow\" --no-build-isolation"
|
||||
],
|
||||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/f8/3e/32cbd0129a28686621434cbf17bb64bf1458bfb838f1f668262fefce145c/pillow-10.2.0.tar.gz",
|
||||
"sha256": "e87f0b2c78157e12d7686b27d63c070fd65d994e8ddae6f328e0dcf4a0cd007e"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
|
@ -121,6 +121,19 @@
|
|||
</keyword>
|
||||
</keywords>
|
||||
<releases>
|
||||
<release version="1.1.0" date="2024-2-25" type="stable">
|
||||
<description>
|
||||
<p>
|
||||
Image generation support
|
||||
</p>
|
||||
<p>
|
||||
New providers
|
||||
</p>
|
||||
<p>
|
||||
Bug fixes
|
||||
</p>
|
||||
</description>
|
||||
</release>
|
||||
<release version="1.0.0" date="2023-7-19" type="stable">
|
||||
<description>
|
||||
<p>
|
||||
|
|
61
flake.lock
Normal file
61
flake.lock
Normal file
|
@ -0,0 +1,61 @@
|
|||
{
|
||||
"nodes": {
|
||||
"flake-utils": {
|
||||
"inputs": {
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1705309234,
|
||||
"narHash": "sha256-uNRRNRKmJyCRC/8y1RqBkqWBLM034y4qN7EprSdmgyA=",
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"rev": "1ef2e671c3b0c19053962c07dbda38332dcebf26",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "numtide",
|
||||
"repo": "flake-utils",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1708751719,
|
||||
"narHash": "sha256-0uWOKSpXJXmXswOvDM5Vk3blB74apFB6rNGWV5IjoN0=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "f63ce824cd2f036216eb5f637dfef31e1a03ee89",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixpkgs-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"flake-utils": "flake-utils",
|
||||
"nixpkgs": "nixpkgs"
|
||||
}
|
||||
},
|
||||
"systems": {
|
||||
"locked": {
|
||||
"lastModified": 1681028828,
|
||||
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-systems",
|
||||
"repo": "default",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
74
flake.nix
Normal file
74
flake.nix
Normal file
|
@ -0,0 +1,74 @@
|
|||
{
|
||||
description = "Bavarder";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
|
||||
flake-utils.url = "github:numtide/flake-utils";
|
||||
};
|
||||
|
||||
outputs = {
|
||||
self,
|
||||
nixpkgs,
|
||||
flake-utils,
|
||||
...
|
||||
}: let
|
||||
systems = ["aarch64-linux" "x86_64-linux"];
|
||||
in
|
||||
flake-utils.lib.eachSystem systems (
|
||||
system: let
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
|
||||
bavarder = pkgs.python3Packages.buildPythonApplication rec {
|
||||
pname = "bavarder";
|
||||
version = self.rev or "dirty";
|
||||
pyproject = false;
|
||||
|
||||
src = ./.;
|
||||
|
||||
patches = [
|
||||
# Removes gpt4all support. It would be lots of work to package it properly
|
||||
# and we already have ollama with working ROCm + CUDA in nixpkgs.
|
||||
./0001-remove-gpt4all-support.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = with pkgs; [
|
||||
appstream-glib
|
||||
blueprint-compiler
|
||||
desktop-file-utils
|
||||
gettext
|
||||
gtk4
|
||||
meson
|
||||
ninja
|
||||
pkg-config
|
||||
wrapGAppsHook4
|
||||
];
|
||||
|
||||
buildInputs = with pkgs; [
|
||||
gtksourceview5
|
||||
libadwaita
|
||||
libportal
|
||||
];
|
||||
|
||||
propagatedBuildInputs = with pkgs.python3Packages; [
|
||||
babel
|
||||
gst-python
|
||||
lxml
|
||||
openai
|
||||
pygobject3
|
||||
pillow
|
||||
requests
|
||||
];
|
||||
|
||||
};
|
||||
in {
|
||||
formatter = pkgs.alejandra;
|
||||
|
||||
checks.bavarder = bavarder;
|
||||
packages.default = bavarder;
|
||||
|
||||
devShells.default = pkgs.mkShell.override {stdenv = pkgs.python3Packages.stdenv;} {
|
||||
inherit (bavarder) nativeBuildInputs buildInputs propagatedBuildInputs;
|
||||
};
|
||||
}
|
||||
);
|
||||
}
|
|
@ -1,5 +1,5 @@
|
|||
project('bavarder',
|
||||
version: '1.0.0',
|
||||
version: '1.1.0',
|
||||
meson_version: '>= 0.62.0',
|
||||
default_options: [ 'warning_level=2', 'werror=false', ],
|
||||
)
|
||||
|
@ -11,7 +11,7 @@ python = import('python')
|
|||
# Constants
|
||||
PROJECT_RDNN_NAME = 'io.github.Bavarder.Bavarder'
|
||||
BUGTRACKER_URL = 'https://codeberg.org/Bavarder/Bavarder/issues'
|
||||
HELP_URL = 'https://matrix.to/#/#bavarder:projectsegfau.lt'
|
||||
HELP_URL = 'https://matrix.to/#/#bavarder:envs.net'
|
||||
TRANSLATE_URL = 'https://translate.codeberg.org/engage/bavarder/'
|
||||
PROJECT_URL = 'https://bavarder.codeberg.page'
|
||||
|
||||
|
|
108
po/Bavarder.pot
108
po/Bavarder.pot
|
@ -1,14 +1,14 @@
|
|||
# Bavarder POT file
|
||||
# Copyright (C) 2023 Bavarder
|
||||
# Copyright (C) 2024 Bavarder
|
||||
# This file is distributed under the GNU GPLv3 license.
|
||||
# Bavarder, 2023.
|
||||
# Bavarder, 2024.
|
||||
#
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -22,7 +22,27 @@ msgstr ""
|
|||
msgid "Bavarder"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr ""
|
||||
|
||||
|
@ -46,7 +66,7 @@ msgstr ""
|
|||
msgid "API Key"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr ""
|
||||
|
||||
|
@ -70,21 +90,21 @@ msgstr ""
|
|||
msgid "Translate"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr ""
|
||||
|
||||
|
@ -101,26 +121,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr ""
|
||||
|
||||
|
@ -156,14 +176,10 @@ msgstr ""
|
|||
msgid "Discard"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr ""
|
||||
|
@ -188,41 +204,41 @@ msgstr ""
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr ""
|
||||
|
||||
|
@ -247,10 +263,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr ""
|
||||
|
@ -267,10 +279,6 @@ msgstr ""
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr ""
|
||||
|
@ -309,11 +317,27 @@ msgstr ""
|
|||
msgid "Edit"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
msgid "Failed to save the image"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
msgid "Save message"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr ""
|
||||
|
||||
|
@ -420,16 +444,16 @@ msgstr ""
|
|||
msgid "Thread Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr ""
|
||||
|
|
22
po/LINGUAS
22
po/LINGUAS
|
@ -1,9 +1,17 @@
|
|||
ar
|
||||
az
|
||||
cs
|
||||
de
|
||||
es
|
||||
et
|
||||
eu
|
||||
fa
|
||||
fi
|
||||
fr
|
||||
gl
|
||||
he
|
||||
hu
|
||||
it
|
||||
nl
|
||||
pl
|
||||
pt
|
||||
|
@ -11,15 +19,7 @@ ru
|
|||
sv
|
||||
ta
|
||||
th
|
||||
uk
|
||||
zh_Hant
|
||||
cs
|
||||
ar
|
||||
es
|
||||
eu
|
||||
fi
|
||||
it
|
||||
zh_Hans
|
||||
tr
|
||||
de
|
||||
fr
|
||||
uk
|
||||
zh_Hans
|
||||
zh_Hant
|
||||
|
|
114
po/ar.po
114
po/ar.po
|
@ -5,13 +5,15 @@
|
|||
#
|
||||
# nakibrayan2 <codeberg.org.quoz7@aleeas.com>, 2023.
|
||||
# SomeTr <SomeTr@users.noreply.translate.codeberg.org>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-10-30 09:13+0000\n"
|
||||
"Last-Translator: SomeTr <SomeTr@users.noreply.translate.codeberg.org>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Arabic <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/ar/>\n"
|
||||
"Language: ar\n"
|
||||
|
@ -20,14 +22,34 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 "
|
||||
"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n"
|
||||
"X-Generator: Weblate 5.1\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "ثرثرة"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "صورة"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "محادثة"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "صوت"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "كيفية التحصل على توكن"
|
||||
|
||||
|
@ -51,7 +73,7 @@ msgstr ""
|
|||
msgid "API Key"
|
||||
msgstr "مفتاح API"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "لا توجد تفضيلات متاحة"
|
||||
|
||||
|
@ -75,21 +97,21 @@ msgstr ""
|
|||
msgid "Translate"
|
||||
msgstr "ترجم"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "غلق"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "تصدير"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
#, fuzzy
|
||||
#| msgid "Model"
|
||||
msgid "Models"
|
||||
|
@ -110,26 +132,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr "هل أنت متأكد أنك تريد حذف هذا؟"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "ألغِ"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "احذف"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "التفضيلات"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "مقدمي الخدمة"
|
||||
|
||||
|
@ -167,14 +189,10 @@ msgstr "مستخدم"
|
|||
msgid "Discard"
|
||||
msgstr "حذف"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "احفظ"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "اسم الملف"
|
||||
|
@ -199,15 +217,15 @@ msgstr ""
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
#, fuzzy
|
||||
#| msgid "Are you sure you want to delete this thread?"
|
||||
msgid ""
|
||||
|
@ -215,27 +233,27 @@ msgid ""
|
|||
"undone!"
|
||||
msgstr "هل أنت متأكد أنك تريد حذف هذا؟"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "إنسان"
|
||||
|
||||
|
@ -262,10 +280,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "رسالة"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "محادثة"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
|
@ -284,10 +298,6 @@ msgstr ""
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "طرح السؤال"
|
||||
|
@ -326,11 +336,29 @@ msgstr "انسخ"
|
|||
msgid "Edit"
|
||||
msgstr "حرر"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "أزل"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
msgid "Failed to save the image"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "رسالة"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Message copied"
|
||||
|
@ -441,17 +469,17 @@ msgstr "هل أنت متأكد أنك تريد حذف هذا؟"
|
|||
msgid "Thread Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr ""
|
||||
|
||||
|
|
114
po/az.po
114
po/az.po
|
@ -5,13 +5,15 @@
|
|||
#
|
||||
# thepoladov13 <thepoladov@protonmail.com>, 2023.
|
||||
# 0xMRTT <0xmrtt@proton.me>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
# Weblate <noreply-mt-weblate@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-08-03 15:00+0000\n"
|
||||
"Last-Translator: Anonymous <noreply@weblate.org>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate <noreply-mt-weblate@weblate.org>\n"
|
||||
"Language-Team: Azerbaijani <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/az/>\n"
|
||||
"Language: az\n"
|
||||
|
@ -19,14 +21,34 @@ 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.1\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "şəkil"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "Tokeni necə əldə etmək olar"
|
||||
|
||||
|
@ -52,7 +74,7 @@ msgstr ""
|
|||
msgid "API Key"
|
||||
msgstr "API Açarı"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "Heç bir tərcih yoxdur"
|
||||
|
||||
|
@ -78,21 +100,21 @@ msgstr ""
|
|||
msgid "Translate"
|
||||
msgstr "Tərcümə et"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
#, fuzzy
|
||||
#| msgid "Model"
|
||||
msgid "Models"
|
||||
|
@ -111,26 +133,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Ləğv et"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Silmək"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Üstünlüklər"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Provayderlər"
|
||||
|
||||
|
@ -172,14 +194,10 @@ msgstr "İstifadəçi adı"
|
|||
msgid "Discard"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Saxla"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr ""
|
||||
|
@ -204,44 +222,44 @@ msgstr ""
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
#, fuzzy
|
||||
#| msgctxt "shortcut window"
|
||||
#| msgid "Clear"
|
||||
msgid "Clear all"
|
||||
msgstr "Təmizlə"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr ""
|
||||
|
||||
|
@ -266,10 +284,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "Mesaj"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:156
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
|
@ -288,10 +302,6 @@ msgstr ""
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Soruş"
|
||||
|
@ -330,11 +340,29 @@ msgstr "Kopyala"
|
|||
msgid "Edit"
|
||||
msgstr "Düzəliş et"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Ləğv et"
|
||||
|
||||
#: src/widgets/item.py:219
|
||||
msgid "Failed to save the image"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "Mesaj"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Message copied"
|
||||
|
@ -445,17 +473,17 @@ msgstr ""
|
|||
msgid "Thread Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr ""
|
||||
|
||||
|
|
122
po/cs.po
122
po/cs.po
|
@ -5,13 +5,15 @@
|
|||
#
|
||||
# muznyo <codeberg.vqtek@simplelogin.com>, 2023.
|
||||
# 0xMRTT <0xmrtt@proton.me>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-09-04 07:53+0000\n"
|
||||
"Last-Translator: muznyo <codeberg.vqtek@simplelogin.com>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Czech <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/cs/>\n"
|
||||
"Language: cs\n"
|
||||
|
@ -19,14 +21,34 @@ msgstr ""
|
|||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
|
||||
"X-Generator: Weblate 4.18.1\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Obrázek"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Chat"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Zvuk"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "Text"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "Jak získat token"
|
||||
|
||||
|
@ -54,7 +76,7 @@ msgstr "Omlouvám se, ale nevím, co na to říct!"
|
|||
msgid "API Key"
|
||||
msgstr "Klíč API"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "Žádná nastavení nejsou k dispozici"
|
||||
|
||||
|
@ -78,21 +100,21 @@ msgstr "Balení"
|
|||
msgid "Translate"
|
||||
msgstr "Přeložit"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Exportovat vlákno?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Zavřít"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Export"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "Modely"
|
||||
|
||||
|
@ -109,26 +131,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr "Opravdu chcete odstranit všechna vlákna? Tento krok se nedá vrátit!"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Zrušit"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Odstranit"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "Všechny chaty vymazány!"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Nastavení"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Poskytovatelé"
|
||||
|
||||
|
@ -164,14 +186,10 @@ msgstr "Uživatelské jméno"
|
|||
msgid "Discard"
|
||||
msgstr "Zahodit"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Uložit"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Exportovat vlákno?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "Název souboru"
|
||||
|
@ -196,15 +214,15 @@ msgstr "Nelze uložit vlákno"
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "Vlákno bylo úspěšně uloženo!"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "Nový chat"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "Odstranit všechny chaty"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
|
@ -212,27 +230,27 @@ msgstr ""
|
|||
"Opravdu chcete odstranit všechny chaty v tomto vlákně? Tento krok se nedá "
|
||||
"vrátit!"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr "Nic k vymazání!"
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr "Nic k exportování!"
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr "Vymazat vše"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr "Generuji odpověď"
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr "Omlouvám se, ale nevím, co na to říct."
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "Člověk"
|
||||
|
||||
|
@ -257,10 +275,6 @@ msgstr "Začněte vytvořením nového chatu nebo vybráním z boční lišty"
|
|||
msgid "Message"
|
||||
msgstr "Zpráva"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Chat"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr "Žádné zprávy"
|
||||
|
@ -277,10 +291,6 @@ msgstr "Bez internetu"
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr "Začněte vytvořením nového chatu"
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr "Otevřit výběr emoji"
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Zeptat se"
|
||||
|
@ -319,11 +329,31 @@ msgstr "Zkopírovat"
|
|||
msgid "Edit"
|
||||
msgstr "Upravit"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Odstranit"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
#, fuzzy
|
||||
#| msgid "Unable to save the Thread"
|
||||
msgid "Failed to save the image"
|
||||
msgstr "Nelze uložit vlákno"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "Zpráva"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr "Zpráva zkopírována"
|
||||
|
||||
|
@ -440,7 +470,7 @@ msgstr "Opravdu chcete toto vlákno odstranit?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr "Vlákno bylo odstraněno"
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
|
@ -448,14 +478,20 @@ msgstr ""
|
|||
"Prosím, stáhněte si model z nastavení kliknutím na tečkové menu v horní "
|
||||
"části!"
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr "Ahoj, jsem Bavarder, AI pro chatování"
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr "Prosím, vyberte si poskytovatele kliknutím na nabídku s tečkou"
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "Exportovat vlákno?"
|
||||
|
||||
#~ msgid "Open Emoji Picker"
|
||||
#~ msgstr "Otevřit výběr emoji"
|
||||
|
||||
#~ msgid "Set Title"
|
||||
#~ msgstr "Nastavit název"
|
||||
|
||||
|
|
122
po/de.po
122
po/de.po
|
@ -9,13 +9,15 @@
|
|||
# tobiasfichtner <codeberg.org@tobiasfichtner.com>, 2023.
|
||||
# Frederik Zorn <federdaemn@mail.de>, 2023.
|
||||
# Hartmut Goebel <h.goebel@crazy-compilers.com>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-10-16 01:53+0000\n"
|
||||
"Last-Translator: Hartmut Goebel <h.goebel@crazy-compilers.com>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: German <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/de/>\n"
|
||||
"Language: de\n"
|
||||
|
@ -23,14 +25,34 @@ 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.2\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Bild"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Unterhaltung"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Audio"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "Text"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "Wie Sie einen Schlüssel bekommen"
|
||||
|
||||
|
@ -58,7 +80,7 @@ msgstr "Entschuldige, ich weiß nicht, was ich sagen soll! (Fehler: {output})"
|
|||
msgid "API Key"
|
||||
msgstr "API Schlüssel"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "Keine Einstellungen verfügbar"
|
||||
|
||||
|
@ -82,21 +104,21 @@ msgstr "Packetierung"
|
|||
msgid "Translate"
|
||||
msgstr "Übersetzt"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Gespräch exportieren?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Schließen"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Exportieren"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "Modelle"
|
||||
|
||||
|
@ -115,26 +137,26 @@ msgstr ""
|
|||
"rückgängig gemacht werden!"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Abbrechen"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Löschen"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "Alle Unterhaltungen geleert!"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Einstellungen"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Anbieter"
|
||||
|
||||
|
@ -170,14 +192,10 @@ msgstr "Benutzername"
|
|||
msgid "Discard"
|
||||
msgstr "Verwerfen"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Speichern"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Gespräch exportieren?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "Dateiname"
|
||||
|
@ -202,15 +220,15 @@ msgstr "Gespräch konnte nicht gespeichert werden"
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "Gespräch erfolgreich gespeichert!"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "Neue Unterhaltung"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "Alle Unterhaltungen löschen"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
|
@ -218,27 +236,27 @@ msgstr ""
|
|||
"Sicher, dass die gesamte Unterhaltung gelöscht werden soll? Dies kann nicht "
|
||||
"rückgängig gemacht werden!"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr "Nichts zu leeren!"
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr "Nichts zu exportieren!"
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr "Alles leeren"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr "Antwort generieren"
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr "Entschuldige, ich weiß nicht, was ich sagen soll."
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "Mensch"
|
||||
|
||||
|
@ -265,10 +283,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "Nachricht"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Unterhaltung"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr "Keine Nachrichten"
|
||||
|
@ -285,10 +299,6 @@ msgstr "Keine Netzwerkverbindung"
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr "Um anzufangen, neue Unterhaltung erstellen"
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr "Emoji-Auswahl öffnen"
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Fragen"
|
||||
|
@ -327,11 +337,31 @@ msgstr "Kopieren"
|
|||
msgid "Edit"
|
||||
msgstr "Bearbeiten"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Entfernen"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
#, fuzzy
|
||||
#| msgid "Unable to save the Thread"
|
||||
msgid "Failed to save the image"
|
||||
msgstr "Gespräch konnte nicht gespeichert werden"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "Nachricht"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr "Nachricht kopiert"
|
||||
|
||||
|
@ -451,7 +481,7 @@ msgstr "Sicher, dass dieses Gespräch gelöscht werden soll?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr "Gespräch gelöscht"
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
|
@ -459,14 +489,20 @@ msgstr ""
|
|||
"Bitte ein Modell von den Einstellungen durch Klicken des Punktmenüs oben "
|
||||
"laden!"
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr "Hallo, ich bin Bavarder, eine Plauder-AI"
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr "Bitte vom Punktmenü einen Anbieter einschalten"
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "Gespräch exportieren?"
|
||||
|
||||
#~ msgid "Open Emoji Picker"
|
||||
#~ msgstr "Emoji-Auswahl öffnen"
|
||||
|
||||
#~ msgid "Set Title"
|
||||
#~ msgstr "Titel festlegen"
|
||||
|
||||
|
|
121
po/es.po
121
po/es.po
|
@ -7,16 +7,17 @@
|
|||
# sjdonado <jsrd98@gmail.com>, 2023.
|
||||
# deimidis <gmovia@pm.me>, 2023.
|
||||
# 0xMRTT <0xmrtt@proton.me>, 2023.
|
||||
# gallegonovato <fran-carro@hotmail.es>, 2023.
|
||||
# gallegonovato <fran-carro@hotmail.es>, 2023, 2024.
|
||||
# Sergio Varela <sergiovg01@outlook.com>, 2023.
|
||||
# SomeTr <SomeTr@users.noreply.translate.codeberg.org>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-10-30 09:13+0000\n"
|
||||
"Last-Translator: SomeTr <SomeTr@users.noreply.translate.codeberg.org>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-27 05:56+0000\n"
|
||||
"Last-Translator: gallegonovato <fran-carro@hotmail.es>\n"
|
||||
"Language-Team: Spanish <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/es/>\n"
|
||||
"Language: es\n"
|
||||
|
@ -24,14 +25,34 @@ 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\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Imagen"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Chat"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Voz"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "Texto"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr "Película"
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "Cómo conseguir una clave"
|
||||
|
||||
|
@ -58,7 +79,7 @@ msgstr "Lo siento, ¡no sé qué decir! (Error: {output})"
|
|||
msgid "API Key"
|
||||
msgstr "Clave de la API"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "No existen preferencias"
|
||||
|
||||
|
@ -84,21 +105,21 @@ msgstr "Embalaje"
|
|||
msgid "Translate"
|
||||
msgstr "Traducir"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
msgstr "¿Exportar hilo?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "¿Exportar el hilo?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Cerrar"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Exportar"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "Modelos"
|
||||
|
||||
|
@ -117,26 +138,26 @@ msgstr ""
|
|||
"deshacer!"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Cancelar"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Borrar"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "¡Todos los chats borrados!"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Preferencias"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Proveedores"
|
||||
|
||||
|
@ -172,14 +193,10 @@ msgstr "Nombre de usuario"
|
|||
msgid "Discard"
|
||||
msgstr "Desechar"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Guardar"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "¿Exportar el hilo?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "Nombre de archivo"
|
||||
|
@ -204,15 +221,15 @@ msgstr "No se puede guardar el hilo"
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "¡Hilo guardado correctamente!"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "Nuevo chat"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "Borrar todos los chats"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
|
@ -220,27 +237,27 @@ msgstr ""
|
|||
"¿Estás seguro de que quieres borrar todos los chats de este hilo? ¡Esto no "
|
||||
"se puede deshacer!"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr "¡Nada que borrar!"
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr "¡Nada que exportar!"
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr "Borrar todo"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr "Generando la respuesta"
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr "Lo siento, no sé qué decir."
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "humano"
|
||||
|
||||
|
@ -266,10 +283,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "Mensaje"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Chat"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr "Sin mensajes"
|
||||
|
@ -286,10 +299,6 @@ msgstr "Sin internet"
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr "Empieza creando un nuevo chat"
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr "Abrir el selector de emojis"
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Preguntar"
|
||||
|
@ -328,11 +337,27 @@ msgstr "Copiar"
|
|||
msgid "Edit"
|
||||
msgstr "Editar"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Eliminar"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
msgid "Failed to save the image"
|
||||
msgstr "No se pudo guardar la imagen"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr "Imagen guardada"
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr "No hay imagen para guardar"
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
msgid "Save message"
|
||||
msgstr "Guardar el mensaje"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr "Mensaje copiado"
|
||||
|
||||
|
@ -451,7 +476,7 @@ msgstr "¿Está seguro de que desea eliminar esta lista?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr "Hilo borrado"
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
|
@ -459,14 +484,20 @@ msgstr ""
|
|||
"¡Por favor, descarga un modelo desde «Preferencias» haciendo clic en el Menú "
|
||||
"de puntos de la parte superior!"
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr "Hola, soy Bavarder, una IA de Chit-Chat"
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr "Por favor, activa un proveedor desde el menú de puntos"
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "¿Exportar hilo?"
|
||||
|
||||
#~ msgid "Open Emoji Picker"
|
||||
#~ msgstr "Abrir el selector de emojis"
|
||||
|
||||
#~ msgid "Set Title"
|
||||
#~ msgstr "Establecer título"
|
||||
|
||||
|
|
114
po/et.po
114
po/et.po
|
@ -5,13 +5,15 @@
|
|||
#
|
||||
# vabaME <vaba@riseup.net>, 2023.
|
||||
# Weblate <noreply-mt-weblate@weblate.org>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-11-09 09:13+0000\n"
|
||||
"Last-Translator: Weblate <noreply-mt-weblate@weblate.org>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Estonian <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/et/>\n"
|
||||
"Language: et\n"
|
||||
|
@ -19,14 +21,34 @@ 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\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Pilt"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Kõne"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Heli"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
#, fuzzy
|
||||
#| msgid "How to choose a model"
|
||||
msgid "How to get a token"
|
||||
|
@ -52,7 +74,7 @@ msgstr ""
|
|||
msgid "API Key"
|
||||
msgstr "API võti"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "No preferences available"
|
||||
|
||||
|
@ -76,21 +98,21 @@ msgstr ""
|
|||
msgid "Translate"
|
||||
msgstr "Tõlgi"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Sulge"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Ekspordi"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
#, fuzzy
|
||||
#| msgid "Model"
|
||||
msgid "Models"
|
||||
|
@ -109,26 +131,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Tühista"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Kustuta"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Eelistused"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Teenusepakkujad"
|
||||
|
||||
|
@ -166,14 +188,10 @@ msgstr "Kasutaja:"
|
|||
msgid "Discard"
|
||||
msgstr "Loobu"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Salvesta"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr ""
|
||||
|
@ -198,41 +216,41 @@ msgstr ""
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr ""
|
||||
|
||||
|
@ -259,10 +277,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "Sõnum"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Kõne"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
|
@ -281,10 +295,6 @@ msgstr ""
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Küsi"
|
||||
|
@ -323,11 +333,29 @@ msgstr "Kopeeri"
|
|||
msgid "Edit"
|
||||
msgstr "Muutmine"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Eemalda"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
msgid "Failed to save the image"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "Sõnum"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Message copied"
|
||||
|
@ -438,17 +466,17 @@ msgstr ""
|
|||
msgid "Thread Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr ""
|
||||
|
||||
|
|
122
po/eu.po
122
po/eu.po
|
@ -4,13 +4,15 @@
|
|||
# Bavarder, 2023.
|
||||
#
|
||||
# Sergio Varela <sergiovg01@outlook.com>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-09-16 08:53+0000\n"
|
||||
"Last-Translator: Sergio Varela <sergiovg01@outlook.com>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Basque <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/eu/>\n"
|
||||
"Language: eu\n"
|
||||
|
@ -18,14 +20,34 @@ 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.1\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Irudia"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Txata"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Ahotsa"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "Nola lortu gako bat"
|
||||
|
||||
|
@ -53,7 +75,7 @@ msgstr "Sentitzen dut, ez dut ulertzen zer esan nahi duzun!"
|
|||
msgid "API Key"
|
||||
msgstr "API-aren gakoa"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "Ez dago hobespenik"
|
||||
|
||||
|
@ -79,21 +101,21 @@ msgstr "Enbalajea"
|
|||
msgid "Translate"
|
||||
msgstr "Itzuli"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Haria esportatu?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Itxi"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Esportatu"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "Ereduak"
|
||||
|
||||
|
@ -110,26 +132,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr "Ziur zaude hari guztiak ezabatu nahi dituzula? Hau ezin da desegin!"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Ezeztatu"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Ezabatu"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "Txat guztiak ezabatuta!"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Hobespenak"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Hornitzaileak"
|
||||
|
||||
|
@ -165,14 +187,10 @@ msgstr "Erabiltzailearen izena"
|
|||
msgid "Discard"
|
||||
msgstr "Baztertu"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Gorde"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Haria esportatu?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "Fitxategiaren izena"
|
||||
|
@ -197,15 +215,15 @@ msgstr "Ezin da haria gorde"
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "Haria ondo gorde da!"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "Txat berria"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "Txat guztiak ezabatu"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
|
@ -213,27 +231,27 @@ msgstr ""
|
|||
"Ziur zaude hari honetako txat guztiak ezabatu nahi dituzula? Hau ezin da "
|
||||
"desegin!"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr "Ez dago ezer ezabatzerik!"
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr "Esportatzeko ezer ez!"
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr "Garbitu dena"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr "Erantzuna sortzen"
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr "Sentitzen dut, ez dakit zer esan."
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "gizakia"
|
||||
|
||||
|
@ -258,10 +276,6 @@ msgstr "Hasi txat berri bat sortzen edo alboko barrako bat hautatzen"
|
|||
msgid "Message"
|
||||
msgstr "Mezua"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Txata"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr "Mezurik gabe"
|
||||
|
@ -278,10 +292,6 @@ msgstr "Internet gabe"
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr "Hasi txat berri bat sortzen"
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr "Emoji-en hautagailua ireki"
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Galdetu"
|
||||
|
@ -320,11 +330,31 @@ msgstr "Kopiatu"
|
|||
msgid "Edit"
|
||||
msgstr "Editatu"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Kendu"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
#, fuzzy
|
||||
#| msgid "Unable to save the Thread"
|
||||
msgid "Failed to save the image"
|
||||
msgstr "Ezin da haria gorde"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "Mezua"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr "Mezua kopiatuta"
|
||||
|
||||
|
@ -442,7 +472,7 @@ msgstr "Ziur zaude zerrenda hau ezabatu nahi duzula?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr "Haria ezabatu da"
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
|
@ -450,13 +480,19 @@ msgstr ""
|
|||
"Mesedez, deskargatu eredu bat «Hobespenak» atalean, goiko aldeko puntuen "
|
||||
"menuan klik eginez!"
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr "Kaixo, Bavarder naiz, Txit-Txateko AA bat"
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr "Mesedez, aktibatu hornitzaile bat puntuen menutik"
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "Haria esportatu?"
|
||||
|
||||
#~ msgid "Open Emoji Picker"
|
||||
#~ msgstr "Emoji-en hautagailua ireki"
|
||||
|
||||
#~ msgid "Set Title"
|
||||
#~ msgstr "Titulua ezarri"
|
||||
|
|
114
po/fa.po
114
po/fa.po
|
@ -5,13 +5,15 @@
|
|||
#
|
||||
# kouroshtaf <kouroshtaf@gmail.com>, 2023.
|
||||
# Kourosh <kouroshtaf@gmail.com>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-08-03 15:00+0000\n"
|
||||
"Last-Translator: Anonymous <noreply@weblate.org>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Persian <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/fa/>\n"
|
||||
"Language: fa\n"
|
||||
|
@ -19,14 +21,34 @@ 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.1\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "باوارده"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "تصویر"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "گپ"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "صدا"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr ""
|
||||
|
||||
|
@ -52,7 +74,7 @@ msgstr ""
|
|||
msgid "API Key"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr ""
|
||||
|
||||
|
@ -78,21 +100,21 @@ msgstr ""
|
|||
msgid "Translate"
|
||||
msgstr "ترجمه"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "بستن"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "برونبرد"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
#, fuzzy
|
||||
#| msgid "Model"
|
||||
msgid "Models"
|
||||
|
@ -113,26 +135,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr "آیا مطمئنید که میخواهید این فرسته پیش نویس شده را حذف کنید؟"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "لغو"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "پاک کردن"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "پیشفرضها"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "تامین کنندگان"
|
||||
|
||||
|
@ -176,14 +198,10 @@ msgstr "کاربر"
|
|||
msgid "Discard"
|
||||
msgstr "دورانداختن"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "ذخیره"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "نام فایل"
|
||||
|
@ -208,15 +226,15 @@ msgstr ""
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
#, fuzzy
|
||||
#| msgid "Are you sure you want to delete this thread?"
|
||||
msgid ""
|
||||
|
@ -224,30 +242,30 @@ msgid ""
|
|||
"undone!"
|
||||
msgstr "آیا مطمئنید که میخواهید این فرسته پیش نویس شده را حذف کنید؟"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
#, fuzzy
|
||||
#| msgctxt "shortcut window"
|
||||
#| msgid "Clear"
|
||||
msgid "Clear all"
|
||||
msgstr "پاکسازی"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "انسان"
|
||||
|
||||
|
@ -274,10 +292,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "پیام"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "گپ"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
|
@ -296,10 +310,6 @@ msgstr ""
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "بپرس"
|
||||
|
@ -338,11 +348,29 @@ msgstr "رونوشت"
|
|||
msgid "Edit"
|
||||
msgstr "ویرایش"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "حذف کردن"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
msgid "Failed to save the image"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "پیام"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Message copied"
|
||||
|
@ -453,17 +481,17 @@ msgstr "آیا مطمئنید که میخواهید این فرسته پیش
|
|||
msgid "Thread Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr ""
|
||||
|
||||
|
|
120
po/fi.po
120
po/fi.po
|
@ -6,13 +6,15 @@
|
|||
# artnay <jiri.gronroos@iki.fi>, 2023.
|
||||
# 0xMRTT <0xmrtt@proton.me>, 2023.
|
||||
# jaahas <jaaahas@proton.me>, 2024.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2024-02-24 02:56+0000\n"
|
||||
"Last-Translator: jaahas <jaaahas@proton.me>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Finnish <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/fi/>\n"
|
||||
"Language: fi\n"
|
||||
|
@ -27,7 +29,27 @@ msgstr ""
|
|||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Kuva"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Chatti"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Ääni"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "Teksti"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "Miten saat poletin"
|
||||
|
||||
|
@ -53,7 +75,7 @@ msgstr "Valitettavasti en tiedä mitä sanoa! (Virhe: {output})"
|
|||
msgid "API Key"
|
||||
msgstr "API-avain"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "Asetuksia ei ole saatavilla"
|
||||
|
||||
|
@ -80,21 +102,21 @@ msgstr "Paketointi"
|
|||
msgid "Translate"
|
||||
msgstr "Käännä"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Viedäänkö ketju?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Sulje"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Vie"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "Mallit"
|
||||
|
||||
|
@ -111,26 +133,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr "Haluatko varmasti poistaa kaikki ketjut? Tätä ei voi perua!"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Peruuta"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Poista"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "Kaikki keskustelut tyhjennetty!"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Asetukset"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Palveluntarjoajat"
|
||||
|
||||
|
@ -166,14 +188,10 @@ msgstr "Käyttäjänimi"
|
|||
msgid "Discard"
|
||||
msgstr "Hylkää"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Tallenna"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Viedäänkö ketju?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "Tiedoston nimi"
|
||||
|
@ -198,15 +216,15 @@ msgstr "Ketjua ei voitu tallentaa"
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "Ketju tallennettu!"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "Uusi keskustelu"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "Poista kaikki keskustelut"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
|
@ -214,27 +232,27 @@ msgstr ""
|
|||
"Haluatko varmasti poistaa kaikki keskustelut tästä ketjusta? Tätä ei voi "
|
||||
"perua!"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr "Ei mitään tyhjennettävää!"
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr "Ei mitään vietävää!"
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr "Tyhjennä kaikki"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr "Luodaan vastausta"
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr "Valitettavasti en tiedä mitä sanoa."
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "ihminen"
|
||||
|
||||
|
@ -260,10 +278,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "Viesti"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Chatti"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr "Ei viestejä"
|
||||
|
@ -280,10 +294,6 @@ msgstr "Ei internetyhteyttä"
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr "Aloita luomalla uusi keskustelu"
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr "Avaa emojivalitsin"
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Kysy"
|
||||
|
@ -322,11 +332,31 @@ msgstr "Kopioi"
|
|||
msgid "Edit"
|
||||
msgstr "Muokkaa"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Poista"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
#, fuzzy
|
||||
#| msgid "Unable to save the Thread"
|
||||
msgid "Failed to save the image"
|
||||
msgstr "Ketjua ei voitu tallentaa"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "Viesti"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr "Viesti kopioitu"
|
||||
|
||||
|
@ -436,20 +466,26 @@ msgstr "Haluatko varmasti poistaa tämän?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr "Ketju poistettu"
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr "Lataa malli asetusten kautta napsauttamalla yläkulman pistevalikkoa!"
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr "Hei, olen Bavarder, keskusteleva tekoäly"
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr "Ota palveluntarjoaja käyttöön pistevalikosta"
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "Viedäänkö ketju?"
|
||||
|
||||
#~ msgid "Open Emoji Picker"
|
||||
#~ msgstr "Avaa emojivalitsin"
|
||||
|
||||
#~ msgid "Set Title"
|
||||
#~ msgstr "Aseta nimi"
|
||||
|
||||
|
|
118
po/fr.po
118
po/fr.po
|
@ -4,7 +4,7 @@
|
|||
# Bavarder, 2023.
|
||||
#
|
||||
# 0xMRTT <0xmrtt@tuta.io>, 2023.
|
||||
# 0xMRTT <0xmrtt@proton.me>, 2023.
|
||||
# 0xMRTT <0xmrtt@proton.me>, 2023, 2024.
|
||||
# muznyo <codeberg.vqtek@simplelogin.com>, 2023.
|
||||
# rene-coty <irenee.thirion@e.email>, 2023.
|
||||
# jibecfed <jean-baptiste@holcroft.fr>, 2023.
|
||||
|
@ -12,8 +12,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-11-27 06:13+0000\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: 0xMRTT <0xmrtt@proton.me>\n"
|
||||
"Language-Team: French <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/fr/>\n"
|
||||
|
@ -22,14 +22,34 @@ 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\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Image"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Discussion"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Audio"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "Texte"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr "Vidéo"
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "Comment obtenir un jeton"
|
||||
|
||||
|
@ -56,7 +76,7 @@ msgstr "Désolé, je ne sais pas quoi dire ! (Erreur : {output})"
|
|||
msgid "API Key"
|
||||
msgstr "Clé d’API"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "Pas de préférences disponibles"
|
||||
|
||||
|
@ -80,21 +100,21 @@ msgstr "Empaquetage"
|
|||
msgid "Translate"
|
||||
msgstr "Traduire"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
msgstr "Exporter le fil ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Exporter le fil de discussion ?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Fermer"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Exporter"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "Modèles"
|
||||
|
||||
|
@ -113,26 +133,26 @@ msgstr ""
|
|||
"pourra être annulée !"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Annuler"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Supprimer"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "Toutes les discussions ont été effacées !"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Préférences"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Fournisseurs"
|
||||
|
||||
|
@ -168,14 +188,10 @@ msgstr "Nom d’utilisateur"
|
|||
msgid "Discard"
|
||||
msgstr "Abandonner"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Enregistrer"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Exporter le fil de discussion ?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "Nom du fichier"
|
||||
|
@ -200,15 +216,15 @@ msgstr "Impossible d’enregistrer le fil"
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "Fil enregistré avec succès !"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "Nouvelle discussion"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "Supprimer tous les messages"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
|
@ -216,27 +232,27 @@ msgstr ""
|
|||
"Souhaitez-vous vraiment supprimer tous les messages de ce fil ? Cette action "
|
||||
"ne pourra être annulée !"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr "Rien à effacer !"
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr "Rien à exporter !"
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr "Effacer tout"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr "En train de générer une réponse"
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr "Désolé, je ne sais pas quoi dire."
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "Humain"
|
||||
|
||||
|
@ -263,10 +279,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "Message"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Discussion"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr "Pas de messages"
|
||||
|
@ -283,10 +295,6 @@ msgstr "Pas d’internet"
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr "Commencez par créer une nouvelle discussion"
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr "Ouvrir le sélecteur d’émoticônes"
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Demander"
|
||||
|
@ -325,11 +333,27 @@ msgstr "Copier"
|
|||
msgid "Edit"
|
||||
msgstr "Modifier"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Retirer"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
msgid "Failed to save the image"
|
||||
msgstr "Impossible d’enregistrer l'image"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr "Image enregistré"
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr "Aucune image à enregistrer"
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
msgid "Save message"
|
||||
msgstr "Message enregistré"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr "Message copié"
|
||||
|
||||
|
@ -448,7 +472,7 @@ msgstr "Voulez-vous vraiment supprimer cette discussion ?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr "Discussion supprimée"
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
|
@ -456,14 +480,20 @@ msgstr ""
|
|||
"Merci de télécharger un modèle depuis les Préférences en cliquant sur le "
|
||||
"Menu en pointillés en haut !"
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr "Bonjour, je suis Bavarder, une IA pour bavarder"
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr "Merci d’activer un modèle depuis le Menu en pointillés"
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "Exporter le fil ?"
|
||||
|
||||
#~ msgid "Open Emoji Picker"
|
||||
#~ msgstr "Ouvrir le sélecteur d’émoticônes"
|
||||
|
||||
#~ msgid "Set Title"
|
||||
#~ msgstr "Définir le titre"
|
||||
|
||||
|
|
114
po/gl.po
114
po/gl.po
|
@ -5,13 +5,15 @@
|
|||
#
|
||||
# xosecalvo <xosecalvo@gmail.com>, 2023.
|
||||
# SomeTr <SomeTr@users.noreply.translate.codeberg.org>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-10-30 22:13+0000\n"
|
||||
"Last-Translator: SomeTr <SomeTr@users.noreply.translate.codeberg.org>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Galician <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/gl/>\n"
|
||||
"Language: gl\n"
|
||||
|
@ -19,14 +21,34 @@ 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\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Imaxe"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Chat"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Voz"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
#, fuzzy
|
||||
#| msgid "How to choose a model"
|
||||
msgid "How to get a token"
|
||||
|
@ -52,7 +74,7 @@ msgstr ""
|
|||
msgid "API Key"
|
||||
msgstr "Chave da API"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "Non hai ningunha preferencia dispoñíbel"
|
||||
|
||||
|
@ -80,21 +102,21 @@ msgstr ""
|
|||
msgid "Translate"
|
||||
msgstr "Traducir"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Pechar"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Exportar"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
#, fuzzy
|
||||
#| msgid "Model"
|
||||
msgid "Models"
|
||||
|
@ -115,26 +137,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr "Tes a certeza de querer eliminar a lista “%s”?"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Anular"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Eliminar"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Preferencias"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Fornecedores"
|
||||
|
||||
|
@ -178,14 +200,10 @@ msgstr "Usuaria"
|
|||
msgid "Discard"
|
||||
msgstr "Descartar"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Gardar"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr ""
|
||||
|
@ -210,17 +228,17 @@ msgstr ""
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
#, fuzzy
|
||||
#| msgid "New Chat"
|
||||
msgid "New chat"
|
||||
msgstr "Nova Conversa"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
#, fuzzy
|
||||
#| msgid "Are you sure you want to delete this thread?"
|
||||
msgid ""
|
||||
|
@ -228,30 +246,30 @@ msgid ""
|
|||
"undone!"
|
||||
msgstr "Tes a certeza de querer eliminar a lista “%s”?"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
#, fuzzy
|
||||
#| msgctxt "shortcut window"
|
||||
#| msgid "Clear"
|
||||
msgid "Clear all"
|
||||
msgstr "Limpar"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "Persoa"
|
||||
|
||||
|
@ -278,10 +296,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "Mensaxe"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Chat"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
|
@ -300,10 +314,6 @@ msgstr ""
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Preguntar"
|
||||
|
@ -342,11 +352,29 @@ msgstr "Copiar"
|
|||
msgid "Edit"
|
||||
msgstr "Editar"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Retirar"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
msgid "Failed to save the image"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "Mensaxe"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Message copied"
|
||||
|
@ -457,17 +485,17 @@ msgstr "Tes a certeza de querer eliminar a lista “%s”?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr ""
|
||||
|
||||
|
|
114
po/he.po
114
po/he.po
|
@ -4,13 +4,15 @@
|
|||
# Bavarder, 2023.
|
||||
#
|
||||
# shoko <nickskorohod@outlook.com>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-08-22 15:41+0000\n"
|
||||
"Last-Translator: Anonymous <noreply@weblate.org>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Hebrew <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/he/>\n"
|
||||
"Language: he\n"
|
||||
|
@ -19,14 +21,34 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n == 1) ? 0 : ((n == 2) ? 1 : ((n > 10 && "
|
||||
"n % 10 == 0) ? 2 : 3));\n"
|
||||
"X-Generator: Weblate 4.18.1\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "תמונה"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "צ'אט"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "שמע"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "גוף הטקסט"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr ""
|
||||
|
||||
|
@ -50,7 +72,7 @@ msgstr ""
|
|||
msgid "API Key"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr ""
|
||||
|
||||
|
@ -74,21 +96,21 @@ msgstr ""
|
|||
msgid "Translate"
|
||||
msgstr "תרגום"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "סגור"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "יצא"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr ""
|
||||
|
||||
|
@ -105,26 +127,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "בטל"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "מחיקה"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "העדפות"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr ""
|
||||
|
||||
|
@ -160,14 +182,10 @@ msgstr "שם משתמש"
|
|||
msgid "Discard"
|
||||
msgstr "השלך"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "שמור"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr ""
|
||||
|
@ -192,41 +210,41 @@ msgstr ""
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr ""
|
||||
|
||||
|
@ -251,10 +269,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "הודעה"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "צ'אט"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr ""
|
||||
|
@ -271,10 +285,6 @@ msgstr ""
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr ""
|
||||
|
@ -313,11 +323,29 @@ msgstr "העתקה"
|
|||
msgid "Edit"
|
||||
msgstr "ערוך"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "הסרה"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
msgid "Failed to save the image"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "הודעה"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr ""
|
||||
|
||||
|
@ -424,16 +452,16 @@ msgstr "האם הנך בטוח כי ברצונך למחוק את זה?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr ""
|
||||
|
|
114
po/hu.po
114
po/hu.po
|
@ -7,13 +7,15 @@
|
|||
# 0xMRTT <0xmrtt@proton.me>, 2023.
|
||||
# elementbound <ezittgtx@gmail.com>, 2023.
|
||||
# ViBE <vibe@protonmail.com>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-08-20 18:05+0000\n"
|
||||
"Last-Translator: Anonymous <noreply@weblate.org>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Hungarian <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/hu/>\n"
|
||||
"Language: hu\n"
|
||||
|
@ -21,14 +23,34 @@ 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.1\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Kép"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Csevegés"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Hang"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "Szöveg"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "API.kulcs beszerzése"
|
||||
|
||||
|
@ -52,7 +74,7 @@ msgstr ""
|
|||
msgid "API Key"
|
||||
msgstr "API-kulcs"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "Nincs elérhető beállítás"
|
||||
|
||||
|
@ -76,21 +98,21 @@ msgstr ""
|
|||
msgid "Translate"
|
||||
msgstr "Fordítás"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Bezár"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Exportálás"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
#, fuzzy
|
||||
#| msgid "Model"
|
||||
msgid "Models"
|
||||
|
@ -111,26 +133,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr "Biztos, hogy törölni szeretnéd?"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Mégse"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Törlés"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Beállítások"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Szolgáltatók"
|
||||
|
||||
|
@ -174,14 +196,10 @@ msgstr "Felhasználó"
|
|||
msgid "Discard"
|
||||
msgstr "Elvetés"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Mentés"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "Fájl név"
|
||||
|
@ -206,17 +224,17 @@ msgstr ""
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
#, fuzzy
|
||||
#| msgid "Chat"
|
||||
msgid "New chat"
|
||||
msgstr "Csevegés"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
#, fuzzy
|
||||
#| msgid "Are you sure you want to delete this thread?"
|
||||
msgid ""
|
||||
|
@ -224,30 +242,30 @@ msgid ""
|
|||
"undone!"
|
||||
msgstr "Biztos, hogy törölni szeretnéd?"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
#, fuzzy
|
||||
#| msgctxt "shortcut window"
|
||||
#| msgid "Clear"
|
||||
msgid "Clear all"
|
||||
msgstr "Kiürítés"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "Ember"
|
||||
|
||||
|
@ -276,10 +294,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "Üzenet"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Csevegés"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
|
@ -298,10 +312,6 @@ msgstr ""
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Kérdés küldése"
|
||||
|
@ -340,11 +350,29 @@ msgstr "Másolás"
|
|||
msgid "Edit"
|
||||
msgstr "Szerkesztés"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Eltávolítás"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
msgid "Failed to save the image"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "Üzenet"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Message copied"
|
||||
|
@ -455,17 +483,17 @@ msgstr "Biztos, hogy törölni szeretnéd?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr ""
|
||||
|
||||
|
|
124
po/it.po
124
po/it.po
|
@ -11,13 +11,15 @@
|
|||
# albanobattistella <albanobattistella@gmail.com>, 2023.
|
||||
# maupao <paolo@paolomauri.it>, 2023.
|
||||
# enderboyk2 <lorenzomicci48@gmail.com>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-10-25 08:13+0000\n"
|
||||
"Last-Translator: albanobattistella <albanobattistella@gmail.com>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Italian <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/it/>\n"
|
||||
"Language: it\n"
|
||||
|
@ -25,14 +27,34 @@ 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\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Immagine"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Chat"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Voce"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "Testo"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "Come avere una chiave"
|
||||
|
||||
|
@ -59,7 +81,7 @@ msgstr "Mi spiace, non so cosa dire!(Errore: {output})"
|
|||
msgid "API Key"
|
||||
msgstr "Chiave API"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "Impostazioni non disponibili"
|
||||
|
||||
|
@ -85,21 +107,21 @@ msgstr "Pacchetto"
|
|||
msgid "Translate"
|
||||
msgstr "Traduci"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
msgstr "Esporto il thread?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Esportare la discussione?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Chiudi"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Esporta"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "Modelli"
|
||||
|
||||
|
@ -117,26 +139,26 @@ msgstr ""
|
|||
"Sei sicuro di voler eliminare tutti i threads? Questa azione è irreversibile!"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Cancella"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Elimina"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "Tutte le chat sono state pulite!"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Preferenze"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Fornitori"
|
||||
|
||||
|
@ -172,14 +194,10 @@ msgstr "Nome utente"
|
|||
msgid "Discard"
|
||||
msgstr "Scarta"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Salva"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Esportare la discussione?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "Nome File"
|
||||
|
@ -204,15 +222,15 @@ msgstr "Impossibile salvare la discussione"
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "Discussione salvata!"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "Nuova chat"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "Elimina tutte le chat"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
|
@ -220,27 +238,27 @@ msgstr ""
|
|||
"Sei sicuro di volerlo cancellare tutte le chat in questa discussione? Questa "
|
||||
"azione è irreversibile!"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr "Niente da pulire!"
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr "Niente da esportare!"
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr "Cancella tutto"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr "Generazione della risposta"
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr "Scusa, non so che dire."
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "Umano"
|
||||
|
||||
|
@ -265,10 +283,6 @@ msgstr "Inizia creando una nuova chat o selezionane una dalla barra laterale"
|
|||
msgid "Message"
|
||||
msgstr "Messaggio"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Chat"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr "Nessun messaggio"
|
||||
|
@ -285,10 +299,6 @@ msgstr "Nessuna connessione"
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr "Inizia creando una nuova chat"
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr "Apri il menu delle Emoji"
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Chiedi"
|
||||
|
@ -327,11 +337,31 @@ msgstr "Copia"
|
|||
msgid "Edit"
|
||||
msgstr "Modifica"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Rimuovi"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
#, fuzzy
|
||||
#| msgid "Unable to save the Thread"
|
||||
msgid "Failed to save the image"
|
||||
msgstr "Impossibile salvare la discussione"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "Messaggio"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr "Messaggio copiato"
|
||||
|
||||
|
@ -450,21 +480,27 @@ msgstr "Sei sicuro di volerlo cancellare?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr "Discussione eliminata"
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
"Perfavore, scarica un modello dalle impostazioni cliccando nel menù in alto!"
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr "Ciao, io sono Bavarder, un' IA"
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr "Perfavore, abilita un provider dal menù"
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "Esporto il thread?"
|
||||
|
||||
#~ msgid "Open Emoji Picker"
|
||||
#~ msgstr "Apri il menu delle Emoji"
|
||||
|
||||
#~ msgid "Set Title"
|
||||
#~ msgstr "Imposta titolo"
|
||||
|
||||
|
|
117
po/nl.po
117
po/nl.po
|
@ -3,13 +3,14 @@
|
|||
# This file is distributed under the GNU GPLv3 license.
|
||||
# Bavarder, 2023.
|
||||
#
|
||||
# Vistaus <vistausss@fastmail.com>, 2023.
|
||||
# Vistaus <vistausss@fastmail.com>, 2023, 2024.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-10-05 04:53+0000\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-26 02:56+0000\n"
|
||||
"Last-Translator: Vistaus <vistausss@fastmail.com>\n"
|
||||
"Language-Team: Dutch <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/nl/>\n"
|
||||
|
@ -18,14 +19,34 @@ 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.2\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Afbeelding"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Gesprek"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Spraak"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "Tekst"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr "Film"
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "Hoe verkrijg ik een sleutel?"
|
||||
|
||||
|
@ -52,7 +73,7 @@ msgstr "Ik heb hier geen antwoord op! (Foutmelding: {output})"
|
|||
msgid "API Key"
|
||||
msgstr "Api-sleutel"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "Er zijn geen voorkeuren beschikbaar"
|
||||
|
||||
|
@ -76,21 +97,21 @@ msgstr "Pakketten"
|
|||
msgid "Translate"
|
||||
msgstr "Vertalen"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Gesprek exporteren?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Sluiten"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Exporteren"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "Modellen"
|
||||
|
||||
|
@ -109,26 +130,26 @@ msgstr ""
|
|||
"onomkeerbaar!"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Annuleren"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Verwijderen"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "Alle gesprekken zijn gewist!"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Voorkeuren"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Diensten"
|
||||
|
||||
|
@ -164,14 +185,10 @@ msgstr "Gebruikersnaam"
|
|||
msgid "Discard"
|
||||
msgstr "Negeren"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Opslaan"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Gesprek exporteren?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "Bestandsnaam"
|
||||
|
@ -196,15 +213,15 @@ msgstr "Het gesprek kan niet worden opgeslagen"
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "Het gesprek is opgeslagen!"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "Nieuw gesprek"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "Alle gesprekken verwijderen"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
|
@ -212,27 +229,27 @@ msgstr ""
|
|||
"Weet je zeker dat je alle gesprekken wilt verwijderen? Deze actie is "
|
||||
"onomkeerbaar!"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr "Er valt niks te wissen!"
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr "Er valt niks te exporteren!"
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr "Alles wissen"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr "Bezig met samenstellen van antwoord…"
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr "Ik heb hier geen antwoord op - sorry."
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "Mens"
|
||||
|
||||
|
@ -257,10 +274,6 @@ msgstr "Begin een gesprek of kies een bestaand gesprek uit de zijbalk"
|
|||
msgid "Message"
|
||||
msgstr "Bericht"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Gesprek"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr "Geen berichten"
|
||||
|
@ -277,10 +290,6 @@ msgstr "Geen internetverbinding"
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr "Begin een gesprek"
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr "Emojikiezer openen"
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Vraag stellen"
|
||||
|
@ -319,11 +328,27 @@ msgstr "Kopiëren"
|
|||
msgid "Edit"
|
||||
msgstr "Bewerken"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Verwijderen"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
msgid "Failed to save the image"
|
||||
msgstr "De afbeelding kan niet worden bewaard"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr "De afbeelding is bewaard"
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr "Er is geen te bewaren afbeelding"
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
msgid "Save message"
|
||||
msgstr "Bericht bewaren"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr "Het bericht is gekopieerd"
|
||||
|
||||
|
@ -438,20 +463,26 @@ msgstr "Weet je zeker dat je dit wilt verwijderen?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr "Het gesprek is verwijderd"
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr "Installeer een model via de voorkeuren of het ellipsmenu!"
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr "Hallo, ik ben Bavarder, je koetjes-en-kalfjes-KI"
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr "Schakel een dienst in via het ellipsmenu"
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "Gesprek exporteren?"
|
||||
|
||||
#~ msgid "Open Emoji Picker"
|
||||
#~ msgstr "Emojikiezer openen"
|
||||
|
||||
#~ msgid "Set Title"
|
||||
#~ msgstr "Titel instellen"
|
||||
|
||||
|
|
124
po/pl.po
124
po/pl.po
|
@ -6,13 +6,15 @@
|
|||
# ioghjog <michal.d1191@gmail.com>, 2023.
|
||||
# 0xMRTT <0xmrtt@proton.me>, 2023.
|
||||
# Eryk Michalak <gnu.ewm@protonmail.com>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-10-27 12:13+0000\n"
|
||||
"Last-Translator: Eryk Michalak <gnu.ewm@protonmail.com>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Polish <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/pl/>\n"
|
||||
"Language: pl\n"
|
||||
|
@ -21,14 +23,34 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
|
||||
"|| n%100>=20) ? 1 : 2;\n"
|
||||
"X-Generator: Weblate 5.1\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Obrazek"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Czat"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Głos"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "Tekst"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "Jak uzyskać token"
|
||||
|
||||
|
@ -55,7 +77,7 @@ msgstr "Przepraszam, nie wiem co powiedzieć! (Błąd: {output})"
|
|||
msgid "API Key"
|
||||
msgstr "Klucz API"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "Brak dostępnych preferencji"
|
||||
|
||||
|
@ -79,21 +101,21 @@ msgstr "Tworzenie paczek"
|
|||
msgid "Translate"
|
||||
msgstr "Tłumacz"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
msgstr "Eksportować wątek ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Eksportować wątek?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Zamknij"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Eksportuj"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "Modele"
|
||||
|
||||
|
@ -110,26 +132,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr "Czy na pewno chcesz usunąć wszystkie wątki? Nie można tego cofnąć!"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Anuluj"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Usuń"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "Wyczyszczono wszystkie wątki!"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Preferencje"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Dostawcy"
|
||||
|
||||
|
@ -165,14 +187,10 @@ msgstr "Nazwa użytkownika"
|
|||
msgid "Discard"
|
||||
msgstr "Odrzuć"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Zapisz"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Eksportować wątek?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "Nazwa pliku"
|
||||
|
@ -197,15 +215,15 @@ msgstr "Nie udało się zapisać wątku"
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "Wątek został zapisany pomyślnie!"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "Nowy czat"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "Usuń wszystkie czaty"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
|
@ -213,27 +231,27 @@ msgstr ""
|
|||
"Czy na pewno chcesz usunąć wszystkie czaty w tym wątku? Nie można tego "
|
||||
"cofnąć!"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr "Nie ma nic do wyczyszczenia!"
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr "Nie ma nic do eksportu!"
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr "Wyczyść wszystko"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr "Generowanie odpowiedzi"
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr "Przepraszam, nie wiem co powiedzieć."
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "Człowiek"
|
||||
|
||||
|
@ -258,10 +276,6 @@ msgstr "Rozpocznij, tworząc nowy czat lub wybierając go z paska bocznego"
|
|||
msgid "Message"
|
||||
msgstr "Wiadomość"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Czat"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr "Brak wiadomości"
|
||||
|
@ -278,10 +292,6 @@ msgstr "Brak połączenia z internetem"
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr "Rozpocznij poprzez stworzenie nowego czatu"
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr "Otwórz wybór emoji"
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Zapytaj"
|
||||
|
@ -320,11 +330,31 @@ msgstr "Kopiuj"
|
|||
msgid "Edit"
|
||||
msgstr "Edycja"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Usuń"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
#, fuzzy
|
||||
#| msgid "Unable to save the Thread"
|
||||
msgid "Failed to save the image"
|
||||
msgstr "Nie udało się zapisać wątku"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "Wiadomość"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr "Skopiowano wiadomość"
|
||||
|
||||
|
@ -443,20 +473,26 @@ msgstr "Czy jesteś pewien że chcesz usunąć tą listę?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr "Usunięto wątek"
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr "Prosimy pobrać model w zakładce Preferencje z Menu Kropki na górze!"
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr "Dzień dobry, jestem Bavarder, sztuczna inteligencja do czatowania"
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr "Prosimy włączyć dostawcę z Menu Kropki"
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "Eksportować wątek ?"
|
||||
|
||||
#~ msgid "Open Emoji Picker"
|
||||
#~ msgstr "Otwórz wybór emoji"
|
||||
|
||||
#~ msgid "Set Title"
|
||||
#~ msgstr "Ustaw tytuł"
|
||||
|
||||
|
|
121
po/pt.po
121
po/pt.po
|
@ -7,13 +7,15 @@
|
|||
# 0xMRTT <0xmrtt@proton.me>, 2023.
|
||||
# aresende <contact@aresende.com>, 2023.
|
||||
# N4taa <r0dr1g02m4r5d3v@gmail.com>, 2024.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2024-01-05 07:56+0000\n"
|
||||
"Last-Translator: N4taa <r0dr1g02m4r5d3v@gmail.com>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Portuguese <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/pt/>\n"
|
||||
"Language: pt\n"
|
||||
|
@ -21,14 +23,34 @@ 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.1\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Imagem"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Conversas"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Voz"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "Texto"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "Como adquirir um token"
|
||||
|
||||
|
@ -55,7 +77,7 @@ msgstr "Desculpe, não sei o que dizer! (Erro: {output})"
|
|||
msgid "API Key"
|
||||
msgstr "Chave de API"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "Nenhuma configuração disponível"
|
||||
|
||||
|
@ -79,21 +101,21 @@ msgstr ""
|
|||
msgid "Translate"
|
||||
msgstr "Traduzir"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
msgstr "Exportar Conversa ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Exportar conversa?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Fechar"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Exportar"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "Modelos"
|
||||
|
||||
|
@ -112,26 +134,26 @@ msgstr ""
|
|||
"desfeita!"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Cancelar"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Apagar"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "Todas as conversas foram limpas!"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Preferências"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Provedores"
|
||||
|
||||
|
@ -170,14 +192,10 @@ msgstr "Nome de Utilizador"
|
|||
msgid "Discard"
|
||||
msgstr "Descartar"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Guardar"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Exportar conversa?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "Nome do Ficheiro"
|
||||
|
@ -202,15 +220,15 @@ msgstr "Incapaz de salvar a Conversa"
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "Conversa salva com sucesso!"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "Nova conversa"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "Apagar Todas as Conversas"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
#, fuzzy
|
||||
#| msgid "Are you sure you want to delete this thread?"
|
||||
msgid ""
|
||||
|
@ -218,30 +236,30 @@ msgid ""
|
|||
"undone!"
|
||||
msgstr "De certeza que pretende apagar o lembrete?"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
#, fuzzy
|
||||
#| msgctxt "shortcut window"
|
||||
#| msgid "Clear"
|
||||
msgid "Clear all"
|
||||
msgstr "Limpar"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "Humano"
|
||||
|
||||
|
@ -270,10 +288,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "Mensagem"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Conversas"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
|
@ -292,10 +306,6 @@ msgstr ""
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Perguntar"
|
||||
|
@ -334,11 +344,31 @@ msgstr "Cópia"
|
|||
msgid "Edit"
|
||||
msgstr "Editar"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Remover"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
#, fuzzy
|
||||
#| msgid "Unable to save the Thread"
|
||||
msgid "Failed to save the image"
|
||||
msgstr "Incapaz de salvar a Conversa"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "Mensagem"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Message copied"
|
||||
|
@ -449,20 +479,23 @@ msgstr "De certeza que pretende apagar o lembrete?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "Exportar Conversa ?"
|
||||
|
||||
#, fuzzy, python-format
|
||||
#~| msgid "Chat"
|
||||
#~ msgid "New Chat %i"
|
||||
|
|
122
po/ru.po
122
po/ru.po
|
@ -8,13 +8,15 @@
|
|||
# 0xMRTT <0xmrtt@proton.me>, 2023.
|
||||
# nikrtyd <nikrtyd@gmail.com>, 2023.
|
||||
# David Lapshin <ddaudix@gmail.com>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-12-16 16:56+0000\n"
|
||||
"Last-Translator: David Lapshin <ddaudix@gmail.com>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Russian <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/ru/>\n"
|
||||
"Language: ru\n"
|
||||
|
@ -23,14 +25,34 @@ 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.2.1\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Изображение"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Чат"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Звук"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "Текст"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "Как получить токен"
|
||||
|
||||
|
@ -57,7 +79,7 @@ msgstr "Извините, я не знаю, что сказать! (Ошибка
|
|||
msgid "API Key"
|
||||
msgstr "Ключ API"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "Параметры отсутствуют"
|
||||
|
||||
|
@ -81,21 +103,21 @@ msgstr "Упаковка"
|
|||
msgid "Translate"
|
||||
msgstr "Перевести"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Экспортировать беседу?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Закрыть"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Экспортировать"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "Модели"
|
||||
|
||||
|
@ -112,26 +134,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr "Вы уверены, что хотите удалить все беседы? Это не может быть отменено!"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Отменить"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Удалить"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "Все чаты очищены!"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Параметры"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Провайдеры"
|
||||
|
||||
|
@ -167,14 +189,10 @@ msgstr "Имя пользователя"
|
|||
msgid "Discard"
|
||||
msgstr "Отменить"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Сохранить"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Экспортировать беседу?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "Имя файла"
|
||||
|
@ -199,15 +217,15 @@ msgstr "Не удалось сохранить беседу"
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "Беседа сохранена успешно!"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "Новый чат"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "Удалить все чаты"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
|
@ -215,27 +233,27 @@ msgstr ""
|
|||
"Вы уверены, что хотите удалить все чаты в этой беседе? Это не может быть "
|
||||
"отменено!"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr "Нечего очищать!"
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr "Нечего экспортировать!"
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr "Очистить все"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr "Генерируется ответ"
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr "Извините, я не знаю, что сказать."
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "человек"
|
||||
|
||||
|
@ -261,10 +279,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "Сообщение"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Чат"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr "Нет сообщений"
|
||||
|
@ -281,10 +295,6 @@ msgstr "Нет интернета"
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr "Начните с создания нового чата"
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr "Открыть панель выбора эмодзи"
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Спросить"
|
||||
|
@ -323,11 +333,31 @@ msgstr "Копировать"
|
|||
msgid "Edit"
|
||||
msgstr "Изменить"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Удалить"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
#, fuzzy
|
||||
#| msgid "Unable to save the Thread"
|
||||
msgid "Failed to save the image"
|
||||
msgstr "Не удалось сохранить беседу"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "Сообщение"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr "Сообщение скопировано"
|
||||
|
||||
|
@ -444,21 +474,27 @@ msgstr "Вы уверены, что хотите удалить эту бесе
|
|||
msgid "Thread Deleted"
|
||||
msgstr "Беседа удалена"
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
"Пожалуйста, загрузите модель в Параметрах, нажав на меню с точками сверху!"
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr "Здравствуйте, я Bavarder, ИИ болтовни"
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr "Пожалуйста, включите провайдера в меню с точками"
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "Экспортировать беседу?"
|
||||
|
||||
#~ msgid "Open Emoji Picker"
|
||||
#~ msgstr "Открыть панель выбора эмодзи"
|
||||
|
||||
#~ msgid "Set Title"
|
||||
#~ msgstr "Установить название"
|
||||
|
||||
|
|
112
po/sv.po
112
po/sv.po
|
@ -7,13 +7,13 @@
|
|||
# Morgan Antonsson <morgan.antonsson@gmail.com>, 2023.
|
||||
# 0xMRTT <0xmrtt@proton.me>, 2023.
|
||||
# SomeTr <SomeTr@users.noreply.translate.codeberg.org>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2023, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-11-09 09:13+0000\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Swedish <https://translate.codeberg.org/projects/bavarder/"
|
||||
|
@ -23,14 +23,34 @@ 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\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Bild"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Chatt"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Ljud"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "text"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr ""
|
||||
|
||||
|
@ -56,7 +76,7 @@ msgstr ""
|
|||
msgid "API Key"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr ""
|
||||
|
||||
|
@ -82,21 +102,21 @@ msgstr ""
|
|||
msgid "Translate"
|
||||
msgstr "Översätt"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Stäng"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Exportera"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
#, fuzzy
|
||||
#| msgid "Model"
|
||||
msgid "Models"
|
||||
|
@ -117,26 +137,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr "Är du säker på att du vill ta bort detta?"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Avbryt"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Radera"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Inställningar"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Leverantörer"
|
||||
|
||||
|
@ -180,14 +200,10 @@ msgstr "Användare"
|
|||
msgid "Discard"
|
||||
msgstr "Kassera"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Spara"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "filnamn"
|
||||
|
@ -212,15 +228,15 @@ msgstr ""
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
#, fuzzy
|
||||
#| msgid "Are you sure you want to delete this thread?"
|
||||
msgid ""
|
||||
|
@ -228,30 +244,30 @@ msgid ""
|
|||
"undone!"
|
||||
msgstr "Är du säker på att du vill ta bort detta?"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
#, fuzzy
|
||||
#| msgctxt "shortcut window"
|
||||
#| msgid "Clear"
|
||||
msgid "Clear all"
|
||||
msgstr "Rensa"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "Människa"
|
||||
|
||||
|
@ -278,10 +294,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "Meddelande"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Chatt"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
|
@ -300,10 +312,6 @@ msgstr ""
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Fråga"
|
||||
|
@ -342,11 +350,29 @@ msgstr "Kopiera"
|
|||
msgid "Edit"
|
||||
msgstr "Redigera"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Ta bort"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
msgid "Failed to save the image"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "Meddelande"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Message copied"
|
||||
|
@ -457,17 +483,17 @@ msgstr "Är du säker på att du vill ta bort detta?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr ""
|
||||
|
||||
|
|
124
po/ta.po
124
po/ta.po
|
@ -4,13 +4,15 @@
|
|||
# Bavarder, 2023.
|
||||
#
|
||||
# "K.B.Dharun Krishna" <kbdharunkrishna@gmail.com>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-10-14 17:53+0000\n"
|
||||
"Last-Translator: \"K.B.Dharun Krishna\" <kbdharunkrishna@gmail.com>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Tamil <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/ta/>\n"
|
||||
"Language: ta\n"
|
||||
|
@ -18,14 +20,34 @@ 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.2\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "பவார்டர்"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "படம்"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "உரையாடல்"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "உரை"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "குறி அடையாளம் பெறுவது எப்படி"
|
||||
|
||||
|
@ -52,7 +74,7 @@ msgstr "மன்னிக்கவும், எனக்கு என்ன
|
|||
msgid "API Key"
|
||||
msgstr "API விசை"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "விருப்பத்தேர்வுகள் இல்லை"
|
||||
|
||||
|
@ -76,21 +98,21 @@ msgstr "பொதியிடல்"
|
|||
msgid "Translate"
|
||||
msgstr "மொழிபெயர்"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
msgstr "ஏற்றுமதி தொடரிழை ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "ஏற்றுமதி தொடரிழை?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "மூடு"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "ஏற்றுமதி"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "மாதிரிகள்"
|
||||
|
||||
|
@ -108,26 +130,26 @@ msgstr ""
|
|||
"எல்லா தொடரிழைகளையும் நிச்சயமாக நீக்க விரும்புகிறீர்களா? இதை செயல்தவிர்க்க முடியாது!"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "ரத்துசெய்"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "நீக்கு"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "அனைத்து உரையாடல்களும் அழிக்கப்பட்டன!"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "விருப்பத்தேர்வுகள்"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "வழங்குபவர்கள்"
|
||||
|
||||
|
@ -163,14 +185,10 @@ msgstr "பயனர் பெயர்"
|
|||
msgid "Discard"
|
||||
msgstr "நிராகரிக்கவும்"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "சேமி"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "ஏற்றுமதி தொடரிழை?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "File name"
|
||||
|
@ -195,15 +213,15 @@ msgstr "தொடரிழையைச் சேமிக்க முடிய
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "தொடரிழை வெற்றிகரமாக சேமிக்கப்பட்டது!"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "புதிய உரையாடல்"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "அனைத்து உரையாடல்களையும் நீக்கு"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
|
@ -211,27 +229,27 @@ msgstr ""
|
|||
"இந்த தொடரிழையில் உள்ள அனைத்து உரையாடல்களையும் நிச்சயமாக நீக்க விரும்புகிறீர்களா? இதை "
|
||||
"செயல்தவிர்க்க முடியாது!"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr "தெளிவுபடுத்த எதுவும் இல்லை!"
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr "ஏற்றுமதி செய்ய எதுவும் இல்லை!"
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr "அனைத்தையும் அழி"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr "பதிலை உருவாக்குகிறது"
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr "மன்னிக்கவும், எனக்கு என்ன சொல்வது என்று தெரியவில்லை."
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "மனிதன்"
|
||||
|
||||
|
@ -258,10 +276,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "செய்தி"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "உரையாடல்"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr "செய்திகள் இல்லை"
|
||||
|
@ -278,10 +292,6 @@ msgstr "இணையம் இல்லை"
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr "புதிய உரையாடலை உருவாக்குவதன் மூலம் தொடங்கவும்"
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr "ஈமோஜி பிக்கரைத் திறக்கவும்"
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "கேள்"
|
||||
|
@ -320,11 +330,31 @@ msgstr "நகல்"
|
|||
msgid "Edit"
|
||||
msgstr "திருத்து"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "அகற்று"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
#, fuzzy
|
||||
#| msgid "Unable to save the Thread"
|
||||
msgid "Failed to save the image"
|
||||
msgstr "தொடரிழையைச் சேமிக்க முடியவில்லை"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "செய்தி"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr "செய்தி நகலெடுக்கப்பட்டது"
|
||||
|
||||
|
@ -442,21 +472,27 @@ msgstr "இந்த தொடரிழையை நிச்சயமாக ந
|
|||
msgid "Thread Deleted"
|
||||
msgstr "தொடரிழை நீக்கப்பட்டது"
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
"மேலே உள்ள புள்ளி பட்டியலை தொடுவதன் மூலம் விருப்பங்களிலிருந்து மாதிரியைப் பதிவிறக்கவும்!"
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr "வணக்கம், நான் பவார்டர், ஒரு சிட்-சாட் AI"
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr "புள்ளி பட்டியலில் இருந்து வழங்குநரை இயக்கவும்"
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "ஏற்றுமதி தொடரிழை ?"
|
||||
|
||||
#~ msgid "Open Emoji Picker"
|
||||
#~ msgstr "ஈமோஜி பிக்கரைத் திறக்கவும்"
|
||||
|
||||
#~ msgid "Set Title"
|
||||
#~ msgstr "தலைப்பை அமைக்கவும்"
|
||||
|
||||
|
|
138
po/th.po
138
po/th.po
|
@ -5,13 +5,15 @@
|
|||
#
|
||||
# watchakorn-18k <porton555@gmail.com>, 2023.
|
||||
# yuttct <yuttct@yahoo.com>, 2024.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2024-02-02 01:56+0000\n"
|
||||
"Last-Translator: yuttct <yuttct@yahoo.com>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Thai <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/th/>\n"
|
||||
"Language: th\n"
|
||||
|
@ -19,14 +21,34 @@ 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.3.1\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "แชท"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "รูปภาพ"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "พูดคุย"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "วิธีรับโทเค็น"
|
||||
|
||||
|
@ -53,7 +75,7 @@ msgstr "ขออภัย ฉันไม่รู้จะพูดอะไ
|
|||
msgid "API Key"
|
||||
msgstr "คีย์ API"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "ไม่มีค่ากำหนดที่ใช้ได้"
|
||||
|
||||
|
@ -77,21 +99,21 @@ msgstr "บรรจุภัณฑ์"
|
|||
msgid "Translate"
|
||||
msgstr "แปลภาษา"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
msgstr "ส่งออกเธรด ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "ส่งออกเธรด?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "ปิด"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "ส่งออก"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "โมเดล"
|
||||
|
||||
|
@ -108,26 +130,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr "คุณแน่ใจหรือไม่ว่าต้องการลบกระทู้ทั้งหมด? สิ่งนี้ไม่สามารถยกเลิกได้!"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "ยกเลิก"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "ลบ"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "ล้างแชททั้งหมดแล้ว!"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "การตั้งค่า"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "ผู้ให้บริการ"
|
||||
|
||||
|
@ -166,14 +188,10 @@ msgstr "ชื่อผู้ใช้"
|
|||
msgid "Discard"
|
||||
msgstr "ทิ้ง"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "บันทึก"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "ส่งออกเธรด?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "ชื่อไฟล์"
|
||||
|
@ -198,43 +216,41 @@ msgstr "ไม่สามารถบันทึกกระทู้ได้
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "บันทึกชุดข้อความสำเร็จแล้ว!"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "แชทใหม่"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "ลบแชททั้งหมด"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
msgstr ""
|
||||
"คุณแน่ใจหรือไม่ว่าต้องการลบการแชททั้งหมดในกระทู้นี้ "
|
||||
"สิ่งนี้ไม่สามารถยกเลิกได้!"
|
||||
msgstr "คุณแน่ใจหรือไม่ว่าต้องการลบการแชททั้งหมดในกระทู้นี้ สิ่งนี้ไม่สามารถยกเลิกได้!"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr "ไม่มีอะไรต้องเคลียร์!"
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr "ไม่มีอะไรจะส่งออก!"
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr "ลบทั้งหมด"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr "กำลังสร้างการตอบสนอง"
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr "ขออภัย ฉันไม่รู้จะพูดอะไร"
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "มนุษย์"
|
||||
|
||||
|
@ -259,10 +275,6 @@ msgstr "เริ่มต้นด้วยการสร้างแชทใ
|
|||
msgid "Message"
|
||||
msgstr "ข้อความ"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "พูดคุย"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr "ไม่มีข้อความ"
|
||||
|
@ -279,10 +291,6 @@ msgstr "ไม่มีอินเทอร์เน็ต"
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr "เริ่มต้นด้วยการสร้างแชทใหม่"
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr "เปิดเครื่องมือเลือกอีโมจิ"
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "ถาม"
|
||||
|
@ -321,11 +329,31 @@ msgstr "คัดลอก"
|
|||
msgid "Edit"
|
||||
msgstr "แก้ไข"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "ลบ"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
#, fuzzy
|
||||
#| msgid "Unable to save the Thread"
|
||||
msgid "Failed to save the image"
|
||||
msgstr "ไม่สามารถบันทึกกระทู้ได้"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "ข้อความ"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr "คัดลอกข้อความแล้ว"
|
||||
|
||||
|
@ -349,8 +377,7 @@ msgstr "อุณหภูมิ"
|
|||
msgid ""
|
||||
"The model temperature. Larger values increase creativity but decrease "
|
||||
"factuality."
|
||||
msgstr ""
|
||||
"อุณหภูมิของโมเดล ค่าที่มากขึ้นจะเพิ่มความคิดสร้างสรรค์แต่ลดความเป็นจริงลง"
|
||||
msgstr "อุณหภูมิของโมเดล ค่าที่มากขึ้นจะเพิ่มความคิดสร้างสรรค์แต่ลดความเป็นจริงลง"
|
||||
|
||||
#: src/widgets/model_item.blp:45
|
||||
msgid "Top K"
|
||||
|
@ -361,8 +388,8 @@ msgid ""
|
|||
"Randomly sample from the top_k most likely tokens at each generation step. "
|
||||
"Set this to 1 for greedy decoding."
|
||||
msgstr ""
|
||||
"สุ่มตัวอย่างจากโทเค็นที่มีแนวโน้มมากที่สุด top_k ในแต่ละขั้นตอนการสร้าง "
|
||||
"ตั้งค่านี้เป็น 1 สำหรับการถอดรหัสแบบละโมบ"
|
||||
"สุ่มตัวอย่างจากโทเค็นที่มีแนวโน้มมากที่สุด top_k ในแต่ละขั้นตอนการสร้าง ตั้งค่านี้เป็น 1 "
|
||||
"สำหรับการถอดรหัสแบบละโมบ"
|
||||
|
||||
#: src/widgets/model_item.blp:59
|
||||
msgid "Top P"
|
||||
|
@ -373,8 +400,7 @@ msgid ""
|
|||
"Randomly sample at each generation step from the top most likely tokens "
|
||||
"whose probabilities add up to top_p."
|
||||
msgstr ""
|
||||
"สุ่มตัวอย่างในแต่ละขั้นตอนการสร้างจากโทเค็นที่มีแนวโน้มสูงที่สุดซึ่งความน่าจะ"
|
||||
"เป็นรวมกันเป็น top_p"
|
||||
"สุ่มตัวอย่างในแต่ละขั้นตอนการสร้างจากโทเค็นที่มีแนวโน้มสูงที่สุดซึ่งความน่าจะเป็นรวมกันเป็น top_p"
|
||||
|
||||
#: src/widgets/model_item.blp:74
|
||||
msgid "Repetition Penalty"
|
||||
|
@ -439,20 +465,26 @@ msgstr "คุณแน่ใจไหมว่าต้องการลบส
|
|||
msgid "Thread Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr ""
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "ส่งออกเธรด ?"
|
||||
|
||||
#~ msgid "Open Emoji Picker"
|
||||
#~ msgstr "เปิดเครื่องมือเลือกอีโมจิ"
|
||||
|
||||
#~ msgid "Clear prompt after send"
|
||||
#~ msgstr "ล้างพร้อมต์หลังจากส่ง"
|
||||
|
||||
|
|
122
po/tr.po
122
po/tr.po
|
@ -9,13 +9,15 @@
|
|||
# Edip1 <medip642@gmail.com>, 2023.
|
||||
# sabriunal <libreajans@gmail.com>, 2023.
|
||||
# Sabri Ünal <libreajans@gmail.com>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-10-22 08:53+0000\n"
|
||||
"Last-Translator: Sabri Ünal <libreajans@gmail.com>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Turkish <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/tr/>\n"
|
||||
"Language: tr\n"
|
||||
|
@ -23,14 +25,34 @@ 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.2\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Resim"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Sohbet"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Ses"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "Metin"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "Jeton nasıl alınır"
|
||||
|
||||
|
@ -57,7 +79,7 @@ msgstr "Üzgünüm, ne diyeceğimi bilemiyorum! (Hata: {output})"
|
|||
msgid "API Key"
|
||||
msgstr "API Anahtarı"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "Kullanılabilir tercih yok"
|
||||
|
||||
|
@ -85,21 +107,21 @@ msgstr "Paketleme"
|
|||
msgid "Translate"
|
||||
msgstr "Çevir"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Başlık Dışa Aktarılsın Mı?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Kapat"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Dışa Aktar"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "Modeller"
|
||||
|
||||
|
@ -117,26 +139,26 @@ msgstr ""
|
|||
"Tüm başlıkları silmek istediğinize emin misiniz? Bu işlem geri alınamaz!"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "İptal"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Sil"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "Tüm sohbetler temizlendi!"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Tercihler"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Sağlayıcılar"
|
||||
|
||||
|
@ -172,14 +194,10 @@ msgstr "Kullanıcı adı"
|
|||
msgid "Discard"
|
||||
msgstr "Yoksay"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Kaydet"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Başlık Dışa Aktarılsın Mı?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "Dosya Adı"
|
||||
|
@ -204,15 +222,15 @@ msgstr "Başlık kaydedilemedi"
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "Başlık kaydedildi!"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "Yeni sohbet"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "Tüm Sohbetleri Sil"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
|
@ -220,27 +238,27 @@ msgstr ""
|
|||
"Tüm başlıktaki tüm sohbetleri silmek istediğinize emin misiniz? Bu işlem "
|
||||
"geri alınamaz!"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr "Temizlenecek bir şey yok!"
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr "Dışa aktarılacak bir şey yok!"
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr "Tümünü temizle"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr "Yanıt oluşturuluyor"
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr "Üzgünüm, ne diyeceğimi bilmiyorum."
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "insan"
|
||||
|
||||
|
@ -265,10 +283,6 @@ msgstr "Yeni sohbet oluşturarak ya da kenar çubuğundan sohbet seçerek başla
|
|||
msgid "Message"
|
||||
msgstr "İleti"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Sohbet"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr "İleti Yok"
|
||||
|
@ -285,10 +299,6 @@ msgstr "Internet Yok"
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr "Yeni sohbet oluşturarak başlayın"
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr "Emoji Seçiciyi Aç"
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Sor"
|
||||
|
@ -327,11 +337,31 @@ msgstr "Kopyala"
|
|||
msgid "Edit"
|
||||
msgstr "Düzenle"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Kaldır"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
#, fuzzy
|
||||
#| msgid "Unable to save the Thread"
|
||||
msgid "Failed to save the image"
|
||||
msgstr "Başlık kaydedilemedi"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "İleti"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr "İleti kopyalandı"
|
||||
|
||||
|
@ -450,21 +480,27 @@ msgstr "Bu başlığı silmek istediğinize emin misiniz?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr "Başlık Silindi"
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
"Lütfen üstteki Nokta Menüsüne tıklayarak Tercihler'den bir model indirin!"
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr "Merhaba, ben Bavarder, sohbet için bir Yapay Zekayım"
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr "Nokta Menüden bir sağlayıcı etkinleştiriniz"
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "Başlık Dışa Aktarılsın Mı?"
|
||||
|
||||
#~ msgid "Open Emoji Picker"
|
||||
#~ msgstr "Emoji Seçiciyi Aç"
|
||||
|
||||
#~ msgid "Set Title"
|
||||
#~ msgstr "Başlık Belirle"
|
||||
|
||||
|
|
118
po/uk.po
118
po/uk.po
|
@ -9,14 +9,14 @@
|
|||
# volkov <d2oo1dle2x@gmail.com>, 2023.
|
||||
# Anatolii Bielibov <anatoly136ua@gmail.com>, 2023.
|
||||
# Anatolii Bielibov <Anatoly136UA@users.noreply.translate.codeberg.org>, 2023.
|
||||
# SomeTr <SomeTr@users.noreply.translate.codeberg.org>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2023.
|
||||
# SomeTr <SomeTr@users.noreply.translate.codeberg.org>, 2023, 2024.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2023, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-12-26 08:56+0000\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-26 02:56+0000\n"
|
||||
"Last-Translator: SomeTr <SomeTr@users.noreply.translate.codeberg.org>\n"
|
||||
"Language-Team: Ukrainian <https://translate.codeberg.org/projects/bavarder/"
|
||||
"bavarder/uk/>\n"
|
||||
|
@ -26,14 +26,34 @@ 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.3.1\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "Зображення"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Бесіда"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "Звук"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "Текст"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr "Відео"
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "Як отримати токен"
|
||||
|
||||
|
@ -60,7 +80,7 @@ msgstr "Вибачте, я не знаю, що сказати! (Помилка:
|
|||
msgid "API Key"
|
||||
msgstr "Ключ API"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "Налаштування відсутні"
|
||||
|
||||
|
@ -84,21 +104,21 @@ msgstr "Пакунок"
|
|||
msgid "Translate"
|
||||
msgstr "Перекласти"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Експортувати гілку?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "Закрити"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "Експортувати"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "Моделі"
|
||||
|
||||
|
@ -115,26 +135,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr "Ви впевнені, що хочете видалити всі гілки? Це не можна буде скасувати!"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "Скасувати"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "Видалити"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "Усі бесіди очищено!"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "Налаштування"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "Постачальники"
|
||||
|
||||
|
@ -170,14 +190,10 @@ msgstr "Ім'я користувача"
|
|||
msgid "Discard"
|
||||
msgstr "Скасувати зміни"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "Зберегти"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "Експортувати гілку?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "Ім'я файлу"
|
||||
|
@ -202,15 +218,15 @@ msgstr "Не вдалося зберегти гілку"
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "Гілку успішно збережено!"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "Нова бесіда"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "Видалити всі бесіди"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
|
@ -218,27 +234,27 @@ msgstr ""
|
|||
"Ви впевнені, що хочете видалити всі бесіди в цій гілці? Це не можна буде "
|
||||
"скасувати!"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr "Нічого очищувати!"
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr "Нічого експортувати!"
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr "Очистити все"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr "Відповідь генерується"
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr "Вибачте, я не знаю, що сказати."
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "Людина"
|
||||
|
||||
|
@ -263,10 +279,6 @@ msgstr "Щоб почати, створіть нову бесіду або ви
|
|||
msgid "Message"
|
||||
msgstr "Повідомлення"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "Бесіда"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr "Немає повідомлень"
|
||||
|
@ -283,10 +295,6 @@ msgstr "Немає підключення до Інтернету"
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr "Щоб почати, створіть нову бесіду"
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr "Відкрити панель вибору емоджі"
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "Запитати"
|
||||
|
@ -325,11 +333,27 @@ msgstr "Копіювати"
|
|||
msgid "Edit"
|
||||
msgstr "Редагувати"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "Вилучити"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
msgid "Failed to save the image"
|
||||
msgstr "Не вдалося зберегти зображення"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr "Зображення збережено"
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr "Немає зображення для збереження"
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
msgid "Save message"
|
||||
msgstr "Зберегти повідомлення"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr "Повідомлення скопійовано"
|
||||
|
||||
|
@ -448,20 +472,26 @@ msgstr "Ви впевнені, що хочете видалити цю гілк
|
|||
msgid "Thread Deleted"
|
||||
msgstr "Гілку видалено"
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr "Завантажте модель у Налаштуваннях, натиснувши вгорі меню з крапками!"
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr "Привіт, я Bavarder, ШІ для розмов"
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr "Будь ласка, виберіть постачальника в меню з крапками"
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "Експортувати гілку?"
|
||||
|
||||
#~ msgid "Open Emoji Picker"
|
||||
#~ msgstr "Відкрити панель вибору емоджі"
|
||||
|
||||
#~ msgid "Set Title"
|
||||
#~ msgstr "Вказати назву"
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
#!/bin/bash
|
||||
#!/usr/bin/env bash
|
||||
|
||||
po_dir=$(dirname "$(realpath "$0")")
|
||||
xgettext -f "$po_dir"/POTFILES -o "$po_dir"/Bavarder.pot --add-comments=Translators --keyword=_ --keyword=C_1c,2 --from-code=UTF-8
|
||||
sed -i "s/SOME DESCRIPTIVE TITLE./Bavarder POT file/" "$po_dir"/Bavarder.pot
|
||||
|
|
122
po/zh_Hans.po
122
po/zh_Hans.po
|
@ -5,13 +5,15 @@
|
|||
#
|
||||
# yangyangdaji <1504305527@qq.com>, 2023.
|
||||
# ericjsz <codeberg@togr.top>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-11-02 17:13+0000\n"
|
||||
"Last-Translator: ericjsz <codeberg@togr.top>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Chinese (Simplified) <https://translate.codeberg.org/projects/"
|
||||
"bavarder/bavarder/zh_Hans/>\n"
|
||||
"Language: zh_Hans\n"
|
||||
|
@ -19,14 +21,34 @@ 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.1\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "聊天"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "图像"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "聊天"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "语音"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "文本"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "如何获得令牌"
|
||||
|
||||
|
@ -52,7 +74,7 @@ msgstr "抱歉,我不知道该说什么!(Error: {output})"
|
|||
msgid "API Key"
|
||||
msgstr "API 密钥"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "没有可用的选项"
|
||||
|
||||
|
@ -76,21 +98,21 @@ msgstr "打包"
|
|||
msgid "Translate"
|
||||
msgstr "翻译"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "导出线程?"
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "关闭"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "导出"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
msgid "Models"
|
||||
msgstr "模型"
|
||||
|
||||
|
@ -107,26 +129,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr "您确定要删除所有线程吗? 这无法挽回!"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "取消"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "删除"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr "聊天全部清空!"
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "首选项"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "提供者"
|
||||
|
||||
|
@ -162,14 +184,10 @@ msgstr "用户名称"
|
|||
msgid "Discard"
|
||||
msgstr "丢弃"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "保存"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr "导出线程?"
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "文件名"
|
||||
|
@ -194,41 +212,41 @@ msgstr "无法保存线程"
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr "线程成功保存!"
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr "新聊天"
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr "删除所有聊天内容"
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
msgid ""
|
||||
"Are you sure you want to delete all chats in this thread? This can't be "
|
||||
"undone!"
|
||||
msgstr "您确定要删除该线程中的所有聊天吗? 这无法挽回!"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr "没有什么要澄清的!"
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr "没什么可导出的!"
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr "全部清除"
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr "生成响应"
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr "抱歉,我不知道该说什么。"
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "人类"
|
||||
|
||||
|
@ -253,10 +271,6 @@ msgstr "通过创建新聊天或从侧边栏中选择一个开始"
|
|||
msgid "Message"
|
||||
msgstr "消息"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "聊天"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
msgid "No Messages"
|
||||
msgstr "没有消息"
|
||||
|
@ -273,10 +287,6 @@ msgstr "无网络"
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr "首先创建新的聊天"
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr "打开表情选择器"
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "询问"
|
||||
|
@ -315,11 +325,31 @@ msgstr "复制"
|
|||
msgid "Edit"
|
||||
msgstr "编辑"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "移除"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
#, fuzzy
|
||||
#| msgid "Unable to save the Thread"
|
||||
msgid "Failed to save the image"
|
||||
msgstr "无法保存线程"
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "消息"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
msgid "Message copied"
|
||||
msgstr "消息已复制"
|
||||
|
||||
|
@ -428,20 +458,26 @@ msgstr "您确定要删除此列表吗?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr "线程已删除"
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr "请点击顶部的点菜单从首选项下载模型!"
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr "大家好,我是 Bavarder,一个会聊天的AI"
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr "请从点菜单启用提供商"
|
||||
|
||||
#~ msgid "Export Thread ?"
|
||||
#~ msgstr "导出线程?"
|
||||
|
||||
#~ msgid "Open Emoji Picker"
|
||||
#~ msgstr "打开表情选择器"
|
||||
|
||||
#~ msgid "Set Title"
|
||||
#~ msgstr "选择标题"
|
||||
|
||||
|
|
114
po/zh_Hant.po
114
po/zh_Hant.po
|
@ -5,13 +5,15 @@
|
|||
#
|
||||
# PeterDaveHello <hsu@peterdavehello.org>, 2023.
|
||||
# Weblate <noreply-mt-weblate@weblate.org>, 2023.
|
||||
# Weblate Translation Memory <noreply-mt-weblate-translation-memory@weblate.org>, 2024.
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2023-10-04 15:21+0200\n"
|
||||
"PO-Revision-Date: 2023-12-08 21:09+0000\n"
|
||||
"Last-Translator: Weblate <noreply-mt-weblate@weblate.org>\n"
|
||||
"POT-Creation-Date: 2024-02-25 14:46+0100\n"
|
||||
"PO-Revision-Date: 2024-02-25 13:48+0000\n"
|
||||
"Last-Translator: Weblate Translation Memory <noreply-mt-weblate-translation-"
|
||||
"memory@weblate.org>\n"
|
||||
"Language-Team: Chinese (Traditional) <https://translate.codeberg.org/"
|
||||
"projects/bavarder/bavarder/zh_Hant/>\n"
|
||||
"Language: zh_Hant\n"
|
||||
|
@ -19,14 +21,34 @@ 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\n"
|
||||
"X-Generator: Weblate 5.4\n"
|
||||
|
||||
#: data/io.github.Bavarder.Bavarder.desktop.in.in:3 src/views/window.blp:6
|
||||
#: src/views/window.blp:26 src/views/window.blp:62 src/views/window.blp:168
|
||||
msgid "Bavarder"
|
||||
msgstr "Bavarder"
|
||||
|
||||
#: src/providers/base.py:79
|
||||
#: src/providers/base.py:8
|
||||
msgid "Image"
|
||||
msgstr "圖片"
|
||||
|
||||
#: src/providers/base.py:9 src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "聊天"
|
||||
|
||||
#: src/providers/base.py:10
|
||||
msgid "Voice"
|
||||
msgstr "音訊"
|
||||
|
||||
#: src/providers/base.py:11
|
||||
msgid "Text"
|
||||
msgstr "文字"
|
||||
|
||||
#: src/providers/base.py:12
|
||||
msgid "Movie"
|
||||
msgstr ""
|
||||
|
||||
#: src/providers/base.py:86
|
||||
msgid "How to get a token"
|
||||
msgstr "如何取得金鑰"
|
||||
|
||||
|
@ -50,7 +72,7 @@ msgstr ""
|
|||
msgid "API Key"
|
||||
msgstr "API 金鑰"
|
||||
|
||||
#: src/providers/provider_item.blp:12
|
||||
#: src/providers/provider_item.blp:18
|
||||
msgid "No preferences available"
|
||||
msgstr "無可用偏好設定"
|
||||
|
||||
|
@ -74,21 +96,21 @@ msgstr ""
|
|||
msgid "Translate"
|
||||
msgstr "翻譯"
|
||||
|
||||
#: src/views/export_dialog.blp:6
|
||||
msgid "Export Thread ?"
|
||||
#: src/views/export_dialog.blp:6 src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/export_dialog.blp:53
|
||||
msgid "Close"
|
||||
msgstr "關閉"
|
||||
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:286
|
||||
#: src/views/window.py:324
|
||||
#: src/views/export_dialog.blp:54 src/views/window.py:288
|
||||
#: src/views/window.py:326
|
||||
msgid "Export"
|
||||
msgstr "匯出"
|
||||
|
||||
#: src/views/preferences_window.py:53 src/views/preferences_window.blp:11
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:311
|
||||
#: src/views/preferences_window.blp:19 src/views/window.py:313
|
||||
#, fuzzy
|
||||
#| msgid "Model"
|
||||
msgid "Models"
|
||||
|
@ -109,26 +131,26 @@ msgid "Are you sure you want to delete all threads? This can't be undone!"
|
|||
msgstr "您確定要刪除嗎?"
|
||||
|
||||
#: src/views/preferences_window.py:77 src/views/save_dialog.blp:7
|
||||
#: src/views/window.py:217 src/views/window.py:382
|
||||
#: src/views/window.py:219 src/views/window.py:384 src/widgets/item.py:240
|
||||
#: src/widgets/thread_item.py:86 src/widgets/thread_item.py:126
|
||||
msgid "Cancel"
|
||||
msgstr "取消"
|
||||
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:218
|
||||
#: src/views/preferences_window.py:78 src/views/window.py:220
|
||||
#: src/widgets/thread_item.blp:28 src/widgets/thread_item.py:127
|
||||
msgid "Delete"
|
||||
msgstr "刪除"
|
||||
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:243
|
||||
#: src/views/preferences_window.py:93 src/views/window.py:245
|
||||
msgid "All chats cleared!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/preferences_window.blp:5 src/views/preferences_window.blp:24
|
||||
#: src/views/window.py:276 src/views/window.py:314 src/views/window.blp:299
|
||||
#: src/views/window.py:278 src/views/window.py:316 src/views/window.blp:299
|
||||
msgid "Preferences"
|
||||
msgstr "偏好設定"
|
||||
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:273
|
||||
#: src/views/preferences_window.blp:15 src/views/window.py:275
|
||||
msgid "Providers"
|
||||
msgstr "服務提供者"
|
||||
|
||||
|
@ -166,14 +188,10 @@ msgstr "使用者"
|
|||
msgid "Discard"
|
||||
msgstr "捨棄"
|
||||
|
||||
#: src/views/save_dialog.blp:9
|
||||
#: src/views/save_dialog.blp:9 src/widgets/item.blp:110 src/widgets/item.py:241
|
||||
msgid "Save"
|
||||
msgstr "儲存"
|
||||
|
||||
#: src/views/save_dialog.blp:13
|
||||
msgid "Export Thread?"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/save_dialog.blp:26
|
||||
msgid "File Name"
|
||||
msgstr "檔名"
|
||||
|
@ -198,15 +216,15 @@ msgstr ""
|
|||
msgid "Thread successfully saved!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:177
|
||||
#: src/views/window.py:179
|
||||
msgid "New chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:212
|
||||
#: src/views/window.py:214
|
||||
msgid "Delete All Chats"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:213
|
||||
#: src/views/window.py:215
|
||||
#, fuzzy
|
||||
#| msgid "Are you sure you want to delete this thread?"
|
||||
msgid ""
|
||||
|
@ -214,27 +232,27 @@ msgid ""
|
|||
"undone!"
|
||||
msgstr "您確定要刪除嗎?"
|
||||
|
||||
#: src/views/window.py:229 src/views/window.py:245
|
||||
#: src/views/window.py:231 src/views/window.py:247
|
||||
msgid "Nothing to clear!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:255
|
||||
#: src/views/window.py:257
|
||||
msgid "Nothing to export!"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:281 src/views/window.py:319
|
||||
#: src/views/window.py:283 src/views/window.py:321
|
||||
msgid "Clear all"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:381
|
||||
#: src/views/window.py:383
|
||||
msgid "Generating response"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:395 src/views/window.py:400
|
||||
#: src/views/window.py:397 src/views/window.py:410
|
||||
msgid "Sorry, I don't know what to say."
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.py:441
|
||||
#: src/views/window.py:451
|
||||
msgid "human"
|
||||
msgstr "人類"
|
||||
|
||||
|
@ -261,10 +279,6 @@ msgstr ""
|
|||
msgid "Message"
|
||||
msgstr "訊息"
|
||||
|
||||
#: src/views/window.blp:108
|
||||
msgid "Chat"
|
||||
msgstr "聊天"
|
||||
|
||||
#: src/views/window.blp:156
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
|
@ -283,10 +297,6 @@ msgstr ""
|
|||
msgid "Get started by creating a new chat"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:243
|
||||
msgid "Open Emoji Picker"
|
||||
msgstr ""
|
||||
|
||||
#: src/views/window.blp:259
|
||||
msgid "Ask"
|
||||
msgstr "詢問"
|
||||
|
@ -325,11 +335,29 @@ msgstr "複製"
|
|||
msgid "Edit"
|
||||
msgstr "編輯"
|
||||
|
||||
#: src/widgets/item.blp:112
|
||||
#: src/widgets/item.blp:117
|
||||
msgid "Remove"
|
||||
msgstr "移除"
|
||||
|
||||
#: src/widgets/item.py:189
|
||||
#: src/widgets/item.py:219
|
||||
msgid "Failed to save the image"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:221
|
||||
msgid "Image saved"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:231
|
||||
msgid "No image to save"
|
||||
msgstr ""
|
||||
|
||||
#: src/widgets/item.py:235
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Save message"
|
||||
msgstr "訊息"
|
||||
|
||||
#: src/widgets/item.py:251
|
||||
#, fuzzy
|
||||
#| msgid "Message"
|
||||
msgid "Message copied"
|
||||
|
@ -440,17 +468,17 @@ msgstr "您確定要刪除嗎?"
|
|||
msgid "Thread Deleted"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:262
|
||||
#: src/main.py:261
|
||||
msgid ""
|
||||
"Please download a model from Preferences by clicking on the Dot Menu at the "
|
||||
"top!"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:266
|
||||
#: src/main.py:265
|
||||
msgid "Hello, I am Bavarder, a Chit-Chat AI"
|
||||
msgstr ""
|
||||
|
||||
#: src/main.py:289
|
||||
#: src/main.py:288
|
||||
msgid "Please enable a provider from the Dot Menu"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -8,4 +8,5 @@ charset-normalizer
|
|||
idna
|
||||
urllib3
|
||||
Babel
|
||||
openai
|
||||
openai
|
||||
pillow
|
|
@ -24,10 +24,9 @@ import time
|
|||
gi.require_version('Gtk', '4.0')
|
||||
gi.require_version('Adw', '1')
|
||||
gi.require_version('Xdp', '1.0')
|
||||
gi.require_version('XdpGtk4', '1.0')
|
||||
gi.require_version('GtkSource', '5')
|
||||
|
||||
from gi.repository import Gtk, Gio, Adw, Xdp, XdpGtk4, GLib
|
||||
from gi.repository import Gtk, Gio, Adw, Xdp, GLib
|
||||
from .views.window import BavarderWindow
|
||||
from .views.about_window import AboutWindow
|
||||
from .views.preferences_window import PreferencesWindow
|
||||
|
|
|
@ -10,6 +10,12 @@ from .openassistantsft1pythia12b import HuggingFaceOpenAssistantSFT1PythiaProvid
|
|||
from .robertasquad2 import RobertaSquad2Provider
|
||||
from .local import LocalProvider
|
||||
from .aihorde import AIHordeProvider
|
||||
from .stablediffusion import StableDiffusionProvider
|
||||
from .analogdiffusion import AnalogDiffusionProvider
|
||||
from .nitrodiffusion import NitroDiffusionProvider
|
||||
from .openjourney import OpenJourneyProvider
|
||||
from .openaiimage import DallE2, DallE3
|
||||
from .portraitplus import PortraitPlusProvider
|
||||
|
||||
PROVIDERS = {
|
||||
AIHordeProvider,
|
||||
|
@ -20,7 +26,14 @@ PROVIDERS = {
|
|||
OpenAIGPT4Provider,
|
||||
GoogleFlant5XXLProvider,
|
||||
GPT2Provider,
|
||||
LocalProvider
|
||||
LocalProvider,
|
||||
StableDiffusionProvider,
|
||||
AnalogDiffusionProvider,
|
||||
NitroDiffusionProvider,
|
||||
OpenJourneyProvider,
|
||||
DallE2,
|
||||
DallE3,
|
||||
PortraitPlusProvider,
|
||||
# StableBeluga2Provider,
|
||||
# HuggingFaceOpenAssistantSFT1PythiaProvider,
|
||||
# RobertaSquad2Provider
|
||||
|
|
|
@ -13,7 +13,7 @@ class AIHordeProvider(BaseProvider):
|
|||
STATUS_URL = "https://stablehorde.net/api/v2/generate/text/status/"
|
||||
API_KEY = "0000000000"
|
||||
model = "PygmalionAI/pygmalion-7b"
|
||||
|
||||
description = "AI Horde is a crowdsourced distributed cluster of Image generation workers and text generation workers."
|
||||
|
||||
def ask(self, prompt, chat, **kwargs):
|
||||
self.API_KEY = self.data.get("api_key", "0000000000")
|
||||
|
|
6
src/providers/analogdiffusion.py
Normal file
6
src/providers/analogdiffusion.py
Normal file
|
@ -0,0 +1,6 @@
|
|||
from .basehfimage import BaseHFImageProvider
|
||||
|
||||
class AnalogDiffusionProvider(BaseHFImageProvider):
|
||||
name = "Analog Diffusion"
|
||||
provider = "wavymulder/Analog-Diffusion"
|
||||
description = "Analog Diffusion is a model that can generate images from a prompt."
|
|
@ -2,11 +2,18 @@ import unicodedata
|
|||
import re
|
||||
from typing import List, Dict
|
||||
from gi.repository import Gtk, Adw, GLib
|
||||
from enum import Enum
|
||||
|
||||
|
||||
class ProviderType(Enum):
|
||||
IMAGE = _("Image")
|
||||
CHAT = _("Chat")
|
||||
VOICE = _("Voice")
|
||||
TEXT = _("Text")
|
||||
MOVIE = _("Movie")
|
||||
class BaseProvider:
|
||||
name: str
|
||||
description: str = ""
|
||||
provider_type: ProviderType = ProviderType.CHAT
|
||||
languages: List[str] = []
|
||||
developer_name: str = "0xMRTT"
|
||||
developers = ["0xMRTT https://github.com/0xMRTT"]
|
||||
|
|
61
src/providers/basehfimage.py
Normal file
61
src/providers/basehfimage.py
Normal file
|
@ -0,0 +1,61 @@
|
|||
from .baseimage import BaseImageProvider
|
||||
import requests
|
||||
import json
|
||||
from gi.repository import Gtk, Adw, GLib
|
||||
from PIL import Image, UnidentifiedImageError
|
||||
import io
|
||||
|
||||
|
||||
class BaseHFImageProvider(BaseImageProvider):
|
||||
provider = None
|
||||
|
||||
def ask(self, prompt, chat, **kwargs):
|
||||
chat = chat["content"]
|
||||
|
||||
API_URL = f"https://api-inference.huggingface.co/models/{self.provider}"
|
||||
|
||||
def query(payload):
|
||||
if self.data.get('api_key'):
|
||||
headers = {"Authorization": f"Bearer {self.data['api_key']}"}
|
||||
response = requests.post(API_URL, json=payload, headers=headers)
|
||||
else:
|
||||
response = requests.post(API_URL, json=payload)
|
||||
|
||||
if response.status_code == 403:
|
||||
return _("You've reached the rate limit! Please add a token to the preferences. You can get the token by following this [guide](https://bavarder.codeberg.page/help/huggingface/)")
|
||||
elif response.status_code != 200:
|
||||
return _("Sorry, I don't know what to say! (Error: {response.status_code})")
|
||||
|
||||
return response.content
|
||||
|
||||
prompt = self.make_prompt(prompt, chat)
|
||||
output = query({
|
||||
"inputs": prompt,
|
||||
"negative_prompts": "",
|
||||
})
|
||||
|
||||
if output:
|
||||
try:
|
||||
return Image.open(io.BytesIO(output))
|
||||
except UnidentifiedImageError:
|
||||
return output
|
||||
|
||||
def get_settings_rows(self):
|
||||
self.rows = []
|
||||
|
||||
self.api_row = Adw.PasswordEntryRow()
|
||||
self.api_row.connect("apply", self.on_apply)
|
||||
self.api_row.props.text = self.data.get('api_key') or ""
|
||||
self.api_row.props.title = _("API Key")
|
||||
self.api_row.set_show_apply_button(True)
|
||||
self.api_row.add_suffix(self.how_to_get_a_token())
|
||||
self.rows.append(self.api_row)
|
||||
|
||||
return self.rows
|
||||
|
||||
def on_apply(self, widget):
|
||||
api_key = self.api_row.get_text()
|
||||
self.data["api_key"] = api_key
|
||||
|
||||
def make_prompt(self, prompt, chat):
|
||||
return prompt
|
10
src/providers/baseimage.py
Normal file
10
src/providers/baseimage.py
Normal file
|
@ -0,0 +1,10 @@
|
|||
from .base import BaseProvider, ProviderType
|
||||
|
||||
import requests
|
||||
|
||||
from gi.repository import Gtk, Adw, GLib
|
||||
|
||||
|
||||
class BaseImageProvider(BaseProvider):
|
||||
provider_type = ProviderType.IMAGE
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
from .hfbasechat import BaseHFChatProvider
|
||||
from .hfbasechat import BaseHFChatProvider, ProviderType
|
||||
|
||||
class BlenderBotProvider(BaseHFChatProvider):
|
||||
name = "BlenderBot"
|
||||
description = "An open domain chatbot"
|
||||
provider = "facebook/blenderbot-400M-distill"
|
||||
|
||||
provider_type = ProviderType.TEXT
|
|
@ -1,6 +1,7 @@
|
|||
from .hfbasechat import BaseHFChatProvider
|
||||
from .hfbasechat import BaseHFChatProvider, ProviderType
|
||||
|
||||
class DialoGPTProvider(BaseHFChatProvider):
|
||||
name = "DialoGPT"
|
||||
description = "A State-of-the-Art Large-scale Pretrained Response generation model"
|
||||
provider = "microsoft/DialoGPT-large"
|
||||
provider_type = ProviderType.CHAT
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
from .hfbasechat import BaseHFChatProvider
|
||||
from .hfbasechat import BaseHFChatProvider, ProviderType
|
||||
|
||||
class GoogleFlant5XXLProvider(BaseHFChatProvider):
|
||||
name = "Google Flan T5 XXL"
|
||||
description = "A better Text-To-Text Transfer Transformer (T5) model"
|
||||
provider = "google/flan-t5-xxl"
|
||||
chat_mode = False
|
||||
provider_type = ProviderType.TEXT
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
from .hfbasechat import BaseHFChatProvider
|
||||
from .hfbasechat import BaseHFChatProvider, ProviderType
|
||||
|
||||
class GPT2Provider(BaseHFChatProvider):
|
||||
name = "GPT 2"
|
||||
description = "GPT-2 is a transformers model pretrained on a very large corpus of English data in a self-supervised fashion"
|
||||
provider = "gpt2"
|
||||
chat_mode = False
|
||||
provider_type = ProviderType.TEXT
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
from .base import BaseProvider
|
||||
from .base import BaseProvider, ProviderType
|
||||
|
||||
import requests
|
||||
|
||||
|
@ -23,7 +23,7 @@ class BaseHFChatProvider(BaseProvider):
|
|||
|
||||
return response.json()
|
||||
|
||||
if self.chat_mode:
|
||||
if self.provider_type == ProviderType.CHAT:
|
||||
output = query({
|
||||
"inputs": {
|
||||
"past_user_inputs": [i['content'] for i in chat if i['role'] == self.app.user_name],
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
from .openai import BaseOpenAIProvider
|
||||
|
||||
import openai
|
||||
from gi.repository import Gtk, Adw
|
||||
|
||||
class LocalProvider(BaseOpenAIProvider):
|
||||
|
|
|
@ -2,8 +2,11 @@ providers_dir = join_paths(MODULE_DIR, 'providers')
|
|||
|
||||
providers_sources = [
|
||||
'__init__.py',
|
||||
'analogdiffusion.py',
|
||||
'aihorde.py',
|
||||
'base.py',
|
||||
'basehfimage.py',
|
||||
'baseimage.py',
|
||||
'blenderbot.py',
|
||||
'catgpt.py',
|
||||
'dialogpt.py',
|
||||
|
@ -11,14 +14,19 @@ providers_sources = [
|
|||
'gpt2.py',
|
||||
'hfbasechat.py',
|
||||
'local.py',
|
||||
'nitrodiffusion.py',
|
||||
'openai.py',
|
||||
'openaigpt35turbo.py',
|
||||
'openaigpt4.py',
|
||||
'openaiimage.py',
|
||||
'openassistantsft1pythia12b.py',
|
||||
'openjourney.py',
|
||||
'petals.py',
|
||||
'portraitplus.py',
|
||||
'provider_item.py',
|
||||
'stablebeluga2.py',
|
||||
'robertasquad2.py',
|
||||
'stablediffusion.py',
|
||||
]
|
||||
|
||||
PY_INSTALLDIR.install_sources(providers_sources, subdir: providers_dir)
|
6
src/providers/nitrodiffusion.py
Normal file
6
src/providers/nitrodiffusion.py
Normal file
|
@ -0,0 +1,6 @@
|
|||
from .basehfimage import BaseHFImageProvider
|
||||
|
||||
class NitroDiffusionProvider(BaseHFImageProvider):
|
||||
name = "Nitro Diffusion"
|
||||
provider = "nitrosocke/Nitro-Diffusion"
|
||||
description = "Nitro Diffusion is a model that can generate images from a prompt."
|
|
@ -1,7 +1,8 @@
|
|||
from .base import BaseProvider
|
||||
|
||||
import openai
|
||||
from openai import OpenAI
|
||||
import socket
|
||||
import os
|
||||
|
||||
from gi.repository import Gtk, Adw, GLib
|
||||
|
||||
|
@ -9,15 +10,23 @@ from gi.repository import Gtk, Adw, GLib
|
|||
class BaseOpenAIProvider(BaseProvider):
|
||||
model = None
|
||||
api_key_title = "API Key"
|
||||
chat = openai.ChatCompletion
|
||||
|
||||
def __init__(self, app, window):
|
||||
super().__init__(app, window)
|
||||
|
||||
try:
|
||||
self.client = OpenAI(
|
||||
api_key=os.environ.get("OPENAI_API_KEY"),
|
||||
)
|
||||
except openai.OpenAIError:
|
||||
self.client = OpenAI(
|
||||
api_key="",
|
||||
)
|
||||
|
||||
if self.data.get("api_key"):
|
||||
openai.api_key = self.data["api_key"]
|
||||
self.client.api_key = self.data["api_key"]
|
||||
if self.data.get("api_base"):
|
||||
openai.api_base = self.data["api_base"]
|
||||
self.client.base_url = self.data["api_base"]
|
||||
|
||||
def ask(self, prompt, chat):
|
||||
_chat = []
|
||||
|
@ -29,26 +38,20 @@ class BaseOpenAIProvider(BaseProvider):
|
|||
_chat.append({"role": role, "content": c["content"]})
|
||||
chat = _chat
|
||||
|
||||
if self.data.get("api_key"):
|
||||
openai.api_key = self.data["api_key"]
|
||||
if self.data.get("api_base"):
|
||||
openai.api_base = self.data["api_base"]
|
||||
|
||||
if self.model:
|
||||
prompt = self.chunk(prompt)
|
||||
try:
|
||||
print(chat)
|
||||
response = self.chat.create(
|
||||
response = self.client.chat.completions.create(
|
||||
model=self.model,
|
||||
messages=chat,
|
||||
).choices[0].message.content
|
||||
except openai.error.AuthenticationError:
|
||||
except openai.AuthenticationError:
|
||||
return _("Your API key is invalid, please check your preferences.")
|
||||
except openai.error.InvalidRequestError:
|
||||
except openai.BadRequestError:
|
||||
return _("You don't have access to this model, please check your plan and billing details.")
|
||||
except openai.error.RateLimitError:
|
||||
except openai.RateLimitError:
|
||||
return _("You exceeded your current quota, please check your plan and billing details.")
|
||||
except openai.error.APIError:
|
||||
except openai.APIConnectionError:
|
||||
return _("I'm having trouble connecting to the API, please check your internet connection.")
|
||||
except socket.gaierror:
|
||||
return _("I'm having trouble connecting to the API, please check your internet connection.")
|
||||
|
@ -64,7 +67,7 @@ class BaseOpenAIProvider(BaseProvider):
|
|||
|
||||
self.api_row = Adw.PasswordEntryRow()
|
||||
self.api_row.connect("apply", self.on_apply)
|
||||
self.api_row.props.text = openai.api_key or ""
|
||||
self.api_row.props.text = self.client.api_key or ""
|
||||
self.api_row.props.title = self.api_key_title
|
||||
self.api_row.set_show_apply_button(True)
|
||||
self.api_row.add_suffix(self.how_to_get_a_token())
|
||||
|
@ -72,7 +75,7 @@ class BaseOpenAIProvider(BaseProvider):
|
|||
|
||||
self.api_url_row = Adw.EntryRow()
|
||||
self.api_url_row.connect("apply", self.on_apply)
|
||||
self.api_url_row.props.text = openai.api_base or ""
|
||||
self.api_url_row.props.text=str(self.client.base_url) or ""
|
||||
self.api_url_row.props.title = "API Url"
|
||||
self.api_url_row.set_show_apply_button(True)
|
||||
self.api_url_row.add_suffix(self.how_to_get_base_url())
|
||||
|
@ -82,11 +85,11 @@ class BaseOpenAIProvider(BaseProvider):
|
|||
|
||||
def on_apply(self, widget):
|
||||
api_key = self.api_row.get_text()
|
||||
openai.api_key = api_key
|
||||
openai.api_base = self.api_url_row.get_text()
|
||||
self.client.api_key = api_key
|
||||
self.client.base_url = self.api_url_row.get_text()
|
||||
|
||||
self.data["api_key"] = openai.api_key
|
||||
self.data["api_base"] = openai.api_base
|
||||
self.data["api_key"] = self.client.api_key
|
||||
self.data["api_base"] = str(self.client.base_url)
|
||||
|
||||
|
||||
def how_to_get_base_url(self):
|
||||
|
@ -96,4 +99,4 @@ class BaseOpenAIProvider(BaseProvider):
|
|||
about_button.add_css_class("flat")
|
||||
about_button.set_valign(Gtk.Align.CENTER)
|
||||
about_button.connect("clicked", self.open_documentation)
|
||||
return about_button
|
||||
return about_button
|
||||
|
|
118
src/providers/openaiimage.py
Normal file
118
src/providers/openaiimage.py
Normal file
|
@ -0,0 +1,118 @@
|
|||
from .baseimage import BaseImageProvider
|
||||
import openai
|
||||
from openai import OpenAI
|
||||
import socket
|
||||
import os
|
||||
import json
|
||||
|
||||
from gi.repository import Gtk, Adw, GLib
|
||||
|
||||
|
||||
class BaseOpenAIImageProvider(BaseImageProvider):
|
||||
model = None
|
||||
api_key_title = "API Key"
|
||||
|
||||
def __init__(self, app, window):
|
||||
super().__init__(app, window)
|
||||
|
||||
try:
|
||||
self.client = OpenAI(
|
||||
api_key=os.environ.get("OPENAI_API_KEY"),
|
||||
)
|
||||
except openai.OpenAIError:
|
||||
self.client = OpenAI(
|
||||
api_key="",
|
||||
)
|
||||
|
||||
if self.data.get("api_key"):
|
||||
self.client.api_key = self.data["api_key"]
|
||||
if self.data.get("api_base"):
|
||||
self.client.base_url = self.data["api_base"]
|
||||
|
||||
def ask(self, prompt, chat):
|
||||
if self.model:
|
||||
prompt = self.chunk(prompt)
|
||||
try:
|
||||
response = self.client.images.generate(
|
||||
model=self.model,
|
||||
prompt=prompt,
|
||||
size="1024x1024",
|
||||
quality="standard",
|
||||
n=1,
|
||||
)
|
||||
image_url = response.data[0].url
|
||||
image_bytes = requests.get(image_url).content
|
||||
|
||||
except openai.AuthenticationError:
|
||||
return _("Your API key is invalid, please check your preferences.")
|
||||
except openai.BadRequestError:
|
||||
return _("You don't have access to this model, please check your plan and billing details.")
|
||||
except openai.RateLimitError:
|
||||
return _("You exceeded your current quota, please check your plan and billing details.")
|
||||
except openai.APIConnectionError:
|
||||
return _("I'm having trouble connecting to the API, please check your internet connection.")
|
||||
except socket.gaierror:
|
||||
return _("I'm having trouble connecting to the API, please check your internet connection.")
|
||||
else:
|
||||
if image_bytes:
|
||||
try:
|
||||
return Image.open(io.BytesIO(image_bytes))
|
||||
except UnidentifiedImageError:
|
||||
error = json.loads(image_bytes)["error"]
|
||||
return error
|
||||
else:
|
||||
return None
|
||||
|
||||
else:
|
||||
return _("No model selected, you can choose one in preferences")
|
||||
|
||||
|
||||
def get_settings_rows(self):
|
||||
self.rows = []
|
||||
|
||||
|
||||
self.api_row = Adw.PasswordEntryRow()
|
||||
self.api_row.connect("apply", self.on_apply)
|
||||
self.api_row.props.text = self.client.api_key or ""
|
||||
self.api_row.props.title = self.api_key_title
|
||||
self.api_row.set_show_apply_button(True)
|
||||
self.api_row.add_suffix(self.how_to_get_a_token())
|
||||
self.rows.append(self.api_row)
|
||||
|
||||
self.api_url_row = Adw.EntryRow()
|
||||
self.api_url_row.connect("apply", self.on_apply)
|
||||
self.api_url_row.props.text=str(self.client.base_url) or ""
|
||||
self.api_url_row.props.title = "API Url"
|
||||
self.api_url_row.set_show_apply_button(True)
|
||||
self.api_url_row.add_suffix(self.how_to_get_base_url())
|
||||
self.rows.append(self.api_url_row)
|
||||
|
||||
return self.rows
|
||||
|
||||
def on_apply(self, widget):
|
||||
api_key = self.api_row.get_text()
|
||||
self.client.api_key = api_key
|
||||
self.client.base_url = self.api_url_row.get_text()
|
||||
|
||||
self.data["api_key"] = self.client.api_key
|
||||
self.data["api_base"] = str(self.client.base_url)
|
||||
|
||||
|
||||
def how_to_get_base_url(self):
|
||||
about_button = Gtk.Button()
|
||||
about_button.set_icon_name("dialog-information-symbolic")
|
||||
about_button.set_tooltip_text("How to choose base url")
|
||||
about_button.add_css_class("flat")
|
||||
about_button.set_valign(Gtk.Align.CENTER)
|
||||
about_button.connect("clicked", self.open_documentation)
|
||||
return about_button
|
||||
|
||||
class DallE2(BaseOpenAIImageProvider):
|
||||
name = "DALL·E 2"
|
||||
model = "dall-e-2"
|
||||
description = "DALL·E is a AI system that can create realistic images and art from a description in natural language. "
|
||||
|
||||
class DallE3(BaseOpenAIImageProvider):
|
||||
name = "DALL·E 3"
|
||||
model = "dall-e-3"
|
||||
description = "DALL·E is a AI system that can create realistic images and art from a description in natural language. "
|
|
@ -3,6 +3,7 @@ from .hfbasechat import BaseHFChatProvider
|
|||
class HuggingFaceOpenAssistantSFT1PythiaProvider(BaseHFChatProvider):
|
||||
name = "Open-Assistant SFT-1 12B"
|
||||
provider = "OpenAssistant/oasst-sft-4-pythia-12b-epoch-3.5"
|
||||
description = "OpenAssistant's SFT-1 Pythia 12B model"
|
||||
|
||||
def make_prompt(self, prompt, chat):
|
||||
p = ""
|
||||
|
|
6
src/providers/openjourney.py
Normal file
6
src/providers/openjourney.py
Normal file
|
@ -0,0 +1,6 @@
|
|||
from .basehfimage import BaseHFImageProvider
|
||||
|
||||
class OpenJourneyProvider(BaseHFImageProvider):
|
||||
name = "Open Journey"
|
||||
provider = "prompthero/openjourney-v4"
|
||||
description = "Open Journey is a model that can generate images from a prompt."
|
6
src/providers/portraitplus.py
Normal file
6
src/providers/portraitplus.py
Normal file
|
@ -0,0 +1,6 @@
|
|||
from .basehfimage import BaseHFImageProvider
|
||||
|
||||
class PortraitPlusProvider(BaseHFImageProvider):
|
||||
name = "Portrait Plus"
|
||||
model = "wavymulder/portraitplus"
|
||||
description = "Portrait Plus is a model that can generate images from a prompt."
|
|
@ -8,6 +8,12 @@ template $Provider : Adw.ExpanderRow {
|
|||
valign: center;
|
||||
}
|
||||
|
||||
[suffix]
|
||||
Label provider_type {
|
||||
valign: center;
|
||||
styles [ "tag" ]
|
||||
}
|
||||
|
||||
Adw.ActionRow no_preferences_available {
|
||||
title: _("No preferences available");
|
||||
}
|
||||
|
|
|
@ -4,7 +4,7 @@ from typing import List, Dict
|
|||
from gi.repository import Gtk, Adw, GLib
|
||||
|
||||
from bavarder.constants import app_id, rootdir
|
||||
|
||||
from .base import ProviderType
|
||||
|
||||
@Gtk.Template(resource_path=f"{rootdir}/ui/provider_item.ui")
|
||||
class Provider(Adw.ExpanderRow):
|
||||
|
@ -12,6 +12,7 @@ class Provider(Adw.ExpanderRow):
|
|||
|
||||
enable_switch = Gtk.Template.Child()
|
||||
no_preferences_available = Gtk.Template.Child()
|
||||
provider_type = Gtk.Template.Child()
|
||||
|
||||
def __init__(self, app, window, provider, **kwargs):
|
||||
super().__init__(**kwargs)
|
||||
|
@ -24,6 +25,19 @@ class Provider(Adw.ExpanderRow):
|
|||
def setup(self):
|
||||
self.set_title(self.provider.name)
|
||||
self.set_subtitle(self.provider.description)
|
||||
self.provider_type.set_label(self.provider.provider_type.value)
|
||||
match self.provider.provider_type:
|
||||
case ProviderType.IMAGE:
|
||||
self.provider_type.add_css_class("badge-titanium")
|
||||
case ProviderType.CHAT:
|
||||
self.provider_type.add_css_class("badge-gold")
|
||||
case ProviderType.VOICE:
|
||||
self.provider_type.add_css_class("badge-iron")
|
||||
case ProviderType.TEXT:
|
||||
self.provider_type.add_css_class("badge-tin")
|
||||
case ProviderType.MOVIE:
|
||||
self.provider_type.add_css_class("badge-silver")
|
||||
|
||||
self.enable_switch.set_active( self.app.data["providers"][self.provider.slug]["enabled"])
|
||||
|
||||
if self.provider.get_settings_rows():
|
||||
|
|
|
@ -3,6 +3,7 @@ from .hfbasechat import BaseHFChatProvider
|
|||
class RobertaSquad2Provider(BaseHFChatProvider):
|
||||
name = "Roberta Squad2"
|
||||
provider = "deepset/roberta-base-squad2"
|
||||
description = "A model for Question Answering on SQuAD2"
|
||||
|
||||
def make_prompt(self, prompt, chat):
|
||||
context = ""
|
||||
|
|
6
src/providers/stablediffusion.py
Normal file
6
src/providers/stablediffusion.py
Normal file
|
@ -0,0 +1,6 @@
|
|||
from .basehfimage import BaseHFImageProvider
|
||||
|
||||
class StableDiffusionProvider(BaseHFImageProvider):
|
||||
name = "Stable Diffusion"
|
||||
provider = "stabilityai/stable-diffusion-2-1"
|
||||
description = "Stable Diffusion is a model that can generate images from a prompt."
|
|
@ -33,3 +33,52 @@
|
|||
.sourceview {
|
||||
font-family: monospace;
|
||||
}
|
||||
|
||||
.tag {
|
||||
border-radius: 20px;
|
||||
background-color: alpha(currentColor, 0.07);
|
||||
padding: 5px 13px;
|
||||
margin: 0 2px;
|
||||
}
|
||||
|
||||
badge-gray {
|
||||
background-color: #deddda;
|
||||
color: #3d3846;
|
||||
}
|
||||
.badge-silver {
|
||||
background-color: #deddda;
|
||||
color: #3d3846;
|
||||
}
|
||||
.badge-gold {
|
||||
background-color: #f6d32d;
|
||||
color: #3d3846;
|
||||
}
|
||||
.badge-copper {
|
||||
background-color: #a47e3c;
|
||||
}
|
||||
.badge-bronze {
|
||||
background-color: #a47e3c;
|
||||
}
|
||||
.badge-iron {
|
||||
background-color: #3d3846;
|
||||
color: #deddda;
|
||||
}
|
||||
.badge-steel {
|
||||
background-color: #3d3846;
|
||||
color: #deddda;
|
||||
}
|
||||
.badge-tin {
|
||||
background-color: #deddda;
|
||||
color: #3d3846;
|
||||
}
|
||||
.badge-aluminum {
|
||||
background-color: #deddda;
|
||||
color: #3d3846;
|
||||
}
|
||||
.badge-cobalt {
|
||||
background-color: #3584e4;
|
||||
}
|
||||
.badge-titanium {
|
||||
background-color: #3d3846;
|
||||
color: #deddda;
|
||||
}
|
|
@ -237,13 +237,13 @@ template $BavarderWindow : Adw.ApplicationWindow {
|
|||
Gtk.Box {
|
||||
orientation: horizontal;
|
||||
|
||||
Button emoji_button {
|
||||
valign: end;
|
||||
icon-name: "emoji-people-symbolic";
|
||||
tooltip-text: _("Open Emoji Picker");
|
||||
halign: start;
|
||||
clicked => $on_emoji();
|
||||
}
|
||||
// Button emoji_button {
|
||||
// valign: end;
|
||||
// icon-name: "emoji-people-symbolic";
|
||||
// tooltip-text: _("Open Emoji Picker");
|
||||
// halign: start;
|
||||
// clicked => $on_emoji();
|
||||
// }
|
||||
|
||||
ScrolledWindow scrolled_window {
|
||||
vexpand: true;
|
||||
|
|
|
@ -19,6 +19,8 @@
|
|||
|
||||
from datetime import datetime
|
||||
import locale
|
||||
import io
|
||||
import base64
|
||||
|
||||
from gi.repository import Gtk, Gio, Adw, GLib
|
||||
from babel.dates import format_date, format_datetime, format_time
|
||||
|
@ -392,9 +394,17 @@ class BavarderWindow(Adw.ApplicationWindow):
|
|||
self.toast.dismiss()
|
||||
|
||||
if not response:
|
||||
response = _("Sorry, I don't know what to say.")
|
||||
self.add_assistant_item(_("Sorry, I don't know what to say."))
|
||||
else:
|
||||
if isinstance(response, str):
|
||||
self.add_assistant_item(response)
|
||||
else:
|
||||
buffered = io.BytesIO()
|
||||
response.save(buffered, format="JPEG")
|
||||
img_str = base64.b64encode(buffered.getvalue())
|
||||
|
||||
self.add_assistant_item(img_str.decode("utf-8"))
|
||||
|
||||
self.add_assistant_item(response)
|
||||
except AttributeError:
|
||||
self.toast.dismiss()
|
||||
self.add_assistant_item(_("Sorry, I don't know what to say."))
|
||||
|
@ -402,9 +412,9 @@ class BavarderWindow(Adw.ApplicationWindow):
|
|||
self.t = KillableThread(target=thread_run)
|
||||
self.t.start()
|
||||
|
||||
@Gtk.Template.Callback()
|
||||
def on_emoji(self, *args):
|
||||
self.message_entry.do_insert_emoji(self.message_entry)
|
||||
# @Gtk.Template.Callback()
|
||||
# def on_emoji(self, *args):
|
||||
# self.message_entry.do_insert_emoji(self.message_entry)
|
||||
|
||||
def cancel(self, *args):
|
||||
try:
|
||||
|
|
|
@ -105,6 +105,11 @@ menu popover-model {
|
|||
label: _("Edit");
|
||||
action: "event.edit";
|
||||
}
|
||||
|
||||
item {
|
||||
label: _("Save");
|
||||
action: "event.save";
|
||||
}
|
||||
}
|
||||
|
||||
section {
|
||||
|
|
|
@ -1,6 +1,10 @@
|
|||
from gi.repository import Gtk, Adw, Gio, GLib, Pango, GtkSource, Gdk
|
||||
|
||||
import re
|
||||
import io
|
||||
import base64
|
||||
|
||||
from PIL import Image, UnidentifiedImageError
|
||||
|
||||
from bavarder.constants import app_id, rootdir
|
||||
from bavarder.widgets.code_block import CodeBlock
|
||||
|
@ -72,63 +76,85 @@ class Item(Gtk.Box):
|
|||
|
||||
self.content_text = self.item["content"]
|
||||
|
||||
self.convert_content_to_pango()
|
||||
|
||||
result = ""
|
||||
is_code = False
|
||||
for line in self.content_markup:
|
||||
if isinstance(line, str):
|
||||
if "<tt></tt>`" in line.strip():
|
||||
if is_code:
|
||||
is_code = False
|
||||
else:
|
||||
is_code = True
|
||||
continue
|
||||
if is_code or not isinstance(line, str):
|
||||
label = Gtk.Label()
|
||||
label.set_use_markup(True)
|
||||
label.set_wrap(True)
|
||||
label.set_xalign(0)
|
||||
label.set_wrap_mode(Pango.WrapMode.WORD)
|
||||
label.set_markup(result)
|
||||
label.set_justify(Gtk.Justification.LEFT)
|
||||
label.set_valign(Gtk.Align.START)
|
||||
label.set_hexpand(True)
|
||||
label.set_halign(Gtk.Align.START)
|
||||
self.content.append(label)
|
||||
|
||||
if not isinstance(line, str):
|
||||
result = "\n".join(line)
|
||||
else:
|
||||
result = line.strip()
|
||||
|
||||
self.content.append(CodeBlock(result))
|
||||
result = ""
|
||||
else:
|
||||
result += f"{line}\n"
|
||||
|
||||
else:
|
||||
if not result.strip() == "<tt></tt>`":
|
||||
label = Gtk.Label()
|
||||
label.set_use_markup(True)
|
||||
label.set_wrap(True)
|
||||
label.set_xalign(0)
|
||||
label.set_wrap_mode(Pango.WrapMode.WORD)
|
||||
label.set_markup(result)
|
||||
label.set_justify(Gtk.Justification.LEFT)
|
||||
label.set_valign(Gtk.Align.START)
|
||||
label.set_hexpand(True)
|
||||
label.set_halign(Gtk.Align.START)
|
||||
self.content.append(label)
|
||||
|
||||
t = self.item["role"].lower()
|
||||
|
||||
self.parent = parent
|
||||
self.settings = parent.settings
|
||||
|
||||
self.app = self.parent.get_application()
|
||||
self.win = self.app.get_active_window()
|
||||
|
||||
try:
|
||||
if not isinstance(self.content_text, Image.Image):
|
||||
if isinstance(self.content_text, bytes):
|
||||
self.image = Image.open(io.BytesIO(self.content_text))
|
||||
else:
|
||||
self.image = Image.open(io.BytesIO(base64.b64decode(self.content_text)))
|
||||
else:
|
||||
self.image = self.content_text
|
||||
except Exception:
|
||||
self.convert_content_to_pango()
|
||||
|
||||
result = ""
|
||||
is_code = False
|
||||
for line in self.content_markup:
|
||||
if isinstance(line, str):
|
||||
if "<tt></tt>`" in line.strip():
|
||||
if is_code:
|
||||
is_code = False
|
||||
else:
|
||||
is_code = True
|
||||
continue
|
||||
if is_code or not isinstance(line, str):
|
||||
label = Gtk.Label()
|
||||
label.set_use_markup(True)
|
||||
label.set_wrap(True)
|
||||
label.set_xalign(0)
|
||||
label.set_wrap_mode(Pango.WrapMode.WORD)
|
||||
label.set_markup(result)
|
||||
label.set_justify(Gtk.Justification.LEFT)
|
||||
label.set_valign(Gtk.Align.START)
|
||||
label.set_hexpand(True)
|
||||
label.set_halign(Gtk.Align.START)
|
||||
self.content.append(label)
|
||||
|
||||
if not isinstance(line, str):
|
||||
result = "\n".join(line)
|
||||
else:
|
||||
result = line.strip()
|
||||
|
||||
self.content.append(CodeBlock(result))
|
||||
result = ""
|
||||
else:
|
||||
result += f"{line}\n"
|
||||
|
||||
else:
|
||||
if not result.strip() == "<tt></tt>`":
|
||||
label = Gtk.Label()
|
||||
label.set_use_markup(True)
|
||||
label.set_wrap(True)
|
||||
label.set_xalign(0)
|
||||
label.set_wrap_mode(Pango.WrapMode.WORD)
|
||||
label.set_markup(result)
|
||||
label.set_justify(Gtk.Justification.LEFT)
|
||||
label.set_valign(Gtk.Align.START)
|
||||
label.set_hexpand(True)
|
||||
label.set_halign(Gtk.Align.START)
|
||||
self.content.append(label)
|
||||
else:
|
||||
picture = Gtk.Picture()
|
||||
picture.set_halign(Gtk.Align.CENTER)
|
||||
picture.set_can_shrink(True)
|
||||
picture.set_content_fit(Gtk.ContentFit.FILL)
|
||||
picture.set_visible(True)
|
||||
picture.add_css_class("card")
|
||||
picture.set_margin_start(12)
|
||||
picture.set_margin_end(12)
|
||||
picture.set_size_request(270, 270)
|
||||
self.image.save("/tmp/image.png")
|
||||
picture.set_file(Gio.File.new_for_path("/tmp/image.png"))
|
||||
self.content.append(picture)
|
||||
|
||||
t = self.item["role"].lower()
|
||||
|
||||
if t == self.app.user_name.lower() or t == "user": # User
|
||||
self.message_bubble.add_css_class("message-bubble-user")
|
||||
self.avatar.add_css_class("avatar-user")
|
||||
|
@ -164,6 +190,7 @@ class Item(Gtk.Box):
|
|||
self.action_group = Gio.SimpleActionGroup()
|
||||
self.create_action("delete", self.on_delete)
|
||||
self.create_action("edit", self.on_edit)
|
||||
self.create_action("save", self.on_save)
|
||||
self.create_action("copy", self.on_copy)
|
||||
self.insert_action_group("event", self.action_group);
|
||||
|
||||
|
@ -182,6 +209,41 @@ class Item(Gtk.Box):
|
|||
def on_edit(self, *args):
|
||||
self.win.message_entry.get_buffer().set_text(self.content_text)
|
||||
|
||||
def on_save(self, *args):
|
||||
def on_save_response(dialog, response):
|
||||
if response == Gtk.ResponseType.OK:
|
||||
toast = Adw.Toast()
|
||||
try:
|
||||
self.image.save(dialog.get_file().get_path())
|
||||
except Exception as e:
|
||||
toast.set_title(_("Failed to save the image"))
|
||||
else:
|
||||
toast.set_title(_("Image saved"))
|
||||
finally:
|
||||
self.parent.toast_overlay.add_toast(toast)
|
||||
|
||||
dialog.destroy()
|
||||
|
||||
try:
|
||||
self.image
|
||||
except AttributeError:
|
||||
toast = Adw.Toast()
|
||||
toast.set_title(_("No image to save"))
|
||||
self.parent.toast_overlay.add_toast(toast)
|
||||
else:
|
||||
dialog = Gtk.FileChooserDialog(
|
||||
title=_("Save message"),
|
||||
action=Gtk.FileChooserAction.SAVE,
|
||||
modal=True,
|
||||
transient_for=self.win,
|
||||
)
|
||||
dialog.add_button(_("Cancel"), Gtk.ResponseType.CANCEL)
|
||||
dialog.add_button(_("Save"), Gtk.ResponseType.OK)
|
||||
|
||||
dialog.connect('response', on_save_response)
|
||||
dialog.present()
|
||||
|
||||
|
||||
def on_copy(self, *args):
|
||||
Gdk.Display.get_default().get_clipboard().set(self.content_text)
|
||||
|
||||
|
|
Loading…
Reference in a new issue