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

لاتک LATEX => عمومی => نويسنده: مهدی امیدعلی در فوریه 14, 2010, 08:36:11 pm

عنوان: تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: مهدی امیدعلی در فوریه 14, 2010, 08:36:11 pm
با استفاده از بستهٔ glossaries می‌توانید واژه‌نامه به فرم‌های متلف بسازید. به مثال پیوست توجه کنید.
مثال به‌روز شد و با استفاده از xindy واژه‌نامه به صورت درست مرتب شده است.
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: وحید دامن‌افشان در فوریه 14, 2010, 08:47:05 pm
با استفاده از بستهٔ glossaries می‌توانید واژه‌نامه به فرم‌های متلف بسازید. به مثال پیوست توجه کنید.
آقای دکتر،
واژه‌ها که مرتب نیستن.
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: مهدی امیدعلی در فوریه 14, 2010, 10:12:40 pm
آقای دکتر،
واژه‌ها که مرتب نیستن.
این همان مشکل makeindex است. دارم سعی می‌کنم زبان فارسی رو به طور رسمی در xindy وارد کنم تا این مشکلات برطرف بشوند.
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: sheperson در مارس 28, 2010, 02:20:21 pm
این همان مشکل makeindex است. دارم سعی می‌کنم زبان فارسی رو به طور رسمی در xindy وارد کنم تا این مشکلات برطرف بشوند.
سلام.
مشکل مرتب کردن حل شده یا نه؟
من میخوام تو لاتک واژه نامه بنویسم ولی حرف گ و پ رو  بعد از همه حرفها قرار میده. :'(
یه مثال رو پیوست کردم.
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: مهدی امیدعلی در مارس 29, 2010, 12:36:00 am
سلام.
مشکل مرتب کردن حل شده یا نه؟
من میخوام تو لاتک واژه نامه بنویسم ولی حرف گ و پ رو  بعد از همه حرفها قرار میده. :'(
یه مثال رو پیوست کردم.
بله از xindy استفاده کنید
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: sheperson در مارس 29, 2010, 02:34:07 am
بله از xindy استفاده کنید
سلام.
ممنون از پاسختون.
فقط اگه میشه راهنمایی کنید که چطور از xindy استفاده کنم (آخه من تازه کارم). :-[
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: مهدی امیدعلی در مارس 29, 2010, 12:13:31 pm
سلام.
ممنون از پاسختون.
فقط اگه میشه راهنمایی کنید که چطور از xindy استفاده کنم (آخه من تازه کارم). :-[
به انجمن xindy مراجعه کنید.
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: محمد چهارسوقی در آوریل 07, 2010, 05:20:17 pm
آیا می‌توان کاری کردم که علاوه بر اینکه واژه نامه بر اساس حروف الفبای فارسی مرتب شود یک دور هم بر اساس حروف الفبای انگلیسی مرتب شود؟ یعنی هر دو را داشته باشیم. یکی اسمش باشه واژه نامه فارسی و دیگری واژه نامه انگلیسی.

اصلاً آیا هنگامی که یک نوشتار فارسی می‌نویسیم این کار معقول است؟
ممنون
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: محمد چهارسوقی در آوریل 08, 2010, 03:40:02 pm
من داشتم با استفاده از مطالب مفیدی که دوستان در مورد واژه نامه قرار داده بودند برای خودم واژه نامه درست می کردم که چند سوال برایم پیش آمد:

۱. آیا درست فهمیدم که برای اجرای واژه نامه باید دستور makeglossaries filename را در یک ترمینال اجرا کرد؟
۲. من ارتباط بین makeindex و یا xindy را با glossaries متوجه نشدم. چون اینجور که فهمیدم اگر آنها را اجرا نکنیم و همان دستور سوال ۱ را در ترمینال بزنیم کافی است.
۳. آیا دستور makeglossaries احتیاج به perl دارد؟ از کجا می‌توان فهمید که الان پرل بر روی دستگاه نصب است؟ من سیستم عاملم ویندوز ۷ است.
۴. یعنی آیا اگر کسی خواست برای خود واژه نامه درست کند باید چیزی جز میکتک و تکمیکر و فونت را بر روی سیستم خود نصب کند؟

ممنون
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: محمد چهارسوقی در آوریل 08, 2010, 04:38:56 pm
شاید جواب یکی دو سوالم را پیدا کرده باشم (اگر اشتباه بودند دوستان راهنمایی کنند) اما یک مشکل اساسی دیگر برایم پیدا شده است.

جواب ۱: یک راه تولید نمایه این است. دو راه دیگر نیز وجود دارد که یکی استفاده تنها از makeindex و دیگری استفاده تنها از xindy است. بهتر است که از xindy استفاده شود چون در غیر این صورت حروف گ چ پ ژ ی ک در جای خود به درستی نمایش داده نخواهند شد.

جواب ۴: این طور که به نظر می رسد اگر برای تولید واژه نامه تنها می ‌خواهید از xindy و یا از makeindex استفاده کنید احتیاج به نصب چیز اضافه‌ای نیست. البته در سیستم من  makeglossearies نیز اجرا شد اما من نمی‌دانم که قبلا perl جداگانه نصب کرده‌ام یا نه.

راستی یادم رفت بگویم وقتی می‌خواهید از دستور xindy استفاده کنید، لازم است که در ابتدای نوشتار بسته glossaries را به صورت زیر فراخوانی کنید

\usepackage[xindy]{glossaries}

 سپس بعد از اجرای دستور xelatex بر روی فایل خود دستور زیر را در ترمینال اجرا کنید و یا آنرا به دستورات کاربر در تکمیکر اضافه کنید.

xindy -L <Language> -C <encoding> -I xindy -M <style> -t <base>.glg -o <base>.gls <base>.glo

در فرمان بالا <style> نام فایل استایل xindy است که دارای پسوند .xdy می‌باشد. در حالت کلی همان اسم فایل شما خواهد بود.
<base> ها هم همینطور در حالت کلی همان اسم فایل شما خواهند بود.

و در نهایت دوباره فایل اصلی را با دستور xelatex کامپایل کنید (در بعضی موارد شاید لازم باشد که دوبار این کار صورت گیرد).

---------------------------------------------------------------

و اما مشکل اساسی من:

مشکل اساسی ۱: فایل tex من در شاخه زیر قرار داشت:

D:\My Works\PhD Thesis\IASBS Thesis Style in Xepersian

وقتی دستور زیر را در ترمینال اجرا می کردم

xindy -L persian -C utf8 -I xindy -M iasbs_thesis_sample -t iasbs_thesis_sample.glg -o iasbs_thesis_sample.gls iasbs_thesis_sample.glo

با خطای زیر مواجه می‌شدم:

iasbs_thesis_sample.gls doesn't exist at c:/progra~2/xindy/scripts/xindy/xindy.pl line 458

اما اگر همین فایل ها را به آدرس زیر انتقال دهم و نام فایل را به text.tex تغییر دهم
D:\test\
و از دستور زیر استفاده کنم

xindy -L persian -C utf8 -I xindy -M test -t test.glg -o test.gls test.glo
برنامه به خوبی اجرا می شود و خروجی می دهد و هیچ مشکلی ندارد و جای حروف پ ژ گ چ ی ک هم درست است.

به نظر شما اشکال از کجاست؟ آیا راه حلی دارد؟

ممنون

عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: وحید دامن‌افشان در آوریل 09, 2010, 12:18:23 am
به نظر شما اشکال از کجاست؟ آیا راه حلی دارد؟
به نظرم مشکل از فاصله‌های بین آدرس فایل تکتون هستش (آدرس اولی).
راستی می‌شه ازتون خواهش کنم یه نمونه از واژه‌نامه‌ای رو که درست کردین، اینجا بذارین تا بقیه هم بتونن استفاده کنن (البته همراه با فایل تکش)؟
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: محمد چهارسوقی در آوریل 17, 2010, 03:26:06 pm
سلام
من یک متن مختصری را در مورد نحوه‌ی نوشتن واژه نامه در سند‌های زی‌پرشین نوشتم که خیلی ساده و ابتدایی است اما ممکن است به کار بعضی از دوستان بیاید.
تصمیم دارم که در آینده به مرور زمان این متن را کامل کنم برای همین تاریخ نوشتن فایل را در نام فایل آورده‌ام.

ممنون
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: مهدی امیدعلی در آوریل 17, 2010, 05:51:17 pm
سلام
من یک متن مختصری را در مورد نحوه‌ی نوشتن واژه نامه در سند‌های زی‌پرشین نوشتم که خیلی ساده و ابتدایی است اما ممکن است به کار بعضی از دوستان بیاید.
تصمیم دارم که در آینده به مرور زمان این متن را کامل کنم برای همین تاریخ نوشتن فایل را در نام فایل آورده‌ام.

ممنون
خیلی عالیه لطفا ادامه دهید. در مورد perl توجه داشته باشید که توسط xindy به طور خودکار نصب می‌شود.
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: وحید دامن‌افشان در آوریل 27, 2010, 07:09:14 pm
اما ممکن است به کار بعضی از دوستان بیاید.
محمد جان بابت این فایلت ممنون. فقط ۲ تا سوال داشتم:
۱- بالای صفحه ۵ راهنمای بسته گلوساری ورژن ۲۰ جولای ۲۰۰۶ نوشته شده که در این بسته، امکان وارد کردن sub-entries مثل بسته ایندکس وجود نداره. حالا می‌خواستم ببینم آیا واقعاً راهی وجود نداره که توی واژه‌نامه‌هامون، sub-entries داشته باشیم؟
۲- آیا راهی وجود داره که فونت انگلیسی، فونت پیش‌فرض لاتک باشه؟
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: محمد چهارسوقی در آوریل 28, 2010, 07:35:19 pm
سلام
ببخشید من الان در یک مسافرت 3 روزه هستم. انشاالله در اسرع وقت چک می کنم. البته من خیلی وارد نیستم  ;) ولی چک می کنم و نتیجه رو بهتون می گم.
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: meim007 در آوریل 28, 2010, 08:38:17 pm
این پست خیلی بدردم خورد کار من را خیلی آسان کرد
تنها چگونه میتوان این واژه نامه برای انگلیسی به فارسی هم استفاده کرد؟ یعنی یکبار دیگر لیست چاپ شود ولی اینبار عنوانش "واژه نامه‌ی انگلیسی به فارسی" باشد و با حروف انکلیسی سُرت شود
سپاس از همگی
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: meim007 در آوریل 30, 2010, 12:26:13 am
اگر نمیشود این کار را کرد چگونه میشود با همین روش یک لیست جداگونه‌ی دیگر دریت کرد ایندفعه برای انگلیسی به فارسی؟ یعنی در هر فایل دوتا لیست مختلف بتوان درست کرد؟
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: محمد چهارسوقی در آوریل 30, 2010, 12:35:14 am
سلام
یک جواب سر انگشتی که الان می تونم بگم این هست که مشکلی که وجود داره و من نتونستم راه حلی هنوز براش پیدا کنم این است که واژه مورد نظر باید در متن نوشته شود تا در انتها به صورت واژه نامه ظاهر شود.

بنابراین اگر شما بخواهید همزمان هم واژه نامه فارسی به انگلیسی و انگلیسی به فارسی داشته باشید باید کلمات انگلیسی را هم در متن در جایی نوشته باشید.

البته این مسئله تقریباً منطقی است  که کلمه‌ای که شما در متن از آن استفاده نکرده اید در واژه نامه ظاهر نشود.

مطلب دیگر اینکه (این را من خودم امتحان نکرده ام) اما اگر شما از xindy استفاده کنید و از زبان persian به عنوان یک زبان مرتب سازی استفاده کنید و در متن کلمات انگلیسی داشته باشید کلمات انگلیسی به ترتیب بعد از کلمات فارسی ظاهر خواهند شد. اما به گونه ای نیست که به صورت یک واژه نامه جدا باشد.

زمانی که شما یک واژه را تعریف می کنید اجازه دارید نوع آن را مشخص کنید و در انتها چندین نوع واژه نامه داشته باشید اما نوع واژه تا آنجا که من تلاش کردم محدود به چند پیش فرض بود مثلاً type = symbol اما نتوانستم type را آن طوری که مد نظر خودم بود تعریف کنم.

عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: meim007 در آوریل 30, 2010, 12:47:17 am
اگر بتوان اینکار را کرد میتوان دستوری داد که تنها یکبار واژه را بنویسیم (برای هر دو مورد)
مشکل من این هست که نتوانستم و نمیدانم چگونه دولیست با  سری لغات متفاوت ایجاد کنم آیا میتوان کاری و دستوری داد که بعضی از لغات را در لیست وارد نکند مثلا لغاتی که "نام" آنها با حروف انگلیسی ویا فارسی هستند را وارد نکند {یعنی در یک لیست بگویم انگلیسی ها را وارد نکند در یک لیست بگویم فارسی ها را وارد نکند. (ویا نسبت به لیبل اینکار را کند، مثلا اگر با کاراکتر خاصی شروع میشود وارد نکندٰ یا تنها اگر با این کاراکتر هست وارد کند)
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: meim007 در آوریل 30, 2010, 12:57:42 am
اینی هم که گفتید که با نوعش میتوانیم دو لیست درست کنیم ور میروم شاید شد این راتوجه نکرده بودم (میتوان با عنوان دلخواه درست کرد ؟ یعنی میتوان سر لیست بنویسیم انگلیسی به فارسی؟)
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: محمد چهارسوقی در آوریل 30, 2010, 02:15:36 pm
سلام
همانطور که گفتم متاسفانه تا جایی که من گشتم type موارد خاصی را می پذیرد مانند symbol به این معنا که شما یکسری علامت های خاصی را می گویید که این جزو symbol است و در نهایت می توانید واژه نامه علامت‌های موجود را به صورت جدا داشته باشید. اما من نتونستم این رو تعمیم بدم به اینکه مثلا واژه نامه فارسی به انگلیسی و یا انگلیسی به فارسی داشته باشم. البته نمی گویم نمی شود ولی من پیدا نکردم.

در مورد نام واژه نامه شما با استفاده از دستور زیر هر نامی را می‌توانید برای واژه نامه خود انتخاب کنید.

\def\glossaryname{واژه نامه فارسی به انگلیسی}

این دستور را قبل از جایی که می خواهید واژه نامه ظاهر شود استفاده کنید یعنی قبل از

‎\printglossaries‎

وقتی شما از دستور بالا استفاده کنید تمامی واژه نامه‌های شما را چاپ می کند اما اگر از دستور زیر استفاده کنید می توانید در جلوی آن نوع واژه نامه را بگویید مثل مثلا symbol

‎\printglossary

من متاسفانه کامپیوترم دچار مشکل شده و خروجی های درستی نمی گیرم و هنوز نتونستم این مشکل را حل کنم و الا با مثال اینها را برای شما ارسال می کردم.

عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: meim007 در مه 07, 2010, 09:13:34 pm
یکی میشود بگوید با این دستور
\newglossary
\newglossary[<log-ext>]{<name>}{<in-ext>}{<out-ext>}{<title>}[<counter>\]
 چگونه میشود کار کرد در راهنما گفته است با این میتوان یک لیست لغت جدید ساخت ولی نمیدانم چگونه کار میکند و کجا باید وارد کنم من این را گذاشتم:
‎\newglossary{mo}{egls}{eglso}{\glossaryname}‎
ولی کار نکرد. این اگر کار کند چیزی که میخواهم را میتوانم داشته باشم
اگر حرفم مبهم هست بگوید یک نمونه بگذارم
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: وحید دامن‌افشان در مه 26, 2010, 10:58:07 pm
محمد جان بابت این فایلت ممنون. فقط ۲ تا سوال داشتم:
۱- بالای صفحه ۵ راهنمای بسته گلوساری ورژن ۲۰ جولای ۲۰۰۶ نوشته شده که در این بسته، امکان وارد کردن sub-entries مثل بسته ایندکس وجود نداره. حالا می‌خواستم ببینم آیا واقعاً راهی وجود نداره که توی واژه‌نامه‌هامون، sub-entries داشته باشیم؟
۲- آیا راهی وجود داره که فونت انگلیسی، فونت پیش‌فرض لاتک باشه؟
سلام
کسی در رابطه با ۲ سوال بالا، چیزی به ذهنش نمی‌رسه؟
عنوان: پاسخ : تولید واژه‌نامه در زی‌پرشین
رسال شده توسط: کشفی در سپتامبر 15, 2011, 10:58:28 pm
سلام
یک جواب سر انگشتی که الان می تونم بگم این هست که مشکلی که وجود داره و من نتونستم راه حلی هنوز براش پیدا کنم این است که واژه مورد نظر باید در متن نوشته شود تا در انتها به صورت واژه نامه ظاهر شود.

بنابراین اگر شما بخواهید همزمان هم واژه نامه فارسی به انگلیسی و انگلیسی به فارسی داشته باشید باید کلمات انگلیسی را هم در متن در جایی نوشته باشید.

البته این مسئله تقریباً منطقی است  که کلمه‌ای که شما در متن از آن استفاده نکرده اید در واژه نامه ظاهر نشود.

مطلب دیگر اینکه (این را من خودم امتحان نکرده ام) اما اگر شما از xindy استفاده کنید و از زبان persian به عنوان یک زبان مرتب سازی استفاده کنید و در متن کلمات انگلیسی داشته باشید کلمات انگلیسی به ترتیب بعد از کلمات فارسی ظاهر خواهند شد. اما به گونه ای نیست که به صورت یک واژه نامه جدا باشد.

زمانی که شما یک واژه را تعریف می کنید اجازه دارید نوع آن را مشخص کنید و در انتها چندین نوع واژه نامه داشته باشید اما نوع واژه تا آنجا که من تلاش کردم محدود به چند پیش فرض بود مثلاً type = symbol اما نتوانستم type را آن طوری که مد نظر خودم بود تعریف کنم.

آیا برای این مسيله بالاخره راه حلی پیدا شد؟