تالار گفتگوی پارسی‌لاتک

زی‌پرشین XePersian => باگ‌های نسخه ۱.۰.۴ => نويسنده: وحید دامن‌افشان در فوریه 02, 2010, 09:10:08 pm

عنوان: مشکل با فاصله زیاد بین فرمول‌ها در محیط equation
رسال شده توسط: وحید دامن‌افشان در فوریه 02, 2010, 09:10:08 pm
یادمه قبلا آقا وفا توی گروه به یه باگ ظریف اشاره کردن و اون فاصله زیاد بین فرمول‌ها تو محیط equation بود. البته خودشون یه راه‌حل پیشنهاد کردن؛ اما وقتی یه جمله فارسی رو قبل از محیط equation میاری، این خط و فرمول اولی، روی هم چاپ می‌شن. فایل ضمیمه رو ببینین.
عنوان: پاسخ : مشکل با فاصله زیاد بین فرمول‌ها در محیط equation
رسال شده توسط: vafa در فوریه 09, 2010, 01:25:05 pm
تا جایی که یادم می‌آید گفته شد که اولاً این یک راه‌حل موقتی است و نباید به هیچ عنوان به عنوان یک راه‌حل دائمی به آن نگاه کرد ولی شما دارید چیز دیگری می‌گوئید که آشکارا صحت ندارد. بعداً هم گفته شد که این مقدار فاصله اجتناب‌‌ناپذیر است و در نرم‌آفزارهای مشابه مانند فارسی‌تک نیز رفتار مشابهی وجود دارد.
عنوان: پاسخ : مشکل با فاصله زیاد بین فرمول‌ها در محیط equation
رسال شده توسط: وحید دامن‌افشان در فوریه 09, 2010, 08:39:47 pm
تا جایی که یادم می‌آید گفته شد که اولاً این یک راه‌حل موقتی است و نباید به هیچ عنوان به عنوان یک راه‌حل دائمی به آن نگاه کرد ولی شما دارید چیز دیگری می‌گوئید که آشکارا صحت ندارد. بعداً هم گفته شد که این مقدار فاصله اجتناب‌‌ناپذیر است و در نرم‌آفزارهای مشابه مانند فارسی‌تک نیز رفتار مشابهی وجود دارد.
از توضیحاتتون ممنون، ولی واقعاً هیچ راه حلی نداره؟ گاهی اوقات، فاصله خیلی زیاد می‌شه که بدجوری به چشم می‌آد.
عنوان: پاسخ : مشکل با فاصله زیاد بین فرمول‌ها در محیط equation
رسال شده توسط: vafa در فوریه 10, 2010, 04:25:33 am
مثال؟
عنوان: پاسخ : مشکل با فاصله زیاد بین فرمول‌ها در محیط equation
رسال شده توسط: وحید دامن‌افشان در فوریه 10, 2010, 09:34:37 pm
مثال؟
ممنون از توجه‌تون
عنوان: پاسخ : مشکل با فاصله زیاد بین فرمول‌ها در محیط equation
رسال شده توسط: vafa در فوریه 11, 2010, 05:03:01 am
نمونه زیر و خروجی pdfاش رو نگاه کن.
عنوان: پاسخ : مشکل با فاصله زیاد بین فرمول‌ها در محیط equation
رسال شده توسط: وحید دامن‌افشان در فوریه 11, 2010, 01:52:06 pm
نمونه زیر و خروجی pdfاش رو نگاه کن.
می‌دونم که کلاً، تک با محیط equation مشکل داره. یعنی این مشکل بدون فراخوانی زی‌پرشین هم وجود داره. مثلاً اینجا (http://texblog.net/latex-archive/maths/eqnarray-align-environment/) رو ببینین.
اما می‌خواستم ببینم آیا راه‌حل موقتی برای حل این مشکل فاصله وجود نداره؟
راستی چرا وقتی گزینه leqno رو برمی‌دارم، فاصله کم می‌شه؟
باز هم ممنون
عنوان: پاسخ : مشکل با فاصله زیاد بین فرمول‌ها در محیط equation
رسال شده توسط: vafa در فوریه 11, 2010, 02:11:15 pm
اما می‌خواستم ببینم آیا راه‌حل موقتی برای حل این مشکل فاصله وجود نداره؟
راستی چرا وقتی گزینه leqno رو برمی‌دارم، فاصله کم می‌شه؟
باز هم ممنون
نه، کلاً راه‌حلهای موقتی به درد نمی‌خورند. متأسفانه این مشکلی است که باید داخل موتور تک تصحیح شود و با ماکرو قابل انجام نیست یا حداقل من بلد نیستم. الگوی TeX--XeT متأسفانه کنترلی برای display maths نداده است. این مشکل در تمام بسته‌های موجودی که فقط با ماکرو کار می‌کنند مثل زی‌پرشین، فارسی‌تک، عربی و غیره موجود است. تک‌پارسی این مشکل را ندارد چون در موتور تک هرگاه وارد display maths می‌شود آن را خودکار LTR می‌کند و بعد از اتمام آن نیز دوباره RTL می‌شود. Luatex هم کنترل بیشتری برای ریاضی می‌دهد و شما می‌توانید RTL یا LTR ریاضی را حروف‌چینی کنید. خوب است این را هم بدانید که موقعی که کنوت الگوی TeX--XeT را برای حروف‌چینی راست به چپ درست کرد، بیشتر توجهش روی حروف‌چینی متن بوده است نه ریاضی.

کتاب تک توضیح مفصلی در مورد سؤال دوم شما داده است گزینهٔ leqno فاصله بیشتری بین فرمولها ایجاد می‌کند در حالی که با reqno می‌توانید مقداری از این فاصله را ذخیره کنید. جالب است که American Mathematical Society بر این عقیده است که فضای بین فرمولها در حالت leqno زیباتر از reqno است و به همین خاطر در تمام کلاسهایشان، بصورت پیش‌فرض leqno فعال است. من هم شخصاً leqno را بیشتر از reqno دوست دارم.
عنوان: پاسخ : مشکل با فاصله زیاد بین فرمول‌ها در محیط equation
رسال شده توسط: vafa در آوریل 05, 2010, 10:01:14 pm
بالاخره این باگ را درست کردم. فایلهای ضمیمه همان مثال خودت است که رفتار درست را نشان می‌دهد. باید بسته bidi را از

http://bitbucket.org/vafa/bidi/

دانلود کنی. اگر مشکلی دیگری نباشد بسته را چند روز دیگر به CTAN می‌دهم.
عنوان: پاسخ : مشکل با فاصله زیاد بین فرمول‌ها در محیط equation
رسال شده توسط: وحید دامن‌افشان در آوریل 06, 2010, 09:35:27 am
بالاخره این باگ را درست کردم. فایلهای ضمیمه همان مثال خودت است که رفتار درست را نشان می‌دهد. باید بسته bidi را از

http://bitbucket.org/vafa/bidi/

دانلود کنی. اگر مشکلی دیگری نباشد بسته را چند روز دیگر به CTAN می‌دهم.
ممنون، تست می‌کنم.
عنوان: پاسخ : مشکل با فاصله زیاد بین فرمول‌ها در محیط equation
رسال شده توسط: vafa در آوریل 06, 2010, 10:45:34 am
ممنون، تست می‌کنم.
ممنون
عنوان: پاسخ : مشکل با فاصله زیاد بین فرمول‌ها در محیط equation
رسال شده توسط: وحید دامن‌افشان در آوریل 07, 2010, 07:45:02 pm
اگر مشکلی دیگری نباشد
خیلی ممنون به خاطر رفع این مشکل. اما به نظر شما، در همون فایل پی دی اف خودتون، فاصله بین خط فارسی اول با فرمول شماره ۱، یه مقدار کم نیست؟
عنوان: پاسخ : مشکل با فاصله زیاد بین فرمول‌ها در محیط equation
رسال شده توسط: vafa در آوریل 07, 2010, 07:52:21 pm
بله حق با شماست. این تقصیر من نیست.

اگر یادتون باشه قبلاً گفته بودم که این مشکل با ماکرو قابل حل‌شدن نیست،  یکی دو روز پیش متوجه شدم که دستور primitiveی در etex وجود دارد به نام \predisplaydirection که جهت شماره فرمول را عوض می‌کند. مشکلی که به آن اشاره کردید باگ موتور etex هست و باید داخل موتور حل بشه. من به مؤلف etex ایمیل زدم و ازش خواستم تا درستش کنه. اما حالا هم این حالت قشنگتر از حالت قبل هست ولی اگر مؤلف etex این باگ را درست کنه، این مشکل هم حل می‌‌‌شه. درست کردن این با ماکرو صورت خوشی نخواهد داشت.
عنوان: پاسخ : مشکل با فاصله زیاد بین فرمول‌ها در محیط equation
رسال شده توسط: vafa در آوریل 07, 2010, 07:55:32 pm
اگر خواستی این را دستی درست کنی (البته موقت است چون باید مؤلف etex آن را اساسی درست کنه)، کافیه بعد از خط اول متن بنویسی مثلاً
\abovedisplayshortskip=10pt یا هر مقدار دیگری که به نظرت مناسبه.