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

عمومی => انجمن تازه‌کاران => نويسنده: فرشاد ترابی در اكتبر 22, 2012, 11:13:51 pm

عنوان: چرا در ماکرو نویسی، علائم @ در دستورها قرار می‌گیرد؟
رسال شده توسط: فرشاد ترابی در اكتبر 22, 2012, 11:13:51 pm
چرا در ماکرو نویسی علائم @  در دستورها قرار میگیره. مثلاً اگر در دستوری که  جنابعالی در این پست (http://www.parsilatex.com/forum/SMF/index.php?topic=3481.msg19051#msg19051) ارائه دادید
به جای \@tartibi از \tartibi استفاده شه چه مشکلی پیش میاد؟
عنوان: پاسخ : چرا در ماکرو نویسی، علائم @ در دستورها قرار می‌گیرد؟
رسال شده توسط: vafa در اكتبر 23, 2012, 02:18:43 am

چرا در ماکرو نویسی علائم @  در دستورها قرار میگیره.
دستوراتی که @دارند دستورات داخلی هستند و برای برنامه‌نویسی به کار می‌روند و این دستورات، دستورات کاربر نیست.
نقل قول
مثلاً اگر در دستوری که  جنابعالی ارائه دادید
به جای \@tartibi از \tartibi استفاده شه چه مشکلی پیش میاد؟
اگر شما گفته‌اید:
\tartibi{chapter}
و آقای دامن‌افشان گفته باشند:
\@tartibi\c@chapter
هیچ تفاوتی وجود ندارد و هر دو معادل هم هستند. اگر فایل xepersian.sty را نگاه کنید، دستور \tartibi اینگونه تعریف شده:
\newcommand{\tartibi}[1]{%
\expandafter\@tartibi\csname c@#1\endcsname%
}
پس در واقع وقتی می‌نویسید:
\tartibi{chapter}
به:
\@tartibi\c@chapter
ترجمه می‌شود.
عنوان: پاسخ : چرا در ماکرو نویسی، علائم @ در دستورها قرار می‌گیرد؟
رسال شده توسط: وحید دامن‌افشان در اكتبر 24, 2012, 12:36:40 am
چرا در ماکرو نویسی علائم @  در دستورها قرار میگیره؟
ضمن‎ تشکر از آقا وفا به خاطر توضیحات خوب‌شون، توضیحات بیشتر رو می‌تونین در:
۱- صفحه ۱۴۰ کتاب LaTeX Notes نوشته J. Kenneth Shultis
۲- پاراگراف سوم صفحه ۸۴۳ ویرایش دوم کتاب ‎The‎ LaTeX Companion
۳- این پست (http://tex.stackexchange.com/q/6240/885) از سایت http://tex.stackexchange.com/
پیدا کنین.