لاتک LATEX > طراحی صفحه
دستور واژه نامه دو ستونی فارسی به انگلیسی
bahare60:
با سلام. چطور می تونم یه واژه نامه دو ستونه فارسی یه انگلیسی داشته باشه؟ اغلب نمونه هایی که دانلود کردم این طور نبود . بعد اینکه نمی دونم چطور ترتیب حروف در واژه نامه میاد و اینکه به فرض مثال حرف " الف " یا " ب " و ... رو کجای فرمان بنویسم .
با تشکر
ابوالفضل دیانت:
باسلام
لطفا صفحه زیر را مشاهده کنید.
راهنمای ایجاد واژهنامه
bahare60:
دستورات واژه نامه رو اضافه کردم به پایان نامه ولی بسته glossentry شناسایی نشده.
ابوالفضل دیانت:
با سلام
نکته اول: شما از دو خط زیر تنها یک خط را قرار داده اید، حتی اگر میخواهید یک واژه نامه چاپ شود، هر دو را قرار دهید.
--- کد: ---\newglossary[glg]{english}{gls}{glo}{واژهنامه انگلیسی به فارسی}
\newglossary[blg]{persian}{bls}{blo}{واژهنامه فارسی به انگلیسی}
--- End code ---
نکته دوم: در متن اختصارات CDMA و BAN استفاده شده است، اما اصلا تعریف نشده است، شما فراموش کرده اید قبل از \begin{document} بنویسید.
--- کد: ---\newacronym{BAN}{BAN}{Body Area Network}
\newacronym{CDMA}{CDMA}{Code Division Multiplexing Access}
--- End code ---
نکته سوم: در روشی که در ویکی بیان شده است، شما وقتی یک واژهای مثل
--- کد: ---\newword{Action}{Action}
{کنش}{کنشها}
--- End code ---
را تعریف میکنید، برای اینکه حالت مفرد واژه چاپ شود باید بنویسید
--- کد: ---\gls{Action}
--- End code ---
و برای اینکه حالت جمع چاپ شود باید بنویسید.
--- کد: ---\glspl{Action}
--- End code ---
نکته چهارم: شما با قرار دادن دستور 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}{فهرست اختصارات}
}
--- End code ---
و
--- کد: ---\newcommand{\printacronyms}{
\cleardoublepage
\setglossarystyle{myAbbrlist}
\Oldprintglossary[type=acronym]
}%
\newcommand{\printabbreviation}{\printacronyms}
--- End code ---
را وارد نکردید.
نکته پنجم: برای ظاهر شدن واژه نامه و فهرست اختصارات باید دنباله کامپایل زیر انجام شود.
--- کد: ---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
--- End code ---
را انجام دهید که همان طور که در همان صفحه ویکی گفته شده است، میتوانید مثلا اگر از 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
--- End code ---
و کافی است برای اجرا یک بار کامپایل کنید بعد از منوی tools قسمت user دستور total را اجرا کنید سپس دوبار کامپایل.
نکته ششم: شما باید فایل اتچ شده را به ترتیبی که در نکته قبل گفته شد، با موفقیت کامپایل کنید و واژگان را مشاهده کنید، اگر در هر صورتی با خطا مواجه میشوید به احتمال زیاد این خطا برای بروز نبودن بستههای Texlive شما است
باتشکر
bahare60:
نمی دونم چرا هر کار میکنم نمی تونم واژه نامه رو اضافه کنم. Tex Live رو هم نصب کردم . ارروری که قسمت فایل Log میده اینه :
--- کد: ---No file main.bls.
--- End code ---
کنترل
[0] صندوق پستی
[#] صفحه بعدی
Go to full version