تالار گفتگوی پارسیلاتک
زیپرشین XePersian => باگهای نسخه ۱.۰.۴ => نويسنده: وحید دامنافشان در فوریه 02, 2010, 09:10:08 pm
-
یادمه قبلا آقا وفا توی گروه به یه باگ ظریف اشاره کردن و اون فاصله زیاد بین فرمولها تو محیط equation بود. البته خودشون یه راهحل پیشنهاد کردن؛ اما وقتی یه جمله فارسی رو قبل از محیط equation میاری، این خط و فرمول اولی، روی هم چاپ میشن. فایل ضمیمه رو ببینین.
-
تا جایی که یادم میآید گفته شد که اولاً این یک راهحل موقتی است و نباید به هیچ عنوان به عنوان یک راهحل دائمی به آن نگاه کرد ولی شما دارید چیز دیگری میگوئید که آشکارا صحت ندارد. بعداً هم گفته شد که این مقدار فاصله اجتنابناپذیر است و در نرمآفزارهای مشابه مانند فارسیتک نیز رفتار مشابهی وجود دارد.
-
تا جایی که یادم میآید گفته شد که اولاً این یک راهحل موقتی است و نباید به هیچ عنوان به عنوان یک راهحل دائمی به آن نگاه کرد ولی شما دارید چیز دیگری میگوئید که آشکارا صحت ندارد. بعداً هم گفته شد که این مقدار فاصله اجتنابناپذیر است و در نرمآفزارهای مشابه مانند فارسیتک نیز رفتار مشابهی وجود دارد.
از توضیحاتتون ممنون، ولی واقعاً هیچ راه حلی نداره؟ گاهی اوقات، فاصله خیلی زیاد میشه که بدجوری به چشم میآد.
-
مثال؟
-
مثال؟
ممنون از توجهتون
-
نمونه زیر و خروجی pdfاش رو نگاه کن.
-
نمونه زیر و خروجی pdfاش رو نگاه کن.
میدونم که کلاً، تک با محیط equation مشکل داره. یعنی این مشکل بدون فراخوانی زیپرشین هم وجود داره. مثلاً اینجا (http://texblog.net/latex-archive/maths/eqnarray-align-environment/) رو ببینین.
اما میخواستم ببینم آیا راهحل موقتی برای حل این مشکل فاصله وجود نداره؟
راستی چرا وقتی گزینه leqno رو برمیدارم، فاصله کم میشه؟
باز هم ممنون
-
اما میخواستم ببینم آیا راهحل موقتی برای حل این مشکل فاصله وجود نداره؟
راستی چرا وقتی گزینه leqno رو برمیدارم، فاصله کم میشه؟
باز هم ممنون
نه، کلاً راهحلهای موقتی به درد نمیخورند. متأسفانه این مشکلی است که باید داخل موتور تک تصحیح شود و با ماکرو قابل انجام نیست یا حداقل من بلد نیستم. الگوی TeX--XeT متأسفانه کنترلی برای display maths نداده است. این مشکل در تمام بستههای موجودی که فقط با ماکرو کار میکنند مثل زیپرشین، فارسیتک، عربی و غیره موجود است. تکپارسی این مشکل را ندارد چون در موتور تک هرگاه وارد display maths میشود آن را خودکار LTR میکند و بعد از اتمام آن نیز دوباره RTL میشود. Luatex هم کنترل بیشتری برای ریاضی میدهد و شما میتوانید RTL یا LTR ریاضی را حروفچینی کنید. خوب است این را هم بدانید که موقعی که کنوت الگوی TeX--XeT را برای حروفچینی راست به چپ درست کرد، بیشتر توجهش روی حروفچینی متن بوده است نه ریاضی.
کتاب تک توضیح مفصلی در مورد سؤال دوم شما داده است گزینهٔ leqno فاصله بیشتری بین فرمولها ایجاد میکند در حالی که با reqno میتوانید مقداری از این فاصله را ذخیره کنید. جالب است که American Mathematical Society بر این عقیده است که فضای بین فرمولها در حالت leqno زیباتر از reqno است و به همین خاطر در تمام کلاسهایشان، بصورت پیشفرض leqno فعال است. من هم شخصاً leqno را بیشتر از reqno دوست دارم.
-
بالاخره این باگ را درست کردم. فایلهای ضمیمه همان مثال خودت است که رفتار درست را نشان میدهد. باید بسته bidi را از
http://bitbucket.org/vafa/bidi/
دانلود کنی. اگر مشکلی دیگری نباشد بسته را چند روز دیگر به CTAN میدهم.
-
بالاخره این باگ را درست کردم. فایلهای ضمیمه همان مثال خودت است که رفتار درست را نشان میدهد. باید بسته bidi را از
http://bitbucket.org/vafa/bidi/
دانلود کنی. اگر مشکلی دیگری نباشد بسته را چند روز دیگر به CTAN میدهم.
ممنون، تست میکنم.
-
ممنون، تست میکنم.
ممنون
-
اگر مشکلی دیگری نباشد
خیلی ممنون به خاطر رفع این مشکل. اما به نظر شما، در همون فایل پی دی اف خودتون، فاصله بین خط فارسی اول با فرمول شماره ۱، یه مقدار کم نیست؟
-
بله حق با شماست. این تقصیر من نیست.
اگر یادتون باشه قبلاً گفته بودم که این مشکل با ماکرو قابل حلشدن نیست، یکی دو روز پیش متوجه شدم که دستور primitiveی در etex وجود دارد به نام \predisplaydirection که جهت شماره فرمول را عوض میکند. مشکلی که به آن اشاره کردید باگ موتور etex هست و باید داخل موتور حل بشه. من به مؤلف etex ایمیل زدم و ازش خواستم تا درستش کنه. اما حالا هم این حالت قشنگتر از حالت قبل هست ولی اگر مؤلف etex این باگ را درست کنه، این مشکل هم حل میشه. درست کردن این با ماکرو صورت خوشی نخواهد داشت.
-
اگر خواستی این را دستی درست کنی (البته موقت است چون باید مؤلف etex آن را اساسی درست کنه)، کافیه بعد از خط اول متن بنویسی مثلاً
\abovedisplayshortskip=10pt یا هر مقدار دیگری که به نظرت مناسبه.