برگزیده های پرشین تولز

MT و تنظيم هاي فارسي

hasanagha

کاربر تازه وارد
تاریخ عضویت
19 سپتامبر 2003
نوشته‌ها
9
لایک‌ها
0
من MT رو روی یک Linux/Apache نسب كردم و PublishCharset رو هم برابر utf-8 قرار دادم ولي هروقت وبلاگ رو باز مي كنم بايد روي Internet Explorer هم utf-8 رو انتخاب کنم وگرنه مطالب بصورت علم قورباغه از آب در می آید.
آیا تنظیم های دیگری هم برای نگارش فارسی نیاز هست.
[/left]
 

aaber_piade

Registered User
تاریخ عضویت
19 دسامبر 2002
نوشته‌ها
1,660
لایک‌ها
25
سن
40
محل سکونت
Tehran
ممكنه توي قالب اصلي تغييري داده باشي كه ديگه تابع مقدار PublishCharset نيست.. الان توي ايندكس اصليت و توي ايندكس هاي ديگه توي head رو نگاه كن ببين
[code:1]<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> [/code:1]رو مي بيني توش يا نه؟ اگر به جاي utf-8 تگ MTPublishCharset هم باشه نبايد مشكلي باشه..
 

yehnafar

Registered User
تاریخ عضویت
24 ژانویه 2003
نوشته‌ها
209
لایک‌ها
0
محل سکونت
تهران
من هم دقيقا همين مشكلو دارم عابر جان. charset=utf-8 هم همينه تو صفحه وقتي سورس رو باز مي كنم....هر كار مي كنم حل نمي شه... كسي چيزي به ذهنش مي رسه؟
 

explorer5

کاربر تازه وارد
تاریخ عضویت
27 جولای 2003
نوشته‌ها
266
لایک‌ها
1
من يه همچين مشكلي رو دارم
اگه ميشه يكي از دوستان در اين مورد توضيح بده
 

aaber_piade

Registered User
تاریخ عضویت
19 دسامبر 2002
نوشته‌ها
1,660
لایک‌ها
25
سن
40
محل سکونت
Tehran
ادرس بده يه نگاهي بندازيم اين طوري كه نميشه.. راستي الان ديدم كه همون hasanagha خودموني.. كلي ذوق كردم.. بابا همه اينجا جمعن دم همه گرم.. يه ادرس بده كه صفحه رو ببينيم .. حالا يه سوال بيخود!! اونجا كه PublishCharset رو معلوم كردي تصادفا يادت نرفته كه # رو از پشتش برداري؟؟
 

hasanagha

کاربر تازه وارد
تاریخ عضویت
19 سپتامبر 2003
نوشته‌ها
9
لایک‌ها
0
آدرس ندارم متاسفانه چون توی یک نت پرایوت (Private IP) هست و پشت یک فایروال قرار داره امکان دست رسی از بیرون به این نت نیست.

درضمن من هم با
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
امتحان کردم و هم با MTPublishCharset ولی نتیجه یکی است.
من این MT رو روی یک Linux 7 سوار کرده بودم و هیچ مشکلی پیش نیامده بود بعد از اینکه لینوکس رو کردم 9 این مشکل بوجود آمده.
البته من upgrade نکردم ها
 

badjens

کاربر تازه وارد
تاریخ عضویت
20 دسامبر 2002
نوشته‌ها
318
لایک‌ها
0
محل سکونت
تهران
توي mt.cfg علامت # رو از جلوي خط PublishCharset utf-8 بر دار ممكنه از اين باشه ;) (از دسته اين مستطيها)
 

hasanagha

کاربر تازه وارد
تاریخ عضویت
19 سپتامبر 2003
نوشته‌ها
9
لایک‌ها
0
باور کنید این علامت # commenting رو هم برداشتم. هرچه به مغزم هم رسیده انجام دادم ولی باز این mt کرم می ریزد.
همانطوری که قبلا گفتم من همین Movable Type 2.63 را روی RedHat 7 سوار کرده ام و با همین پروسس هم انجام اش داده ام و همه چیز کار می کرده ولی گویا این RedHat 9 هست که کرم می ریزد.
 

yehnafar

Registered User
تاریخ عضویت
24 ژانویه 2003
نوشته‌ها
209
لایک‌ها
0
محل سکونت
تهران
توي mt.cfg علامت # رو از جلوي خط &nbsp;PublishCharset utf-8 بر دار ممكنه از اين باشه ;) (از دسته اين مستطيها)
نه مشكل اين نيست. من كه گفتم . حتي وقتي سورس مي گسرم از صفحه utfنشون می ده. ولی باید دستی دباره encode کنی تا کاراکتر ها را درست نشون بده. من که عقلم به جایی نرسیده...
 

aaber_piade

Registered User
تاریخ عضویت
19 دسامبر 2002
نوشته‌ها
1,660
لایک‌ها
25
سن
40
محل سکونت
Tehran
عجيب ميزنه.. من به linux وارد نيستم ولي بعيد مي دونم ارتقا ورژنش اين مشكل رو ايجاد كرده باشه! حالا يه چيزي: اين وسط ورژن پرل تغيير نكرده؟؟ تصادفا پايين نيومده؟ چون قديمي هاش مثل اينكه از يوني كد پشتيباني نمي كنه.. البته وقتي كه دستي روي utf-8 بذاري و درست نشون بده اينم نمي تونه باشه..

حالا يه چيز ديگه به ذهنم مياد كه شايد مورد هم yehnafar و هم hasanagha همين باشه.. متاسفانه پردازش شدن متا تگ ها محدود به بخش head نيست.. يعني اگر از دستمون در بره و علاوه بر داخل head جاي ديگه اي هم charset به كمك يك متا تگ معلوم شده باشه اون هم تاثير گذاره!!! در سورستون بگرديد به دنبال متا تگ هاي اضافي كه اشتباها ممكنه فرضا ته صفحه قرار گرفته باشه يا وسط صفحه و يا اصلا هرجايي از كد !!! و داره charset رو windows-1252 فرضا معرفي ميكنه!! و چون بعد از متا تگ اولي اومده يه جورايي اون رو override ميكنه و از كار ميندازه..
 

hasanagha

کاربر تازه وارد
تاریخ عضویت
19 سپتامبر 2003
نوشته‌ها
9
لایک‌ها
0
امروز یک تعداد پستهای قبلی که توی MT قبلی داشتم (همان MT که فارسی‌اش درست کار می‌کرد) را به MT جدیدی که فارسی‌اش درست کار نمی‌کند Import کردم چیزی را که متوجه شدم این بود که پستهای Import شده همه بصورت یونی‌کد نوشته شده‌اند درصورتی که پستهایی را که MT جدید Save می‌کند بصورت حروف فارسی Save می‌کند. بگمانم همین دلیل آن باشد که هر بار برای دیدن پستها باید Internet Explorer را بر روی utf-8 تنظیم کردتا بتوان فارسی دیدشان.


این هم یک نمونه از صفحه ادیتینگ توی MT:

Five Most Recent Entries

دیوید خان بکهم هم به چادر اسلامی ملبس شد 2003.09.20
&#1581;&#1605;&#1604;&#1607; &#1576;&#1607; &#1705;&#1606;&#1587;&#1608;&#1604;&#1711;&#1585;&#1740; &#1575;&#1740;&#1585;&#1575;&#1606; &#1583;&#1585; &#1575;&#1587;&#1604;&#1608; 2003.05.30
&#1581;&#1605;&#1604;&#1607; &#1570;&#1605;&#1585;&#1740;&#1705;&#1575; &#1576;&#1607; &#1575;&#1740;&#1585;&#1575;&#1606;! 2003.05.29
&#1570;&#1602;&#1575; &#1575;&#1711;&#1607; &#1583;&#1740;&#1711;&#1607; &#1606;&#1583;&#1740;&#1583;&#1740;&#1605;&#1578;&#1608;&#1606; &#1578;&#1602;&#1589;&#1740;&#1585; &#1576;&#1604;&#1575;&#1711;&#1585; &#1607;&#1587;&#1578; &#1606;&#1607; &#1605;&#1575;! 2003.05.29
&#1607;&#1588;&#1583;&#1575;&#1585;
 

aaber_piade

Registered User
تاریخ عضویت
19 دسامبر 2002
نوشته‌ها
1,660
لایک‌ها
25
سن
40
محل سکونت
Tehran
اين كه ميگي فارسي يعني چي؟ يعيني 1256 يا 1252 يا utf-8 يا .. ؟ فارسي رو متوجه نميشم!! ولي اگر من درست فهميده باشم پست هاي قديم در زمان ايمپورت يوني كدي ايمپورت ميشن و جديدي ها غير يونيكدي.. من هنوز شك دارم كه درست موفق شده باشي در mt.cfg تنظيمات charset رو اصلاح کنی.. یا اینکه یه جای کار میلنگه!! اگر خودت هم به اندازه من توی شک افتادی و حسش داری یه لحظه از دایرکتوری tmpl فایل edit_entry.tmpl رو ادیت کن و اینو به اولش اضافه کن:

[code:1]&#60;script&#62;

window.alert&#40;'&#60;TMPL_VAR NAME=LANGUAGE_ENCODING&#62;'&#41;

&#60;/script&#62;[/code:1]

و سعی کن یه پست بزنی و وارد ادیتور که میشی ببین اون الرتی که ظاهر میشه دقیقا چی رو نشون میده؟ اگر utf-8 نشون نده یعنی به هر دلیلی mt.cfg درست تنظیم نشده.. این کار رو بکن چون ارزشش داره.. حداقل جفتمون مطمئن میشیم که از اونجا نیست..
 

hasanagha

کاربر تازه وارد
تاریخ عضویت
19 سپتامبر 2003
نوشته‌ها
9
لایک‌ها
0
من اون آلرتی رو که داده بودی گذاشتم توی edit_entry.tmpl ولی هیچ آلرتی نداد حالا یا اینکه این تمپلیت توی وبلاگ استفاده نمی شه یا انکه من یک جای دیگه هم عیب داره

این دوتا پارامتری که روی فارسی تاثیر می گذاره رو دقیقآ همون شکلی که توی mt.cfg بوده برات کپی کردم که ببینی من چه جوری این دوتا پارامتر رو تنظیم کردم :

NoHTMLEntities 1

PublishCharset utf-8

درضمن Encoding اکسپلور هم زمانی که صفحه رو باز میکنم Western European ISO


درضمن اگه یکی توضیح میداد که این table های توی این متنی رو که شما مینویسید و Code رو توی اون قرار می دید چطور می نویسید ما هم بلد بشیم بد نیست چون HTLM کد ها رو این phpBB تبدیل میکنه به نوشته معمولی
 

aaber_piade

Registered User
تاریخ عضویت
19 دسامبر 2002
نوشته‌ها
1,660
لایک‌ها
25
سن
40
محل سکونت
Tehran
کل اون کد رو بنويس و همش رو select کن و بعد از بالاي اديتور روي دکمه code بزن البته در حالتي به درد ميخوره که از quick reply استفاده نکنه و براي ريپلاي زدن از دکمه پست استفاده کرده باشي اين جواب سوال دوم.. در مورد اولي راستش من ديگه فكر به جاي نمي رسه.. اي كاش احسان بياد كمك! يا بر و بچ ديگه ام تي كار بيان خودشونو نشون بدن.. يه پيشنهادي دارم كه نمي دونم فايده داره يا نه.. اون صفحه ايندكسي كه باز ميشه رو به عادي ترين حالت ممكن و بدون اينكه encodingش تغيير كنه ذخيره كن يه جايي و برام به ادرس
aaber_piade4000 [at] yahoo.co.uk ايميلش كن.. اون html رو اتچ كن به نامه توي خود نامه بذاري مي ترسم اوت لوك يا ياهو شيطوني كنه و با كد ور بره!!!
 

yehnafar

Registered User
تاریخ عضویت
24 ژانویه 2003
نوشته‌ها
209
لایک‌ها
0
محل سکونت
تهران
امروز یک تعداد پستهای قبلی که توی MT قبلی داشتم (همان MT که فارسی‌اش درست کار می‌کرد) را به MT جدیدی که فارسی‌اش درست کار نمی‌کند Import کردم چیزی را که متوجه شدم این بود که پستهای Import شده همه بصورت یونی‌کد نوشته شده‌اند درصورتی که پستهایی را که MT جدید Save &nbsp;می‌کند بصورت حروف فارسی Save می‌کند. بگمانم همین دلیل آن باشد که هر بار برای دیدن پستها باید Internet Explorer را بر روی utf-8 تنظیم کردتا بتوان فارسی دیدشان.

خوب
، خیلی جالبه! چون من هم دقیقا و البته به نوعی دیگر همین مشکل را دارم. اجازه بدهید که دقیقتر بگم:
من طراحی صفحه را با frontpage انجام دادم. در مرحله طراحی برای قسمت هایی که عنوان هایی «فارسی» داشتند، در پنجره normal فرانت پیج در آنجایی از صفحه که مورد نظرم بود عنوان مورد نظر را تایپ می کردم و وقتی به پنجره HTML رجوع می کردم ( به بیان دیگر وقتی از صفحه source می گرفتم) آن عناوین به کاراکتر های معادلش در unicode utf-8 تبدیل شده بودند.
حال مراحل زیر را مرور کنید تا به مشکل برسیم:
1. charset صفحه را مطابق با چیزی که در mt.cfg تعیین کرده بوم PublishCharset تعیین کردم یعنی utf-8. این کار به درستی صورت گرفته. «چون وقتی از صفحات تولید شده نهایی source می گرفتم در آن ها charset همان utf-8 نشان داده می شود.»
2. حال در Main Menu > Editing Menu > Create New Entry ( یعنی در MT) مطلب دلخواهم را به فارسی تایپ کردم و آن را post کردم.
3. حال که صفحه تولید شده توسط MT را می خواهم ببینم:
-تنها آن عناوینی که از قبل به شکل کاراکتر های معادلشان در unicode وارد کرده بودم درست دیده می شوند.
- encoding اکسپلورر Western Europian ISO است .
-charset صفحه ( با از دیدن source آن در منوی view source) ، البته utf-8 نشان داده می شود ( به بیان دیگر در سورس utf-8 نوشته شده) !
- با تنظیم دستی encoding به unicode-utf-8 تمام صفحه درست دیده می شود.

کسی چیزی به عقلش می رسه؟ من که کاملا گیج شدم...
 

yehnafar

Registered User
تاریخ عضویت
24 ژانویه 2003
نوشته‌ها
209
لایک‌ها
0
محل سکونت
تهران
دو تا نکته الان به ذهنم رسید:
1. وقتی از اون صفحه تولید شده توسط MT سورس می گیرم، اون مطلبی که به فارسی در MT تایپ کردم ، در سورس صفحه هم دقیقا به فارسی نشان داده می شه ( منظورم شبیه همین متنی است که الان دارید می خونید است)و نه مثلا با کاراکتر های معادل یونیکدی..
2. با این تفاصیلی که گفتم تمام چیز ها و تنضیمات مرتبه ( چون charset صفحه تولید شده utf-8 نشون داده می شه، مطالبی هم که post شده در سورس صفحهء تولید شده به حروف فارسی - یعنی به همون شکلی که تایپ شدند- نشون داده می شه ) فقط مشکل از encoding «اکسپلورر» است که زمان load شدن صفحه به طور پیش فرض با unicode utf-8 ست نمی شه و مثلا western europian یا چیز دیگه ای است.
اگر بتوان کاری کرد( مثلا با اضافه کردت یک meta tag یا ...) که هنگام load شده صفحه encoding « اکسپلورر» با unicode ست بشه دیگه همه چی حله!
چون در واقع «مطالب به unicode تولید شده». فقط اکسپلورر است که هنگام بالا آمدن صفحه با یک encoding دیگری، غیر از utf-8 به عنوان پیش فرض ، بالا می آد و مطالب صفحه را غیر قابل فارسی خوندن می کند و در نتیجه آدم را مجبور می کنه که به شکل دستی encoding «اکسپلورر» را به utf-8 تغییر بده.
 

hasanagha

کاربر تازه وارد
تاریخ عضویت
19 سپتامبر 2003
نوشته‌ها
9
لایک‌ها
0
من گمان میکنم همون طوری که قبلآ گفتم این بامبول رو آپاچی در میاره چونکه من امروز صبح اون نسخه قدیمی رو که روی Redhat 7 بود بدون دستکاری گذاشتم روی این سرور جدیده اون هم روی این سرور Redhat 9 درست کار نمی کنه و درضمن یک چیزایی رو هم توی توضیحات آپاچی پیدا کردم که میخوام تست کنم ببینم نتیجه میده یا نه.

درضمن من سعی کردم index رو بزارم توی این
<a href='http://home.c2i.net/hasanagha/index.html' target='_blank'>http://home.c2i.net/hasanagha/index.html</a>
آدرس ولی همین که سیو می کنم تبدیل می شه به فارسي گویا این بامبول رو فقط Apache داره در می آره

اين هم توضيحي که توي سايت آپاچي پيدا كردم Apache
<a href='http://httpd.apache.org/docs-2.0/mod/mod_mime.html#page-header' target='_blank'>http://httpd.apache.org/docs-2.0/mod/mod_m...tml#page-header</a>

Charset
To convey this further information, Apache optionally sends a Content-Language header, to specify the language that the document is in, and can append additional information onto the Content-Type header to indicate the particular character set that should be used to correctly render the information.

[code:1]Content-Language&#58; en, fr

Content-Type&#58; text/plain; charset=ISO-8859-1[/code:1]

[/url]
 

yehnafar

Registered User
تاریخ عضویت
24 ژانویه 2003
نوشته‌ها
209
لایک‌ها
0
محل سکونت
تهران
و یه چیز دیگه که شاید به حل مشکل کمکی کنه:
حتی اگر meta tag مربوط به charset را حذف کنیم باز هم همان اتفاق های قبلی می افتد!
یعنی با load شدن صفحه مطلب درست نشان داده نمی شود، encoding اکسپلورر همان western europian هست و با تنظیم دستی encoding به utf-8 همه چیز درست نشان داده می شود.
نتیجه: بود و نبود این meta tag یکیست و در نتیجه تغیری نداد! :
<meta http-equiv="Content-Type" content="text/html; charset=<$MTPublishCharset$>" />
 

yehnafar

Registered User
تاریخ عضویت
24 ژانویه 2003
نوشته‌ها
209
لایک‌ها
0
محل سکونت
تهران
شاید حق با حسن اقا باشه... چون من تقریبا هیچی از apache حالیم نیست . ولی این مشخصات local host منه:

Apache/2.0.46 (Win32) mod_perl/1.99_10-dev Perl/v5.8.0 PHP/4.3.2 mod_ssl/2.0.46 OpenSSL/0.9.7b
 
بالا