مفاهیم اولیه

اين بخش، قسمت اول از سري مقالاتیست که در رابطه‌ با قابلیت پشتیبانی از چندزبانه بودن دروپال منتشر میکنم متاسفانه من به ميزانی كه علاقه داشتم در توسعه هسته‌ی پشتیبانی از قابلیت چندزبانی دروپال همكاري نداشتم (چون مشغول كار بر روي localize.drupal.org بودم) پس خودم هم نیاز به مروري بر روي اين قابليت تازه دارم. به همين جهت، بررسي هاي من براي شما خوانندگان عزيز هم مي تونه مفيد واقع بشه. خوشبختانه ، تعدادي زيادي از توسعه‌دهندگان دنباله‌ی كار را گرفته‌اند و يك سری قابليت خيلي خوب در زمينه پشتيباني از زبان‌هاي مختلف و چندزبانه بودن رو در ورژن جديد دروپال اضافه كرده‌اند

تنظيمات جديد «محلي-منطقه‌ای»:

حتي بدون اينكه شما هيچ يك از قابليت‌هاي چند زبانی رو فعال كنيد، دروپال داراي تنظيمات محلي دربخش administration » Configuration » Regional and language هست. در ورژن 7 شما مي تونيد كشور پيش فرض خودتون رو انتخاب كنيد. ولي اين كار به تنهايي فايده زيادي نداده ، اما ماژول‌هاي جامعه كاربري مي‌توانند براساس اين گزينه قابليت هاي جديد خودشون رو به دروپال اضافه كنند. تنظیم روز شروع هفته هم از بخش تنظیم زمان به این بخش منتقل شده. منطقه زماني نیز حالا دراين بخش تنظيم مي شه. تلاش هاي زيادي براي هوشمندانه‌تر كردن اين قابليت انجام شده. قبلا اگر منطقه زماني رو تنظيم كرديد، مجبور بوديد هر سال 2 بار (به علت جلو/عقب کشیده شدن ساعت) براي تنظيم مجدد اقدام كنيد. اما حالا به جاي ذخيره خود تفاوت زماني منطقه انتخاب شده با ساعت جهاني، دروپال 7 فقط نام منطقه زماني رو ذخيره ميكنه كه بعدا به كمك PHP 5.2+ DateTime objects به محاسبه اختلاف زماني صحيح براي آن منطقه مي پردازه با اين روش همه چيز به آساني و به صورت خودكار كار مي‌كند و هيچ نيازي به تنظيمات دستي نيست.

پشتيباني از زبان:

همانند ورژن‌های قبلی، براي اضافه كردن پشتيباني از زبان هاي مختلف به دروپال شما هنوز بايد ماژول Local رو فعال كنيد. در سطوح متفاوت هسته‌ي دروپال، قابليت پشتيباني از زبان‌هاي مختلف گنجانده شده و ماژول Local با اين فرض كه اگر شما به قابليت چند زبانه بودن نیاز دارید به يك رابط كاربري ترجمه شده هم نياز دارید، يك رابط كاربري در زبان مورد نظر براي همه‌ي تنظيمات پايه‌ی زبان فراهم مي كند. هنگامي كه ماژول Local رو فعال كرديد گزينه‌هاي Languages و Translate interface درقسمت Administration » Configuration » Regional and language پديدار می‌شود. نقش Language این است که زبان مورد نظر رو با اون تنظيم كنيد وتعيين كنيد در شرايط مختلف، دروپال چه زباني رو بايد انتخاب و استفاده كند. و نقش Translate Interface هم اين است كه ترجمه ي رابطه كاربري رو مديريت كنيد (توضيحات بيشتر در بخش 2 مقالات). اجازه بديد به تنظيمات زبان نگاهي بياندازيم. در نگاه اول به نظر مي‌آيد هيچ چيز از زمان دروپال 6 تغيير نكرده، شما هنوز مي تونيد هر تعداد زباني رو كه مي خواهيد فعال و تنظيم كنيد تا وب‌سايت شما از اون پشتيباني كند و يك زبان رو هم به عنوان پيش فرض انتخاب كنيد.( که انگليسي به عنوان پيش فرض از ابتدا انتخاب شده است) زبان‌ها مي‌توانند شامل تنظیمات نام‌هاي بومي،كد نام زبان، پیشوند مسیر و دامنه دلخواه رو داشته باشند.یک ليست حاوي زبان‌هاي پشتيباني شده وجود دارد که میتونید از طریق اون به سرعت زبان‌هاي جديد رو به وب‌سايت اضافه كنيد (همانند دروپال 6)

تغييرات عمده زير تب‌هاي Detection و Selection پنهان شده، در دروپال 6 يك ليست ثابت از تركيب انتخاب‌هایی که دروپال بر اساس آن تصمیم میگیرد از چه زبانی استفاده کند وجود دارد اما دروپال 7 كاملا اين بخش رو به حالت ماژول در آورده و كنترل بهتري روي تصميم‌گیری برای زبان استفاده شده ارائه ميدهد. شما مي‌‌تونيد ترتيب اولويت اين حالات رو هم تعيين كنيد.

زبان رابط كاربري مي تواند بر مبناي اطلاعات URL ( دامنه/مسير)، اطلاعات هر جلسه کاری کاربر، تنظيمات كاربر و يا تنظيمات مرورگر انتخاب شود يا به حالت پيش فرض در بيايد. ماژول هاي جامعه كاربري مي‌توانند اين قابليت رو گسترش بدهند و گزينه‌هاي ديگري را به اين ليست اضافه كنند. مي‌توان درباره ماژولي فكر كرد كه زبان رو بر مبناي IP كاربر و محل اقامت او تعيين كند ( همانند كاري كه گوگل انجام مي دهد).

تغییرات ترجمه‌ي رابط كاربري

اين تنظيمات هم در نگاه اول تغيير خاصي نداشته‌ ولي بهبودهايي در زمینه‌ی کارایی پيدا كرده است و بيشتر به صفحاتfilter و action شباهت پيدا كرده. ( مثل محتوا ، كاربران ، گزارش‌ها و... ) چندين فيلتر به بالاي صفحه برای پیدا کردن مورد دلخواه اضافه شده. دروپال 6 رابط كاربري ناكارايي رو ارائه مي داد كه نقايص اون بالاخره در ورژن جديد رفع شده.

ترجمه کلمات چند معنایی و مفهوم Context

بخش ترجمه ، قابليت زير كانه‌اي به دروپال اضافه کرده است که از مهمترین موارد مورد بحث ما محسوب می‌شود: پشتيباني از «ترجمه‌ی کلمات چندمعنایی» براي ترجمه متون. اين به چه معناست؟ به كلمه‌ي «شير» فكر كنيد . اين كلمه چه معنايي دارد؟ اسم است؟ فاعل است يا مفعول؟ اگر اسم است ،معني ثابتی دارد؟ جملات زير رو در نظر بگيريد :

  • يك پاكت شير بخر
  • شير آب رو بازكن
  • يك شير از باغ وحش فرار كرده

شايد دروپال نياز پيدا كند اين كلمه رو به زبانی دیگر ترجمه كند اما هيچ راهي نيست كه به دروپال گفت از كدام معني در يك موقعيت خاص استفاده كند. اما اكنون در دروپال 7 يك شيوه استاندارد براي ارائه اين قابليت وجود دارد :«گروه‌های کلمات چند معنایی»برای متن.

زمینه‌های متن دروپال به طور پيش فرض داراي دو گروه‌ کلمات چند معنایی هست: گروه "حالت فونت" که کلمات strong و long را در بر میگیرد و گروه "ماه" که شامل کلمه‌ی may -ماه پنجم میلادی- است. با تعیین گروه کلمه‌ی may میتوان به مترجم گفت از کدام معنی ("شاید" یا "ماه می")، استفاده کند. متاسفانه هنوز رهنمود خاصي براي مفهوم زمينه پيدا نكرديم چون هنوز در حال بررسي هستيم كه بهترين روش استفاده از اون چيست.یک‌سری ماژول‌هاي نوشته شده در جامعه كاربري به شيوه‌ي غير استانداردي شروع به استفاده از اين قابليت كرده‌اند. من پيش‌بيني مي‌كنم كه نام زمينه‌ها، با صحبت مترجمين و توسعه‌دهندگان تغيير پيدا كند. همانطور كه مثال نشان مي‌دهد، از زمينه‌ها براي ترجمه "بر مبناي ماژول" در متون نبايد استفاده شود بلكه ترجمه بايد بر اساس "معنا" صورت گيرد. مترجمين ميتوانند ليست همه‌ي زمينه‌هاي موجود كه توسط پروژه‌ استفاده مي‌شود رو در localize.drupal.org چك كنند (كه بعضي ازموارد واقعا مشكل دار هستند ومناسب نيستند).همه API هاي دروپال از زمينه‌ها پشتيباني نمي‌كنند . منوها ومتون استفاده شده در API های جاوااسكريپت، در حال حاضر در دروپال 7 از اين قابليت پشتيباني نمي‌كنند. حتي پشتيباني از ضميرها و كلماتي كه بصورت نوع جمع هستند (و نه مفرد) نيز اضافه نشده است.

بهترين شيوه استفاده از رابطه كاربري ترجمه شده توسط جامعه كاربران:

دروپال۷ همچنان برمبناي فرمت خيلي خوب Gettext.po ساخته شده ( كه متد نام برده‌ی ـ‌ زمينه ـ رو هم پشتيباني مي كند). خوب، این قسمت دروپال هم در سال‌های تغییراتی داشته، نه فقط در دروپال ۷ بلکه در تمامی ورژن‌ها. اما بیشترین تغییرات رو در حال حاضر خواهیم داشت برای اطلاعات بیشتر در مورد این تغییرات، به بخش ۲ مقالات مراجعه کنید بر گرفته از سری مقالات Gábor Hojtsy

دیدگاه جدیدی بگذارید

آخرین ارسال ها

محتواهای محبوب

درباره ما

Author
اینجا دروپال یعنی همه چیز. در مورد دروپال صحبت میکنیم. ماژول هامون رو به اشتراک میزاریم در مورد قالب دروپال ، فروشگاه دروپال، دروپال فارسی و تاریخ شمسی دروپال صحبت میکنیم و هرچیزی که در مورد طراحی سایت با دروپال میدونیم به هم انتقال میدیم. دروپالیون یک سایت شخصی نیست. ما دست همه کسانی که برای پیشرفت دروپال تلاش میکنند رو میفشاریم و با آغوش باز اونها رو در این سایت میپذیریم.

تماس با ما

با ما تماس بگیرید.

logo-samandehi