تالار گفتگوی پارسیلاتک
لاتک LATEX => طراحی صفحه => نويسنده: bahare60 در اوت 20, 2014, 08:08:46 am
-
با سلام. چطور می تونم یه واژه نامه دو ستونه فارسی یه انگلیسی داشته باشه؟ اغلب نمونه هایی که دانلود کردم این طور نبود . بعد اینکه نمی دونم چطور ترتیب حروف در واژه نامه میاد و اینکه به فرض مثال حرف " الف " یا " ب " و ... رو کجای فرمان بنویسم .
با تشکر
-
باسلام
لطفا صفحه زیر را مشاهده کنید.
راهنمای ایجاد واژهنامه (http://www.parsilatex.com/mediawiki/index.php?title=%D8%B1%D8%A7%D9%87%D9%86%D9%85%D8%A7%DB%8C_%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%D9%88%D8%A7%DA%98%D9%87%E2%80%8C%D9%86%D8%A7%D9%85%D9%87)
-
دستورات واژه نامه رو اضافه کردم به پایان نامه ولی بسته glossentry شناسایی نشده.
-
با سلام
نکته اول: شما از دو خط زیر تنها یک خط را قرار داده اید، حتی اگر میخواهید یک واژه نامه چاپ شود، هر دو را قرار دهید.
\newglossary[glg]{english}{gls}{glo}{واژهنامه انگلیسی به فارسی}
\newglossary[blg]{persian}{bls}{blo}{واژهنامه فارسی به انگلیسی}
نکته دوم: در متن اختصارات CDMA و BAN استفاده شده است، اما اصلا تعریف نشده است، شما فراموش کرده اید قبل از \begin{document} بنویسید.
\newacronym{BAN}{BAN}{Body Area Network}
\newacronym{CDMA}{CDMA}{Code Division Multiplexing Access}
نکته سوم: در روشی که در ویکی بیان شده است، شما وقتی یک واژهای مثل
\newword{Action}{Action}
{کنش}{کنشها}
را تعریف میکنید، برای اینکه حالت مفرد واژه چاپ شود باید بنویسید
\gls{Action}
و برای اینکه حالت جمع چاپ شود باید بنویسید.
\glspl{Action}
نکته چهارم: شما با قرار دادن دستور printabbreviation میخواهید که فهرست اختصارات چاپ شود، پس همان طور که در نکات قبلی گفته شد، ابتدا آنها را باید تعریف کنید، سپس آنها را در متن استفاده کنید. اما کدهای مربوط به اختصارات را کامل وارد نکرده اید.
\newglossarystyle{myAbbrlist}{%
\renewenvironment{theglossary}{}{}
\renewcommand*{\glsgroupskip}{\vskip 10mm}
\renewcommand*{\glsgroupheading}[1]{\begin{LTR} \subsection*{\glsgetgrouptitle{##1}} \end{LTR}}
\renewcommand*{\glossentry}[2]{\noindent\Glsentrylong{##1}\dotfill\space \glsentrytext{##1}
}
\renewcommand*{\acronymname}{فهرست اختصارات}
}
و
\newcommand{\printacronyms}{
\cleardoublepage
\setglossarystyle{myAbbrlist}
\Oldprintglossary[type=acronym]
}%
\newcommand{\printabbreviation}{\printacronyms}
را وارد نکردید.
نکته پنجم: برای ظاهر شدن واژه نامه و فهرست اختصارات باید دنباله کامپایل زیر انجام شود.
Compile
xindy -L persian-variant1 -C utf8 -I xindy -M %.xdy -t %.glg -o %.gls %.glo
xindy -L persian-variant1 -C utf8 -I xindy -M %.xdy -t %.blg -o %.bls %.blo
xindy -L english -C utf8 -I xindy -M %.xdy -t %.alg -o %.acr %.acn
compile
compile
را انجام دهید که همان طور که در همان صفحه ویکی گفته شده است، میتوانید مثلا اگر از texstudio استفاده میکنید به منوی configure رفته و از آن جا از قسمت build در بخش user command یک دستور مثلا به نام total و به صورت زیر تعریف کنید.
xindy -L persian-variant1 -C utf8 -I xindy -M %.xdy -t %.glg -o %.gls %.glo | xindy -L persian-variant1 -C utf8 -I xindy -M %.xdy -t %.blg -o %.bls %.blo | xindy -L english -C utf8 -I xindy -M %.xdy -t %.alg -o %.acr %.acn
و کافی است برای اجرا یک بار کامپایل کنید بعد از منوی tools قسمت user دستور total را اجرا کنید سپس دوبار کامپایل.
نکته ششم: شما باید فایل اتچ شده را به ترتیبی که در نکته قبل گفته شد، با موفقیت کامپایل کنید و واژگان را مشاهده کنید، اگر در هر صورتی با خطا مواجه میشوید به احتمال زیاد این خطا برای بروز نبودن بستههای Texlive شما است
باتشکر
-
نمی دونم چرا هر کار میکنم نمی تونم واژه نامه رو اضافه کنم. Tex Live رو هم نصب کردم . ارروری که قسمت فایل Log میده اینه :
No file main.bls.
-
فایل Log
-
فایل log مشکلی نداره. شما برای گرفتن واژهنامه باید xindy را هم اجرا کنی. نکته پنجم آقای دیانت رو باید انجام بدی.
-
این کارو انجام داده بودم شاید قسمت فرمان رو اشتباه وارد کردم توی عکس ببینید ???
-
متأسفانه من سررشتهای از ویرایشگر و تنظیماتش ندارم بنابراین نمیتونم کمکی کنم. باید منتظر جواب افرادی که با texstudion آشنا هستند، باشید.
-
با سلام
می توانید آن فرمانی را که وارد کرده اید پست کنید؟
-
متوجه اشکالم شدم ::)
فرمان درست بود ولی <unknown> رو پاک نکرده بودم .
باتشکر