Skip to content

Arabic: complete missing translations and fix outdated NewPipe→PipePipe references#79

Closed
AhmedRX20 wants to merge 2 commits into
InfinityLoop1308:devfrom
AhmedRX20:i18n/ar-complete-translations
Closed

Arabic: complete missing translations and fix outdated NewPipe→PipePipe references#79
AhmedRX20 wants to merge 2 commits into
InfinityLoop1308:devfrom
AhmedRX20:i18n/ar-complete-translations

Conversation

@AhmedRX20

Copy link
Copy Markdown

This PR completes the Arabic (ar) translation, which was incomplete after being inherited from NewPipe.

  • Added translations for 391 keys that exist in the base strings.xml but were missing entirely from values-ar/strings.xml (new PipePipe features: SponsorBlock, SABR, ExoPlayer settings, filters, proxy, etc.)
  • Updated 18 renamed (_new suffix) entries that still referenced "NewPipe" instead of "PipePipe"
  • Entry order unchanged; all \n, %s, %d, %1$d placeholders preserved as-is
  • Machine-assisted translation, manually reviewed for terminology consistency (brand/technical names kept untranslated: YouTube, BiliBili, SponsorBlock, ExoPlayer, WebView, Ko-fi, etc.)

@InfinityLoop1308

Copy link
Copy Markdown
Owner

Thanks. One issue: replies is a <plurals> resource in the base file, but this PR adds it as a <string>. Please change it to <plurals> and preserve the %s placeholder for each quantity.

@AhmedRX20

Copy link
Copy Markdown
Author

Thanks. One issue: replies is a <plurals> resource in the base file, but this PR adds it as a <string>. Please change it to <plurals> and preserve the %s placeholder for each quantity.

My bad 🤦
Fixed — converted to with all quantity forms, %s preserved. Pushed ✅

@my-live-is-a-lie

Copy link
Copy Markdown

Hi i did a review to this pull request and
Here is my feedback

1- keys that doesn't exists in the latest release v5.2.4

app_description
app_license_title
app_update_notification_channel_description
app_update_notification_content_title
clear_cookie_summary
content_not_supported
donation_encouragement
downloads_storage_use_saf_summary_api_19
error_postprocessing_stopped
error_report_notification_title
error_report_open_issue_button_text
feed_load_error_terminated
feed_use_dedicated_fetch_method_help_text
msg_running
paid_content
privacy_policy_encouragement
privacy_policy_title
private_content
restricted_video_no_stream
soundcloud_go_plus_content
start_accept_privacy_policy
title_activity_about
website_encouragement
website_title
youtube_music_premium_content

2- missing keys

<plurals name="replies">
        <item quantity="other">%s رد</item>
        <item quantity="one">رد واحد</item>
        <item quantity="two">ردان</item>
        <item quantity="few">%s ردود</item>
        <item quantity="many">%s رد</item>
    </plurals>

arrays

     <string-array name="sleep_timer_length_key">
        <item>5 دقائق</item>
        <item>10 دقائق</item>
        <item>15 دقيقه</item>
        <item>20 دقيقه</item>
        <item>30 دقيقه</item>
        <item>1 ساعة</item>
    </string-array>
    <string-array name="speeding_playback_description">
        <item>0.1x</item>
        <item>0.3x</item>
        <item>0.5x</item>
        <item>0.75x</item>
        <item>معطل</item>
        <item>1.25x</item>
        <item>1.5x</item>
        <item>1.75x</item>
        <item>2x</item>
        <item>2.25x</item>
        <item>2.5x</item>
        <item>3x</item>
        <item>5x</item>
    </string-array>

New keys added in this merged PR #59

<string name="playback_speed_gesture_control_title">Swipe to control playback speed</string>
<string name="playback_speed_gesture_control_summary">Swipe in the middle to control playback speed. Disables fullscreen gesture control</string>

Translate to

<string name="playback_speed_gesture_control_title">اسحب للتحكم في سرعة التشغيل</string>
<string name="playback_speed_gesture_control_summary">اسحب من المنتصف للتحكم في سرعة التشغيل. يؤدي ذلك إلى تعطيل إيماء التحكم في وضع ملء الشاشة</string>

3- Wrong translation in

<plurals name="watching">
        <item quantity="zero">%s مشاهدة</item>
        <item quantity="one">%s مشاهدة</item>
        <item quantity="two">%s مشاهدة</item>
        <item quantity="few">%s مشاهدات</item>
        <item quantity="many">%s مشاهدات</item>
        <item quantity="other">%s مشاهدات</item>
    </plurals>
<plurals name="deleted_downloads_toast">
        <item quantity="zero">اكتمل %1$s تنزيل</item>
        <item quantity="one">اكتمل %1$s تنزيل</item>
        <item quantity="two">اكتمل %1$s تنزيل</item>
        <item quantity="few">اكتملت %1$s تنزيلات</item>
        <item quantity="many">اكتمل %1$s تنزيل</item>
        <item quantity="other">اكتمل %1$s تنزيل</item>
    </plurals>

Correction

<plurals name="watching">
        <item quantity="other">%s مشاهد</item>
        <item quantity="zero">%s مشاهد</item>
        <item quantity="one">مشاهد واحد</item>
        <item quantity="two">مشاهدان</item>
        <item quantity="few">%s يشاهدون</item>
        <item quantity="many">%s مشاهد</item>
    </plurals>
<plurals name="deleted_downloads_toast">
        <item quantity="other">تم حذف %1$s تنزيل</item>
        <item quantity="one">تم حذف تنزيل واحد</item>
        <item quantity="two">تم حذف تنزيلان</item>
        <item quantity="few">تم حذف %1$s تنزيلات</item>
        <item quantity="many">تم حذف %1$s تنزيل</item>
    </plurals>

<string name="caption_setting_description">تعديل مشغل نص التسمية التوضيحية وأنماط الخلفية. يتطلب إعادة تشغيل التطبيق لتصبح التغييرات سارية المفعول</string>

Correction

<string name="caption_setting_description">تعديل نص التسمية التوضيحية وأنماط الخلفية للمشغل. يتطلب إعادة تشغيل التطبيق لتصبح التغييرات سارية المفعول</string>

4- Better alternative translation suggestions

 <plurals name="subscribers">
        <item quantity="zero">%s مشترك</item>
        <item quantity="one">%s l مشاركين</item>
        <item quantity="two">%s مشتركين</item>
        <item quantity="few">%s مشتركين</item>
        <item quantity="many">%s مشتركين</item>
        <item quantity="other">%s مشتركين</item>
    </plurals>
  <plurals name="views">
        <item quantity="zero">%s مشاهد</item>
        <item quantity="one">%s مشاهدة</item>
        <item quantity="two">%s مشاهدة</item>
        <item quantity="few">%s مشاهدة</item>
        <item quantity="many">%s مشاهدة</item>
        <item quantity="other">%s مشاهدة</item>
    </plurals>
    <plurals name="videos">
        <item quantity="zero">%s فيديو</item>
        <item quantity="one">%s أشرطة فيديو</item>
        <item quantity="two">%s أشرطة فيديو</item>
        <item quantity="few">%s أشرطة فيديو</item>
        <item quantity="many">%s أشرطة فيديو</item>
        <item quantity="other">%s أشرطة فيديو</item>
    </plurals>
  <plurals name="listening">
        <item quantity="zero">%s الاستماع</item>
        <item quantity="one">%s الاستماع</item>
        <item quantity="two">%s مستمعين</item>
        <item quantity="few">%s مستمعين</item>
        <item quantity="many">%s مستمعين</item>
        <item quantity="other">%s مستمعين</item>
    </plurals>
 <plurals name="days">
        <item quantity="zero">%d يوم</item>
        <item quantity="one">%d يوم</item>
        <item quantity="two">%d أيام</item>
        <item quantity="few">%d أيام</item>
        <item quantity="many">%d يومًا</item>
        <item quantity="other">%d يومًا</item>
    </plurals>
 <plurals name="download_finished_notification">
        <item quantity="zero">اكتمل التنزيل</item>
        <item quantity="one">اكتمل التنزيل</item>
        <item quantity="two">اكتمل التنزيل</item>
        <item quantity="few">اكتمل تنزيل%s</item>
        <item quantity="many">اكتملت التنزيلات%s</item>
        <item quantity="other">اكتملت التنزيلات%s</item>
    </plurals>

Replace to be

  <plurals name="subscribers">
        <item quantity="other">%s مشترك</item>
        <item quantity="zero">%s مشترك</item>
        <item quantity="one">%s مشترك</item>
        <item quantity="two">%s مشتركين</item>
        <item quantity="few">%s مشتركين</item>
        <item quantity="many">%s مشترك</item>
    </plurals>
<plurals name="views">
        <item quantity="other">%s مشاهدة</item>
        <item quantity="zero">%s مشاهدة</item>
        <item quantity="one">%s مشاهدة</item>
        <item quantity="two">%s مشاهدة</item>
        <item quantity="few">%s مشاهدات</item>
        <item quantity="many">%s مشاهدة</item>
    </plurals>
  <plurals name="videos">
        <item quantity="other">%s فيديو</item>
        <item quantity="zero">%s فيديو</item>
        <item quantity="one">فيديو واحد</item>
        <item quantity="two">%s فيديو</item>
        <item quantity="few">%s فيديوهات</item>
        <item quantity="many">%s فيديو</item>
    </plurals>
  <plurals name="listening">
        <item quantity="other">%s مستمع</item>
        <item quantity="zero">%s مستمع</item>
        <item quantity="one">مستمع واحد</item>
        <item quantity="two">%s مستمع</item>
        <item quantity="few">%s مستمعين</item>
        <item quantity="many">%s مستمع</item>
    </plurals>
 <plurals name="days">
        <item quantity="other">%d يومًا</item>
        <item quantity="zero">%d يوم</item>
        <item quantity="one">يوم</item>
        <item quantity="two">يومان</item>
        <item quantity="few">%d أيام</item>
        <item quantity="many">%d يومًا</item>
    </plurals>
 <plurals name="download_finished_notification">
        <item quantity="other">اكتملت %s عملية تنزيل</item>
        <item quantity="one">اكتمل التنزيل</item>
        <item quantity="two">اكتمل التنزيل</item>
        <item quantity="few">اكتملت %s تنزيلات</item>
        <item quantity="many">اكتملت %s عملية تنزيل</item>
    </plurals>

Replace تعليقات الرصاصة to -> التعليقات العائمة
in these keys

regular_bullet_comments_duration_summary
regular_bullet_comments_duration_title
top_bottom_bullet_comments_duration_summary
top_bottom_bullet_comments_duration_title
bullet_comments_outline_radius_title
bullet_comments_font_title
bullet_comments_opacity_title
sort_bullet_comments
settings_category_bullet_comments_summary
max_bullet_comments_rows_top_summary
max_bullet_comments_rows_bottom_summary
max_bullet_comments_rows_regular_summary

This is because the Literal translation to (bullet comments) might be a bit confusing to the user in what this feature do, so it is better to choose an alternative translation to it that reflects what does this feature might do.


Also these translations below needs a small changes to make more sense and to have a better meaning

 <string name="chapters">فصول</string>
 <string name="clear">تنظيف</string>
 <string name="clear_download_history">تنظيف تاريخ التحميل</string>
 <string name="comments_tab_description">تعليقات</string>
 <string name="description_select_enable">تمكين تحديد نص في الوصف</string>
 <string name="description_select_note">يمكنك الآن تحديد نص داخل الوصف. لاحظ أن الصفحة قد تومض وقد لا تكون الروابط قابلة للنقر أثناء وضع التحديد. 
 </string>
 <string name="description_tab_description">وصف</string>
 <string name="detail_drag_description">اسحب لإعادة ترتيب</string>
 <string name="detail_uploader_thumbnail_view_description">رافع الصورة الرمزية المصغرة</string>
 <string name="download_thumbnail_summary">قم بإيقاف تشغيله لمنع تحميل الصور المصغرة وحفظ البيانات واستخدام الذاكرة. تمسح التغييرات كلاً من ذاكرة التخزين المؤقت للصورة الموجودة في الذاكرة والموجودة على القرص</string>
 <string name="enable_disposed_exceptions_title">تقرير الأخطاء خارج دورة الحياة</string>
 <string name="error_path_creation">لا يمكن إنشاء المجلد الوجهة</string>
<string name="failed_streams">البث الفاشل</string>

Change To

 <string name="chapters">الفصول</string>
 <string name="clear">مسح</string>
 <string name="clear_download_history">مسح تاريخ التحميل</string>
 <string name="comments_tab_description">التعليقات</string>
 <string name="description_select_enable">تمكين تحديد النص في الوصف</string>
 <string name="description_select_note">يمكنك الآن تحديد النص داخل الوصف. لاحظ أن الصفحة قد تومض وقد لا تكون الروابط قابلة للنقر أثناء وضع التحديد. 
 </string>
 <string name="description_tab_description">الوصف</string>
 <string name="detail_drag_description">اسحب لإعادة الترتيب</string>
 <string name="detail_uploader_thumbnail_view_description">الصورة الرمزية المصغرة للناشر</string>
 <string name="download_thumbnail_summary">قم بإيقاف تشغيله لمنع تحميل الصور المصغرة وحفظ البيانات واستخدام الذاكرة. تمسح التغييرات كلاً من ذاكرة التخزين المؤقت للصور الموجودة في الذاكرة والموجودة على القرص</string>
 <string name="enable_disposed_exceptions_title">تقرير الأخطاء لـ out-of-lifecycle</string>
 <string name="error_path_creation">لا يمكن إنشاء المجلد في هذا المكان</string>
<string name="failed_streams">البثوث الفاشلة</string>

There is a lot more need to be cover but i don't want to make this comment more longer i highly recommend you to re-check your translation since there is some minor changes need to done or if you want i can make a commit to fix these to compare it with your translation and to see what need to be fixed

5- other changes
Remove this key since it doesn't need a translation

<string name="av_num">av</string>
<string name="sponsor_block">SponsorBlock</string>

Overall it is a very soild translation greet job.

@AhmedRX20

Copy link
Copy Markdown
Author

Hey, thanks a ton for going through all this in detail, really appreciate the effort 🙏

You caught way more than I expected honestly, especially the outdated/missing keys and the bullet comments naming — that's a fair point, "تعليقات الرصاصة" is pretty literal and confusing.

I'm gonna close this PR and open a fresh one based on the latest v5.2.4 base file, with all your feedback baked in from the start instead of stacking fixes on top of fixes here. Will tag you on the new one so you can take a look if you want.

Thanks again!

@AhmedRX20 AhmedRX20 closed this Jul 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants