-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Translations update from Hosted Weblate #2233
base: master
Are you sure you want to change the base?
Conversation
fcce9c4
to
361996a
Compare
WalkthroughThe changes in this pull request involve updates to the translation files for Spanish, Russian, Chinese, Czech, Italian, Japanese, Slovak, German, Tamil, and Polish. Each language file has received new translation entries addressing user messages about file export limitations, output FPS adjustments, and fallback file naming. Additionally, minor adjustments were made to existing translations for clarity and punctuation. A new empty translation file for Tamil has also been created, and the Polish translations have been significantly expanded to enhance user guidance and error handling. Changes
Possibly related PRs
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
7145007
to
92c2e0e
Compare
92c2e0e
to
aae3d13
Compare
6c06a7a
to
9bac9a2
Compare
1a2f819
to
1fcdb19
Compare
f10a726
to
6b6f2b0
Compare
6b6f2b0
to
d6fd3c8
Compare
623330d
to
9662ea3
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
locales/pl/translation.json
(1 hunks)
🔇 Additional comments (7)
locales/pl/translation.json (7)
742-743
: LGTM! Clear and accurate translations.The translations for "No file is loaded" and "Smart cut is experimental..." are accurate and maintain the same meaning as the English versions.
744-747
: LGTM! Technical terms are correctly preserved.The translations maintain technical terms like "FFmpeg", "MP4", "MOV" unchanged while accurately translating the surrounding context.
754-758
: LGTM! Consistent translations for UI elements.The translations maintain consistency in UI terminology and preserve the technical terms in quotes.
763-777
: LGTM! Consistent translations for navigation terms.The translations for seek operations, file operations, and UI elements are accurate and maintain consistency.
778-782
: LGTM! Technical explanation properly translated.The translation maintains the technical accuracy while being clear in Polish.
752-753
:⚠️ Potential issueFix variable placeholder in translation.
The translation on line 752 has incorrect spacing around the variable placeholder. There should be no spaces inside the curly braces.
-"At least one resulting file name contains invalid character(s): {{ invalidChars }}": "Co najmniej jedna wynikowa nazwa pliku zawiera nieprawidłowe znaki: {{invalidChars}}", +"At least one resulting file name contains invalid character(s): {{invalidChars}}": "Co najmniej jedna wynikowa nazwa pliku zawiera nieprawidłowe znaki: {{invalidChars}}",Likely invalid or redundant comment.
783-858
: Verify plural forms handling.The translations include plural forms (e.g., "frames_one", "frames_other"). Verify that Polish plural forms are correctly handled.
✅ Verification successful
Polish plural forms are correctly implemented ✓
The translations use appropriate Polish grammatical forms for both singular ("_one") and plural ("_other") cases. While Polish has complex plural rules, the current implementation correctly handles the basic cases within the constraints of the i18next framework.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Check for plural form keys and their translations rg "_one|_other" locales/pl/translation.jsonLength of output: 1283
"Select segments by expression": "Wybierz segmenty wg wyrażenia", | ||
"Whether to preserve chapters from source file.": "Określa do zachowania rozdziałów z pliku źródłowego.", | ||
"Whether to preserve metadata from source file. Default: Global (file metadata), per-track and per-chapter metadata will be copied. Non-global: Only per-track and per-chapter metadata will be copied. None: No metadata will be copied": "Określa, czy zachować metadane z pliku źródłowego. Wartość domyślna: Kopiowane będą metadane globalne (metadane pliku), metadane poszczególnych ścieżek i rozdziałów. Nieglobalne: kopiowane będą tylko metadane poszczególnych utworów i rozdziałów. Brak: żadne metadane nie zostaną skopiowane", | ||
"You have enabled the \"invert segments\" mode <1></1> which will cut away selected segments instead of keeping them. But there is no space between any segments, or at least two segments are overlapping. This would not produce any output. Either make room between segments or click the Yinyang <3></3> symbol below to disable this mode. Alternatively you may combine overlapping segments from the menu.": "Włączyłeś opcję \"odwróć segmenty\" tryb <1></1>, który wytnie wybrane segmenty zamiast je zachować. Pomiędzy segmentami nie ma jednak odstępu lub co najmniej dwa segmenty nakładają się na siebie. Nie spowoduje to żadnego wyjścia. Zrób miejsce między segmentami lub kliknij symbol Yinyang <3></3> poniżej, aby wyłączyć ten tryb. Alternatywnie można połączyć nakładające się segmenty z menu.", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix HTML tags in translation.
The translations contain HTML tags that should be preserved exactly as in the source. Ensure the spacing around tags matches the original.
-"You have enabled the \"invert segments\" mode <1></1> which will cut away selected segments instead of keeping them...": "Włączyłeś opcję \"odwróć segmenty\" tryb <1></1>, który wytnie wybrane segmenty zamiast je zachować...",
+"You have enabled the \"invert segments\" mode <1></1> which will cut away selected segments instead of keeping them...": "Włączyłeś tryb \"odwróć segmenty\" <1></1>, który wytnie wybrane segmenty zamiast je zachować...",
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
"Select segments by expression": "Wybierz segmenty wg wyrażenia", | |
"Whether to preserve chapters from source file.": "Określa do zachowania rozdziałów z pliku źródłowego.", | |
"Whether to preserve metadata from source file. Default: Global (file metadata), per-track and per-chapter metadata will be copied. Non-global: Only per-track and per-chapter metadata will be copied. None: No metadata will be copied": "Określa, czy zachować metadane z pliku źródłowego. Wartość domyślna: Kopiowane będą metadane globalne (metadane pliku), metadane poszczególnych ścieżek i rozdziałów. Nieglobalne: kopiowane będą tylko metadane poszczególnych utworów i rozdziałów. Brak: żadne metadane nie zostaną skopiowane", | |
"You have enabled the \"invert segments\" mode <1></1> which will cut away selected segments instead of keeping them. But there is no space between any segments, or at least two segments are overlapping. This would not produce any output. Either make room between segments or click the Yinyang <3></3> symbol below to disable this mode. Alternatively you may combine overlapping segments from the menu.": "Włączyłeś opcję \"odwróć segmenty\" tryb <1></1>, który wytnie wybrane segmenty zamiast je zachować. Pomiędzy segmentami nie ma jednak odstępu lub co najmniej dwa segmenty nakładają się na siebie. Nie spowoduje to żadnego wyjścia. Zrób miejsce między segmentami lub kliknij symbol Yinyang <3></3> poniżej, aby wyłączyć ten tryb. Alternatywnie można połączyć nakładające się segmenty z menu.", | |
"Select segments by expression": "Wybierz segmenty wg wyrażenia", | |
"Whether to preserve chapters from source file.": "Określa do zachowania rozdziałów z pliku źródłowego.", | |
"Whether to preserve metadata from source file. Default: Global (file metadata), per-track and per-chapter metadata will be copied. Non-global: Only per-track and per-chapter metadata will be copied. None: No metadata will be copied": "Określa, czy zachować metadane z pliku źródłowego. Wartość domyślna: Kopiowane będą metadane globalne (metadane pliku), metadane poszczególnych ścieżek i rozdziałów. Nieglobalne: kopiowane będą tylko metadane poszczególnych utworów i rozdziałów. Brak: żadne metadane nie zostaną skopiowane", | |
"You have enabled the \"invert segments\" mode <1></1> which will cut away selected segments instead of keeping them. But there is no space between any segments, or at least two segments are overlapping. This would not produce any output. Either make room between segments or click the Yinyang <3></3> symbol below to disable this mode. Alternatively you may combine overlapping segments from the menu.": "Włączyłeś tryb \"odwróć segmenty\" <1></1>, który wytnie wybrane segmenty zamiast je zachować. Pomiędzy segmentami nie ma jednak odstępu lub co najmniej dwa segmenty nakładają się na siebie. Nie spowoduje to żadnego wyjścia. Zrób miejsce między segmentami lub kliknij symbol Yinyang <3></3> poniżej, aby wyłączyć ten tryb. Alternatywnie można połączyć nakładające się segmenty z menu.", |
"Fastest: FFmpeg-assisted playback": "Najszybsze: FFmpeg-assisted playback", | ||
"You can customize the file name of the merged file using special variables.": "Możesz dostosować nazwę pliku scalonego pliku za pomocą specjalnych zmiennych.", | ||
"Seek one frame": "Szukaj jednej klatki", | ||
"<0>If you're having a problem or question about LosslessCut, please first check the links in the <1>Help</1> menu. If you cannot find any resolution, you may ask a question in <3>GitHub discussions</3> or on <5>Discord.</5></0><1>If you believe that you found a bug in LosslessCut, you may <1>report a bug</1>.</1>": "<0>Jeśli masz problem lub pytanie dotyczące LosslessCut, najpierw sprawdź linki w menu<1>Pomoc</1>. Jeśli nie możesz znaleźć żadnej decyzji, możesz zadać pytanie w <3> dyskusjach GitHub </3> lub na<5>Discord.</5> </0> <1> Jeśli uważasz, że znalazłeś błąd w LosslessCut , możesz zgłosić błąd </1>. </1>", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
💡 Codebase verification
"FFmpeg-assisted playback" should be partially translated in Polish
The term should follow the pattern used in other locales where "FFmpeg" remains untranslated while "assisted playback" is translated. Consider translating it to "odtwarzanie wspomagane przez FFmpeg" or similar, consistent with how other languages handle this technical term.
🔗 Analysis chain
Verify the translation of technical feature names.
While most translations are accurate, "FFmpeg-assisted playback" is left untranslated on line 748. Consider whether this is intentional for technical terms.
🏁 Scripts executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash
# Check if other language files also keep "FFmpeg-assisted playback" untranslated
rg -l "FFmpeg-assisted playback" locales/
Length of output: 501
Script:
#!/bin/bash
# Extract the full line containing "FFmpeg-assisted playback" from all locale files
rg "FFmpeg-assisted playback" locales/
Length of output: 3171
b1d34eb
to
af7bad1
Compare
Currently translated at 100.0% (767 of 767 strings) Translation: LosslessCut/LosslessCut Translate-URL: https://hosted.weblate.org/projects/losslesscut/losslesscut/es/
Currently translated at 100.0% (767 of 767 strings) Translation: LosslessCut/LosslessCut Translate-URL: https://hosted.weblate.org/projects/losslesscut/losslesscut/ru/
Currently translated at 100.0% (767 of 767 strings) Translation: LosslessCut/LosslessCut Translate-URL: https://hosted.weblate.org/projects/losslesscut/losslesscut/zh_Hans/
Currently translated at 100.0% (767 of 767 strings) Translation: LosslessCut/LosslessCut Translate-URL: https://hosted.weblate.org/projects/losslesscut/losslesscut/it/
Currently translated at 100.0% (767 of 767 strings) Translation: LosslessCut/LosslessCut Translate-URL: https://hosted.weblate.org/projects/losslesscut/losslesscut/ja/
Currently translated at 100.0% (767 of 767 strings) Translation: LosslessCut/LosslessCut Translate-URL: https://hosted.weblate.org/projects/losslesscut/losslesscut/cs/
Currently translated at 100.0% (767 of 767 strings) Translation: LosslessCut/LosslessCut Translate-URL: https://hosted.weblate.org/projects/losslesscut/losslesscut/sk/
Currently translated at 100.0% (767 of 767 strings) Translation: LosslessCut/LosslessCut Translate-URL: https://hosted.weblate.org/projects/losslesscut/losslesscut/cs/
Currently translated at 100.0% (767 of 767 strings) Translation: LosslessCut/LosslessCut Translate-URL: https://hosted.weblate.org/projects/losslesscut/losslesscut/de/
Currently translated at 100.0% (767 of 767 strings) Translation: LosslessCut/LosslessCut Translate-URL: https://hosted.weblate.org/projects/losslesscut/losslesscut/es/
Currently translated at 100.0% (767 of 767 strings) Translation: LosslessCut/LosslessCut Translate-URL: https://hosted.weblate.org/projects/losslesscut/losslesscut/ta/
Currently translated at 100.0% (767 of 767 strings) Translation: LosslessCut/LosslessCut Translate-URL: https://hosted.weblate.org/projects/losslesscut/losslesscut/pl/
af7bad1
to
47008e3
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (1)
locales/pl/translation.json (1)
751-751
: Review Help Message Translation:
The help message translation on this line uses “... nie możesz znaleźć żadnej decyzji …”. The term “decyzji” appears to be a mistranslation of “resolution” and should likely be replaced with “rozwiązania” for better clarity. Also, check spacing around the tagged elements (e.g., ensure a space exists before<1>Pomoc</1>
).
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (9)
locales/cs/translation.json
(2 hunks)locales/de/translation.json
(1 hunks)locales/es/translation.json
(2 hunks)locales/it/translation.json
(1 hunks)locales/ja/translation.json
(1 hunks)locales/pl/translation.json
(1 hunks)locales/ru/translation.json
(1 hunks)locales/sk/translation.json
(1 hunks)locales/zh_Hans/translation.json
(1 hunks)
🚧 Files skipped from review as they are similar to previous changes (7)
- locales/de/translation.json
- locales/it/translation.json
- locales/sk/translation.json
- locales/ru/translation.json
- locales/cs/translation.json
- locales/ja/translation.json
- locales/zh_Hans/translation.json
⏰ Context from checks skipped due to timeout of 90000ms (1)
- GitHub Check: test (windows-latest)
🔇 Additional comments (4)
locales/pl/translation.json (3)
742-747
: New Translation Entries Added:
This block adds several new user messages (e.g., “No file is loaded”, “Smart cut is experimental…”, etc.) that improve clarity in error and process feedback. Please verify these entries align with the project’s overall terminology and style.
748-748
: Technical Term Translation Issue:
The entry
"Fastest: FFmpeg-assisted playback": "Najszybsze: FFmpeg-assisted playback"
leaves the technical phrase “FFmpeg-assisted playback” fully in English. For consistency with other locales, consider partially translating it—preserving “FFmpeg” while translating “assisted playback” (e.g., to "odtwarzanie wspomagane przez FFmpeg").
752-762
: Overall Consistency and Clarity:
The remaining entries in this block—covering messages about invalid file names, codec support, importing chapters, and preserving metadata—are clear and consistent with broader project terminology. It would be good to double-check punctuation and any special formatting to ensure they match similar entries in other locale files.locales/es/translation.json (1)
906-909
: New Spanish Translation Entries:
The added Spanish entries for:
• "File name is too long and cannot be exported."
• "Adjusting the output FPS and cutting at the same time will cause incorrect cuts. Consider instead doing it in two separate steps."
• "Fell back to default output file name"
are clear, concise, and consistent with corresponding updates across other languages. The messaging effectively informs the users and adheres to the project’s tone.
Translations update from Hosted Weblate for LosslessCut/LosslessCut.
Current translation status:
Summary by CodeRabbit
New Features
Bug Fixes
Documentation