Adding arabic string localization (rebased) (#1895)
* Create ar.jsx * Preparing file for translation. * Create ar.yml * Preparing file for translation. * Create simple_form.ar.yml * Preparing file for translation. * Create devise.ar.yml * Preparing file for translation. * Create doorkeeper.ar.yml * Preparing file for translation. * Update index.jsx Preparing file for translation. * Update mastodon.jsx * Preparing file to translation. * Correction thanks to @Taekiro https://github.com/tootsuite/mastodon/pull/1798#pullrequestreview-32924922 * Update settings_helper.rb Preparing file to translation. * Update application.rb * Preparing file to translation. * Update simple_form.ar.yml * Update doorkeeper.ar.yml * Update devise.ar.yml * Update ar.yml * Fix i18n-tasks unused issue (ar) Remove unused translation strings * Update application.rb * Update ar.jsx * Fix various issues with Arabic translation * Fix duplication caused in merge * Fix syntax error in devise.ar.yml * Fix import error Duplicated incorrect import in mastodon.jsx * Fix duplication error in locales/index.jsx * Update ar.yml * Update ar.jsx * Update ar.yml * Update ar.jsx * Fix ar translationth-downstream
parent
02c6442cc5
commit
ac91652eae
@ -0,0 +1,72 @@
|
|||||||
|
const ar = {
|
||||||
|
"column_back_button.label": "العودة الى الوراء",
|
||||||
|
"lightbox.close": "إغلاق",
|
||||||
|
"loading_indicator.label": "تحميل ...",
|
||||||
|
"status.mention": "أذكُر @{name}",
|
||||||
|
"status.delete": "إحذف",
|
||||||
|
"status.reply": "ردّ",
|
||||||
|
"status.reblog": "رَقِّي",
|
||||||
|
"status.favourite": "Favourite",
|
||||||
|
"status.reblogged_by": "{name} رقى",
|
||||||
|
"status.sensitive_warning": "محتوى حساس",
|
||||||
|
"status.sensitive_toggle": "اضغط للعرض",
|
||||||
|
"status.show_more": "أظهر المزيد",
|
||||||
|
"status.show_less": "إعرض أقلّ",
|
||||||
|
"status.open": "وسع هذه المشاركة",
|
||||||
|
"status.report": "إبلِغ عن @{name}",
|
||||||
|
"video_player.toggle_sound": "تبديل الصوت",
|
||||||
|
"account.mention": "أُذكُر @{name}",
|
||||||
|
"account.edit_profile": "تعديل الملف الشخصي",
|
||||||
|
"account.unblock": "إلغاء الحظر عن @{name}",
|
||||||
|
"account.unfollow": "إلغاء المتابعة",
|
||||||
|
"account.block": "حظر @{name}",
|
||||||
|
"account.follow": "إتبع",
|
||||||
|
"account.posts": "المشاركات",
|
||||||
|
"account.follows": "يتبع",
|
||||||
|
"account.followers": "المتابعون",
|
||||||
|
"account.follows_you": "يتابعك",
|
||||||
|
"account.requested": "في انتظار الموافقة",
|
||||||
|
"getting_started.heading": "إستعدّ للبدء",
|
||||||
|
"getting_started.about_addressing": "يمكنك متابعة الأشخاص إذا كنت تعرف اسم المستخدم الخاص بهم والنطاق الذي هم عليه عن طريق إدخال عنوان شبيه بالبريد الإلكتروني في الحقل المخصص للبحث.",
|
||||||
|
"getting_started.about_shortcuts": "إذا كان المستخدم المستهدف في نفس النطاق الذي تستخدمه، فإسم المستخدم وحده يكفي. وتنطبق نفس القاعدة على ذكر الأشخاص في المنشورات و التبويقات.",
|
||||||
|
"getting_started.open_source_notice": "ماستدون برنامج مفتوح المصدر. يمكنك المساهمة، أو الإبلاغ عن تقارير الأخطاء، على GitHub {github}. {apps}.",
|
||||||
|
"column.home": "الرئيسية",
|
||||||
|
"column.community": "القائمة الزمنية المحلية",
|
||||||
|
"column.public": "القائمة الزمنية الفيدرالية",
|
||||||
|
"column.notifications": "الإشعارات",
|
||||||
|
"tabs_bar.compose": "تحرير",
|
||||||
|
"tabs_bar.home": "الرئيسية",
|
||||||
|
"tabs_bar.mentions": "الإشارات",
|
||||||
|
"tabs_bar.public": "القائمة الزمنية الفيدرالية",
|
||||||
|
"tabs_bar.notifications": "الإشعارات",
|
||||||
|
"compose_form.placeholder": "ماذا يدور في ذهنك ؟",
|
||||||
|
"compose_form.publish": "بَوِّق",
|
||||||
|
"compose_form.sensitive": "ضع علامة حساس على الوسائط",
|
||||||
|
"compose_form.spoiler": "إخفاء النص وراء تحذير",
|
||||||
|
"compose_form.private": "ضع علامة خاص",
|
||||||
|
"compose_form.privacy_disclaimer": "Your private status will be delivered to mentioned users on {domains}. Do you trust {domainsCount, plural, one {that server} other {those servers}}? Post privacy only works on Mastodon instances. If {domains} {domainsCount, plural, one {is not a Mastodon instance} other {are not Mastodon instances}}, there will be no indication that your post is private, and it may be boosted or otherwise made visible to unintended recipients.",
|
||||||
|
"compose_form.unlisted": "لا تعرض على الخيوط الزمنية العامة",
|
||||||
|
"navigation_bar.edit_profile": "تعديل الملف الشخصي",
|
||||||
|
"navigation_bar.preferences": "التفضيلات",
|
||||||
|
"navigation_bar.community_timeline": "القائمة الزمنية المحلية",
|
||||||
|
"navigation_bar.public_timeline": "القائمة الزمنية الفيدرالية",
|
||||||
|
"navigation_bar.logout": "خروج",
|
||||||
|
"reply_indicator.cancel": "إلغاء",
|
||||||
|
"search.placeholder": "ابحث",
|
||||||
|
"search.account": "حساب",
|
||||||
|
"search.hashtag": "وسم",
|
||||||
|
"upload_button.label": "إضافة وسائط",
|
||||||
|
"upload_form.undo": "إلغاء",
|
||||||
|
"notification.follow": "{name} يتبعك",
|
||||||
|
"notification.favourite": "{name} أعجب بمنشورك",
|
||||||
|
"notification.reblog": "{name} قام بترقية تبويقك",
|
||||||
|
"notification.mention": "{name} ذكرك",
|
||||||
|
"notifications.column_settings.alert": "إشعارات سطح المكتب",
|
||||||
|
"notifications.column_settings.show": "إعرِضها في عمود",
|
||||||
|
"notifications.column_settings.follow": "متابعُون جُدُد :",
|
||||||
|
"notifications.column_settings.favourite": "المُفَضَّلة :",
|
||||||
|
"notifications.column_settings.mention": "الإشارات :",
|
||||||
|
"notifications.column_settings.reblog": "الترقيّات:",
|
||||||
|
};
|
||||||
|
|
||||||
|
export default ar;
|
@ -0,0 +1,170 @@
|
|||||||
|
---
|
||||||
|
ar:
|
||||||
|
about:
|
||||||
|
about_mastodon: ماستدون شبكة إجتماعية <em>حرة و مفتوحة المصدر</em>. هو بديل <em>لامركزي</em> لمنصات تجارية ، يمكنك من تجنب احتكار شركة واحدة للإتصالات الخاصة بك. يمكنك اختيار أي خادم تثق فيه. أيهما تختار، يمكنك التفاعل مع أي شخص آخر على الشبكة. يمكن لأي شخص تنصيب و تشغيل خادم ماستدون خاص به والمشاركة في <em>الشبكات الاجتماعية</em> بكل شفافية.
|
||||||
|
about_this: عن مثيل الخادوم هذا
|
||||||
|
apps: التطبيقات
|
||||||
|
business_email: 'البريد الإلكتروني المهني :'
|
||||||
|
closed_registrations: التسجيلات في مثيل الخادوم هذا مُغلقة حاليًا.
|
||||||
|
contact: Contact
|
||||||
|
description_headline: ما هو %{domain}?
|
||||||
|
domain_count_after: خوادم أخرى
|
||||||
|
domain_count_before: متصل بـ
|
||||||
|
features:
|
||||||
|
api: Open API for apps and services
|
||||||
|
blocks: Rich block and muting tools
|
||||||
|
characters: 500 حرف في كل رسالة
|
||||||
|
chronology: Timelines are chronological
|
||||||
|
ethics: 'Ethical design: no ads, no tracking'
|
||||||
|
gifv: GIFV sets and short videos
|
||||||
|
privacy: Granular, per-post privacy settings
|
||||||
|
public: الخيوط الزمنية العمومية
|
||||||
|
features_headline: ما الذي يجعل ماستدون فريدًا ؟
|
||||||
|
get_started: إبدأ الآن
|
||||||
|
links: الروابط
|
||||||
|
other_instances: خوادم أخرى
|
||||||
|
source_code: الشفرة المصدرية
|
||||||
|
status_count_after: منشورات
|
||||||
|
status_count_before: نشروا
|
||||||
|
terms: شروط الاستعمال
|
||||||
|
user_count_after: المُستخدِمين
|
||||||
|
user_count_before: يستضيف
|
||||||
|
accounts:
|
||||||
|
follow: إتبع
|
||||||
|
followers: متابِعون
|
||||||
|
following: يتابعون
|
||||||
|
nothing_here: لا يوجد أي شيء هنا !
|
||||||
|
people_followed_by: الأشخاص الذين يتبعهم %{name}
|
||||||
|
people_who_follow: الأشخاص الذين يتبعون %{name}
|
||||||
|
posts: منشورات
|
||||||
|
remote_follow: إتبع عن بعد
|
||||||
|
unfollow: إلغاء المتابعة
|
||||||
|
application_mailer:
|
||||||
|
settings: 'تغيير تفضيلات البريد الإلكتروني : %{link}'
|
||||||
|
signature: إشعارات ماستدون من %{instance}
|
||||||
|
view: 'View:'
|
||||||
|
applications:
|
||||||
|
invalid_url: إن الرابط المقدم غير صالح
|
||||||
|
auth:
|
||||||
|
change_password: الهوية
|
||||||
|
didnt_get_confirmation: Didn't receive confirmation instructions?
|
||||||
|
forgot_password: نسيت كلمة المرور ؟
|
||||||
|
login: تسجيل الدخول
|
||||||
|
logout: خروج
|
||||||
|
register: إنشاء حساب
|
||||||
|
resend_confirmation: إعادة إرسال تعليمات التأكيد
|
||||||
|
reset_password: إعادة تعيين كلمة المرور
|
||||||
|
set_new_password: تعيين كلمة مرور جديدة
|
||||||
|
authorize_follow:
|
||||||
|
error: Unfortunately, there was an error looking up the remote account
|
||||||
|
follow: إتبع
|
||||||
|
prompt_html: 'You (<strong>%{self}</strong>) have requested to follow:'
|
||||||
|
title: إتباع %{acct}
|
||||||
|
datetime:
|
||||||
|
distance_in_words:
|
||||||
|
about_x_hours: "%{count}سا"
|
||||||
|
about_x_months: "%{count}شهر"
|
||||||
|
about_x_years: "%{count}سنة"
|
||||||
|
almost_x_years: "%{count}سنوات"
|
||||||
|
half_a_minute: Just now
|
||||||
|
less_than_x_minutes: "%{count}د"
|
||||||
|
less_than_x_seconds: الآن
|
||||||
|
over_x_years: "%{count}سنين"
|
||||||
|
x_days: "%{count}أيام"
|
||||||
|
x_minutes: "%{count}د"
|
||||||
|
x_months: "%{count}شه"
|
||||||
|
x_seconds: "%{count}ث"
|
||||||
|
exports:
|
||||||
|
blocks: قمت بحظر
|
||||||
|
csv: CSV
|
||||||
|
follows: أنت تتبع
|
||||||
|
storage: ذاكرة التخزين
|
||||||
|
generic:
|
||||||
|
changes_saved_msg: تم حفظ التعديلات بنجاح !
|
||||||
|
powered_by: powered by %{link}
|
||||||
|
save_changes: حفظ التغييرات
|
||||||
|
validation_errors:
|
||||||
|
one: Something isn't quite right yet! Please review the error below
|
||||||
|
other: Something isn't quite right yet! Please review %{count} errors below
|
||||||
|
imports:
|
||||||
|
preface: You can import certain data like all the people you are following or blocking into your account on this instance, from files created by an export on another instance.
|
||||||
|
success: تم تحميل بياناتك بنجاح وسيتم معالجتها في الوقت المناسب
|
||||||
|
types:
|
||||||
|
blocking: قائمة المحظورين
|
||||||
|
following: قائمة المستخدمين المتبوعين
|
||||||
|
upload: تحميل
|
||||||
|
landing_strip_html: <strong>%{name}</strong> is a user on <strong>%{domain}</strong>. You can follow them or interact with them if you have an account anywhere in the fediverse. If you don't, you can <a href="%{sign_up_path}">sign up here</a>.
|
||||||
|
media_attachments:
|
||||||
|
validations:
|
||||||
|
images_and_video: Cannot attach a video to a status that already contains images
|
||||||
|
too_many: لا يمكن إرفاق أكثر من 4 ملفات
|
||||||
|
notification_mailer:
|
||||||
|
digest:
|
||||||
|
body: 'Here is a brief summary of what you missed on %{instance} since your last visit on %{since}:'
|
||||||
|
mention: "%{name} mentioned you in:"
|
||||||
|
new_followers_summary:
|
||||||
|
one: لقد حصلت على متابع جديد !
|
||||||
|
other: لقد تحصلت على %{count} متتبعين جدد ! رائع !
|
||||||
|
subject:
|
||||||
|
one: "إشعار واحد منذ زيارتك الأخيرة \U0001F418"
|
||||||
|
other: "%{count} إشعارات جديدة منذ زيارتك الأخيرة \U0001F418"
|
||||||
|
favourite:
|
||||||
|
body: 'Your status was favourited by %{name}:'
|
||||||
|
subject: "%{name} favourited your status"
|
||||||
|
follow:
|
||||||
|
body: "%{name} من متتبعيك الآن !"
|
||||||
|
subject: "%{name} من متتبعيك الآن !"
|
||||||
|
follow_request:
|
||||||
|
body: "%{name} has requested to follow you"
|
||||||
|
subject: 'Pending follower: %{name}'
|
||||||
|
mention:
|
||||||
|
body: 'You were mentioned by %{name} in:'
|
||||||
|
subject: You were mentioned by %{name}
|
||||||
|
reblog:
|
||||||
|
body: 'Your status was boosted by %{name}:'
|
||||||
|
subject: "%{name} boosted your status"
|
||||||
|
pagination:
|
||||||
|
next: التالي
|
||||||
|
prev: السابق
|
||||||
|
remote_follow:
|
||||||
|
acct: Enter your username@domain you want to follow from
|
||||||
|
missing_resource: Could not find the required redirect URL for your account
|
||||||
|
proceed: Proceed to follow
|
||||||
|
prompt: 'إنك بصدد متابعة :'
|
||||||
|
settings:
|
||||||
|
authorized_apps: التطبيقات المرخص لها
|
||||||
|
back: عودة إلى ماستدون
|
||||||
|
edit_profile: تعديل الملف الشخصي
|
||||||
|
export: تصدير البيانات
|
||||||
|
import: إستيراد
|
||||||
|
preferences: التفضيلات
|
||||||
|
settings: الإعدادات
|
||||||
|
two_factor_authentication: المصادقة الثنائية
|
||||||
|
statuses:
|
||||||
|
open_in_web: إفتح في الويب
|
||||||
|
over_character_limit: تم تجاوز حد الـ %{max} حرف المسموح بها
|
||||||
|
show_more: أظهر المزيد
|
||||||
|
visibilities:
|
||||||
|
private: إعرض فقط لمتتبعيك
|
||||||
|
public: عمومي
|
||||||
|
unlisted: Public, but do not display on the public timeline
|
||||||
|
stream_entries:
|
||||||
|
click_to_show: إضغط للعرض
|
||||||
|
reblogged: رقى
|
||||||
|
sensitive_content: محتوى حساس
|
||||||
|
time:
|
||||||
|
formats:
|
||||||
|
default: "%b %d, %Y, %H:%M"
|
||||||
|
two_factor_authentication:
|
||||||
|
code_hint: Enter the code generated by your authenticator app to confirm
|
||||||
|
description_html: If you enable <strong>two-factor authentication</strong>, logging in will require you to be in possession of your phone, which will generate tokens for you to enter.
|
||||||
|
disable: تعطيل
|
||||||
|
enable: تفعيل
|
||||||
|
enabled_success: Two-factor authentication successfully enabled
|
||||||
|
instructions_html: "<strong>Scan this QR code into Google Authenticator or a similiar TOTP app on your phone</strong>. From now on, that app will generate tokens that you will have to enter when logging in."
|
||||||
|
manual_instructions: 'If you can''t scan the QR code and need to enter it manually, here is the plain-text secret:'
|
||||||
|
setup: Set up
|
||||||
|
wrong_code: The entered code was invalid! Are server time and device time correct?
|
||||||
|
users:
|
||||||
|
invalid_email: عنوان البريد الإلكتروني غير صالح
|
||||||
|
invalid_otp_token: الرمز الثنائي غير صالح
|
@ -0,0 +1,27 @@
|
|||||||
|
---
|
||||||
|
ar:
|
||||||
|
devise:
|
||||||
|
failure:
|
||||||
|
inactive: لم يتم تنشيط حسابك بعد.
|
||||||
|
locked: إن حسابك مقفل.
|
||||||
|
mailer:
|
||||||
|
password_change:
|
||||||
|
subject: 'ماستدون : تم تغيير كلمة المرور'
|
||||||
|
reset_password_instructions:
|
||||||
|
subject: 'ماستدون : تعليمات إستعادة كلمة المرور'
|
||||||
|
unlock_instructions:
|
||||||
|
subject: 'ماستدون : تعليمات فك القفل'
|
||||||
|
passwords:
|
||||||
|
updated: تم تغيير كلمة المرور بنجاح. أنت مسجل الآن.
|
||||||
|
updated_not_active: تم تغيير كلمة المرور بنجاح.
|
||||||
|
registrations:
|
||||||
|
signed_up: أهلا وسهلا ! تم تسجيل دخولك بنجاح.
|
||||||
|
updated: تم تحديث حسابك بنجاح.
|
||||||
|
sessions:
|
||||||
|
already_signed_out: تم تسجيل خروجك بنجاح.
|
||||||
|
signed_in: تم تسجيل دخولك بنجاح.
|
||||||
|
signed_out: تم تسجيل خروجك بنجاح.
|
||||||
|
errors:
|
||||||
|
messages:
|
||||||
|
not_found: لا يوجد
|
||||||
|
not_locked: ليس مقفلاً
|
@ -0,0 +1,63 @@
|
|||||||
|
ar:
|
||||||
|
activerecord:
|
||||||
|
attributes:
|
||||||
|
doorkeeper/application:
|
||||||
|
name: التسمية
|
||||||
|
doorkeeper:
|
||||||
|
applications:
|
||||||
|
buttons:
|
||||||
|
cancel: إلغاء
|
||||||
|
edit: تعديل
|
||||||
|
submit: إرسال
|
||||||
|
confirmations:
|
||||||
|
destroy: متأكد ؟
|
||||||
|
edit:
|
||||||
|
title: تعديل التطبيق
|
||||||
|
index:
|
||||||
|
name: التسمية
|
||||||
|
new: تطبيق جديد
|
||||||
|
title: تطبيقاتك
|
||||||
|
new:
|
||||||
|
title: تطبيق جديد
|
||||||
|
show:
|
||||||
|
application_id: معرف التطبيق
|
||||||
|
secret: السر
|
||||||
|
title: 'تطبيق : %{name}'
|
||||||
|
authorizations:
|
||||||
|
buttons:
|
||||||
|
authorize: ترخيص
|
||||||
|
deny: رفض
|
||||||
|
error:
|
||||||
|
title: حدث هناك خطأ
|
||||||
|
new:
|
||||||
|
able_to: سيكون بامكانه القيام ب
|
||||||
|
title: الترخيص مطلوب
|
||||||
|
show:
|
||||||
|
title: رمز الترخيص
|
||||||
|
authorized_applications:
|
||||||
|
buttons:
|
||||||
|
revoke: إبطال التصريح
|
||||||
|
confirmations:
|
||||||
|
revoke: متأكد ؟
|
||||||
|
index:
|
||||||
|
application: التطبيق
|
||||||
|
scopes: النطاقات
|
||||||
|
title: تطبيقاتك المرخص لها
|
||||||
|
flash:
|
||||||
|
applications:
|
||||||
|
create:
|
||||||
|
notice: تم إنشاء التطبيق
|
||||||
|
destroy:
|
||||||
|
notice: تم حذف التطبيق.
|
||||||
|
update:
|
||||||
|
notice: تم تحديث التطبيق.
|
||||||
|
authorized_applications:
|
||||||
|
destroy:
|
||||||
|
notice: تم إبطال التصريح المخول للتطبيق.
|
||||||
|
layouts:
|
||||||
|
admin:
|
||||||
|
nav:
|
||||||
|
applications: التطبيقات
|
||||||
|
scopes:
|
||||||
|
read: قراءة بيانات حسابك
|
||||||
|
write: النشر نيابةً عنك
|
@ -0,0 +1,49 @@
|
|||||||
|
---
|
||||||
|
ar:
|
||||||
|
simple_form:
|
||||||
|
hints:
|
||||||
|
defaults:
|
||||||
|
avatar: PNG, GIF أو JPG. على الأكثر 2 ميغابيت . سوف يتم تصغيرها إلى 120x120px
|
||||||
|
display_name: 30 حرفاً على الأكثر
|
||||||
|
header: PNG, GIF or JPG. على الأكثر 2 ميغابيت . سوف يتم تصغيرها إلى 700x335px
|
||||||
|
note: 160 حرفاً على الأكثر
|
||||||
|
imports:
|
||||||
|
data: ملف CSV تم تصديره من خادوم مثيل آخر لماستدون
|
||||||
|
sessions:
|
||||||
|
otp: أدخل الرمز الثنائي من هاتفك أو استخدم أحد رموز الاسترداد.
|
||||||
|
labels:
|
||||||
|
defaults:
|
||||||
|
avatar: الصورة الرمزية
|
||||||
|
confirm_new_password: تأكيد كلمة المرور الجديدة
|
||||||
|
confirm_password: تأكيد كلمة المرور
|
||||||
|
current_password: كلمة المرور الحالية
|
||||||
|
data: البيانات
|
||||||
|
display_name: الاسم الذي يتم عرضه
|
||||||
|
email: عنوان البريد الإلكتروني
|
||||||
|
header: رأس الصفحة
|
||||||
|
locale: اللغة
|
||||||
|
locked: إجعل حسابك خاصًا
|
||||||
|
new_password: كلمة مرور جديدة
|
||||||
|
note: السيرة الذاتية
|
||||||
|
otp_attempt: الرمز الثنائي
|
||||||
|
password: كلمة المرور
|
||||||
|
setting_boost_modal: إظهار مربع حوار التأكيد قبل القيام بالترقية
|
||||||
|
setting_default_privacy: خصوصية المنشور
|
||||||
|
severity: الشدة
|
||||||
|
type: نوع الإستيراد
|
||||||
|
username: اسم المستخدم
|
||||||
|
interactions:
|
||||||
|
must_be_follower: حظر اشعارات الأشخاص الذين لا يتبعونك
|
||||||
|
must_be_following: حظر اشعارات الأشخاص الذين لا تتبعهم
|
||||||
|
notification_emails:
|
||||||
|
digest: إرسال رسائل بريد إلكتروني ملخصة
|
||||||
|
favourite: إبعث بريداً إلكترونياً عندما يعجب احدهم بمنشورك
|
||||||
|
follow: إبعث بريداً إلكترونياً عندما يتبعك أحد
|
||||||
|
follow_request: إبعث بريداً إلكترونياً عند تلقيك طلب بالمتابعة
|
||||||
|
mention: إبعث بريداً إلكترونياً عندما يشار إليك
|
||||||
|
reblog: إبعث بريداً إلكترونياً عندما يعزز احدهم منشورك
|
||||||
|
'no': 'لا'
|
||||||
|
required:
|
||||||
|
mark: "*"
|
||||||
|
text: مطلوب
|
||||||
|
'yes': 'نعم'
|
Loading…
Reference in new issue