بایگانی دسته: گنجور

پایان کار فهرست‌گذاری خودکار متون گنجور بر اساس نسکبان

این فرایند هم‌اکنون به پایان رسیده است. در پایان این فرایند هم‌اکنون اشعار گنجور بر اساس ۳۹۵ کتاب PDF در دسترس از طریق نسکبان فهرست‌گذاری شده‌اند.

منابع کاغذی آثار هر سخنور (شامل منابع در دسترس از طریق نسکبان و گنجینهٔ گنجور) نیز ذیل صفحهٔ خود آن سخنور فهرست شده است:

منابع کاغذی حافقظ

سرور نسکبان ارتقا و بهبود پیدا کرده و امیدوارم به زودی بتوانم روی بهبود کارایی جستجو در آن وقت بگذارم. فرایند تطبیق متن کتابهای نسکبان با گنجور هنوز ایده‌آل نیست و جای کار دارد. منتهی وضعیت فعلی هم به لحاظ مستند کردن بخش قابل توجهی از متون گنجور گام بزرگ و مهمی محسوب می‌شود.

بهبود نمایش نقل قول‌های احتمالی و تغییرات دیگر در صفحات سخنوران

در صفحات معرفی شاعران، بخش نقل قول‌های احتمالی آنان از دیگران و دیگران از آنان برای شاعرانی که با تعداد زیادی از شاعران دیگر ارتباط داشتند باعث شلوغی صفحاتشان شده بود. لینک به این صفحات را از حالت قبلی خارج کردم و آنها را در یک کادر (به طور پیش‌فرض بسته شده) به اسم «مشق شعر» تجمیع کردم. لینک‌ها نیز با تصاویر شاعران جایگزین شده‌اند.

مشق شعر سعدی

بخش «آمار» نیز به طور پیش‌فرض بسته شده است تا کسانی که نیاز به مشاهدهٔ اطلاعات آن دارند آن را باز کنند و از شلوغی صفحه کاسته شود.

دکمهٔ آمار

به جای لینک ساده به صفحات پیشنهاد تصاویر شاعران نیز اولین تصویر پیشنهاد شده در صورت وجود نمایش داده می‌شود. این تصویر برای مواردی که تصویر چهرهٔ گنجور از طراحی مشخصی برداشته شده باشد همان تصویر مرجع است.

پیشنهاد تصویر چهره

فهرست‌گذاری خودکار متون گنجور بر اساس مراجع در دسترس از طریق نسکبان – در جریان …

مجمل (اگر حوصله ندارید پاراگراف‌های بعد را بخوانید): در روزهای اخیر پای خیلی از اشعار گنجور می‌توانید تصاویر مراجع چاپی آنها را مشاهده کنید. اگر لزوماً تصویر معرفی شده به عنوان «منبع کاغذی گنجور» با متن شعر همخوانی ندارد نگران نباشید این یک فرایند خودکار در حال تکمیل است که امید است در صورت فراهم شدن پایداری حداقلی در ارتباط اینترنتی داخل ایران زودتر به ثمر برسد و نتایج دقیق‌تر شود.

تصاویر منابع کاغذی گنجور در نسکبان

حدیث مفصّل: یکی از مهم‌ترین اهداف پشت ایجاد نسکبان لینک کردن متون گنجور با منابع کاغذی آن بوده است. فرایندی که با توجه به حجم و تنوع بالای متون گنجور انجام آن به شکل دستی محتاج سال‌ها کار نیروی انسانی است. این کار از این جهت لازم و ضروری است که:

  • بتوانیم با مراجعه به متن چاپی متوجه شویم کلمات مشکوک به ایراد تایپی در گنجور آیا واقعاً ایراد تایپی هستند یا با توجه به مرجع چاپی درستند.
  • از جانب دیگر برای پژوهشگران امکان این را فراهم می‌آوریم که بتوانند در آثارشان به صفحات کاغذی کتاب‌ها ارجاع بدهند.
  • در کل هم، وجود تصویر مرجع چاپی می‌تواند شائبه‌های دستکاری متن در گنجور را کاهش دهد و اعتمادپذیری آن را بالا ببرد.

خوشبختانه این که متن کتاب‌های نسکبان OCR شده و با توجه به دقت نه چندان بالا اما معقول این فرایند به طور حدودی می‌توانیم از متن معادل آنها در گنجور مطلع شویم راهکاری را برای فهرست‌گذاری خودکار متن گنجور بر اساس کتاب‌های نسکبان در اختیار ما می‌گذارد.

بر این اساس، با تعیین این که مرجع احتمالی متن هر بخش گنجور کدام کتاب نسکبان است می‌توانیم با مقایسهٔ الگوریتمی متن گنجور با متن صفحات کتاب جای آن را در کتاب پیدا کنیم و آنها را با هم لینک کنیم.

الگوریتمی که برای انجام این کار طراحی شده به این صورت است که برای هر شعر از آغاز کتاب تا پایان آن صفحه به صفحه به اندازه‌ای معادل متن شعر یا بخش متن منثور در گنجور متن برمی‌داریم (به طور معمول برای اشعار کوتاه یک صفحه و برای اشعار طولانی مثل قصاید چند صفحه انتخاب می‌شود). سپس آمار می‌گیریم که چند کلمه از متن گنجور در متن نسکبان صفحات انتخاب شده یافت می‌شوند و نسبتِ تعداد کلمات موجود به کل کلمات را پیدا می‌کنیم. آستانه‌ای برای تعیین این که متن گنجور و نسکبان صفحات انتخاب شده مطابقت دارند در نظر می‌گیریم. مثلاً فرض می‌کنیم اگر ۷۰ درصد کلمات متن گنجور یافت شد این صفحات با هم مطابقت دارند. سپس مقایسه را تا پایان متن کتاب ادامه می‌دهیم تا اگر صفحه‌ای در کتاب نسکبان با درصد مطابقت بالاتر پیدا شد آن را به عنوان صفحهٔ معادل انتخاب کنیم. به این ترتیب در نهایت در صورت پیدا کردن صفحاتی با مطابقت بالاتر از آستانهٔ تعیین شده، صفحهٔ دارای بالاترین مطابقت را به عنوان صفحهٔ معادل متن گنجور انتخاب می‌کنیم. در نهایت با توجه به تأثیر صفحات خالی یا صفحات عنوان که می‌تواند باعث شود صفحه‌ای که در واقع با شعر گنجور مطابق است صفحه یا یکی از صفحات بعدی باشد و همینطور این که تک‌بیت‌ها و رباعی‌ها و اشعار کوتاه به لحاظ تعداد کلمات کمشان ممکن است با صفحات نامرتبط حاوی تمام کلماتشان تطبیق کنند فرایندهای الگوریتمی ساده‌ای برای حذف موارد نامرتبط نیز آماده کرده‌ایم تا تعداد موارد نامرتبط را کم کند.

الگورریتم مشابه‌یابی

در انتخاب این روش آزمایش و خطاهایی انجام شده، مثلاً ابتدا مقایسهٔ ترتیبی اشعار بخش و صفحات کتاب را امتحان کردیم که اگر چه برای بعضی از کتابها با سرعت خیلی بیشتری به نتیجه می‌رسید، برای بخشهایی از گنجور که کتاب مرجع ترتیب الفبایی نداشته و ما در گنجور اشعار را به ترتیب حروف قافیه مرتب کرده‌ایم کارایی ندارد. پیدا کردن اولین صفحه از کتاب با مطابقت بالاتر از آستانه و عدم بررسی صفحات بعدی نیز به خصوص برای اشعار کوتاه مانند رباعی‌ها که احتمال آن وجود دارد که بسیاری از کلماتشان در صفحات نامربوط کتاب پیدا شوند ایجاد مشکل می‌کند.

الگوریتم طراحی شده به دلیل بررسی کل متن کتاب بسیار زمان‌بر است اما در بررسی تصادفی به عمل آمده دقت قابل قبولی دارد و می‌توان با اختصاص منابع پردازشی به آن این نقیصه یعنی زمان‌بر بودنش را جبران کرد.

خودکارسازی این فرایند با حذف نیاز به نیروی انسانی می‌تواند در آینده امکان این را هم اضافه کند که علاوه بر چاپ‌های مرجع گنجور، متن شعر را در چاپ‌ها و تصحیح‌های دیگر نیز پیدا کنیم و آنها را با شعر لینک کنیم و در آینده بتوانیم متن شعر را در نسخه‌های بدل چاپی دیگر نیز در دسترس داشته باشیم و بررسی کنیم.

متأسفانه با توجه به این که سرور نسکبان در ایران قرار دارد و طی روزهای اخیر اختلالات همیشگی اینترنت ایران شدیدتر شده این که این فرایند چه زمانی تکمیل شود چندان در کنترل ما نیست (لازمهٔ پیشرفت این فرایند ارتباط پایدار سرور گنجور که در خارج از ایران قرار دارد با این سرور در داخل ایران است). تا کنون کتابهای مرتبط با اشعار تا حدود قرن هفتم مشخص شده و در صف پردازش قرار گرفته‌اند که پیش از شدت گرفتن این اختلالات با سرعت مناسبی در حال پردازش و تکمیل بوده‌اند.

بعد از پایان فرایند تطبیق متن کتابهای چاپی با متن گنجور مرحلهٔ دیگری را آغاز خواهیم کرد که بین چند نسخهٔ چاپی مرتبط با یک بخش در گنجور بخشی را که با احتمال بالا منبع کاغذی گنجور بوده با الگوریتم‌هایی مشابه همان الگوریتم‌های آماری که شرحشان آمد پیدا کنیم. تا آن زمان، اولین نسخهٔ چاپی پردازش شده به عنوان مرجع معرفی شده (تا دسترسی به آن از طریق ویرایشگر متن گنجور آسان باشد) اما در عمومِ موارد، لزوماً این موارد مرجع کاغذی گنجور نبوده‌اند.

حسان لاهوری

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

مخدوم حسان لاهوری (نامی که خود او در انتشار روخوانی‌های اشعارش در گنجور از آن استفاده می‌کند) چندی پیش جویای آن بود که چرا کسی اشعار اقبال لاهوری را نخوانده است. همچنان که در پرسش‌های متداول گنجور توضیح داده شده است روخوانی اشعار یک فرایند داوطلبانه است و انتخاب آن که چه شعری خوانده شود به عهدهٔ خود داوطلبان است. از آنجا که عموماً علاقمندان تمایل به روخوانی اشعار شاعران مشهور دارند روخوانی‌های زیادی برای جز چند شاعر انگشت‌شمار همه‌کس‌پسند ارائه نشده است. حسان عزیز وقتی که از علت این امر مطلع شد آستین همت را بالا زد و خودش دست به کار شد.

Completion of Audio Recordings: Completed the audio recording for 50 rubais of Iqbal-e-Lahori. Ganjoor has been vital in this process, especially for learning the correct pronunciation of words. When unsure about any pronunciation, I turned to Ganjoor, found the word in works of Molana, Saadi, or Hafiz, and listened to native readings. Although I am still a beginner, and no way near to a good persian accent, still the Ganjoor audios are helping in a great way.

او که فارسی‌زبان نیست با تکیه بر روخوانی‌های اشعار مشهور کلماتی را که نحوهٔ خوانده شدن آنها را در فارسی نمی‌دانسته پیدا کرده و با تلاش فراوان تا به حال بیش از پنجاه شعر از اقبال را روخوانی کرده است.

روخوانی‌های اشعار مخدوم حسان لاهوری

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

Completion of Audio Recordings: Completed the audio recording for 50 rubais of Iqbal-e-Lahori. Ganjoor has been vital in this process, especially for learning the correct pronunciation of words. When unsure about any pronunciation, I turned to Ganjoor, found the word in works of Molana, Saadi, or Hafiz, and listened to native readings. Although I am still a beginner, and no way near to a good persian accent, still the Ganjoor audios are helping in a great way.

این یک نمونه ویدیوی تولید شده توسط این ابزار است (برداشته شده از این نشانی):

حسان لاهوری و دوستانش برای شناساندن بهتر گنجینهٔ آثار اقبال لاهوری در شبکه‌های اجتماعی نیز حضور پررنگی دارند و می‌توانید در هر یک از شبکه‌های اجتماعی زیر می‌توانید حاصل تلاش‌هایشان را ببینید و دنبال کنید:

https://twitter.com/IqbalFarsi

https://instagram.com/iqbalfarsiofficial
https://www.tiktok.com/@iqbalfarsiofficial
https://www.facebook.com/IqbalFarsiOfficial
https://www.youtube.com/@IqbalFarsi

دستور خط گنجور – پیش‌نویس، نیازمند همفکری علاقمندان

منابع متون گنجور عمدتاً کتابهای چاپ شده و در معدودی موارد نسخه‌های خطی هستند. پیش از انتشار دستور خط‌های نوین مثل دستور خط فرهنگستان (اگر در دنبال کردن لینک با خطا مواجه شدید مشکل فنی و ناشی از انقضای گواهینامهٔ SSL سایت فرهنگستان است، پذیرش ریسک پیشنهادی توسط مرورگر در این مورد خاص انشاء الله خطری برایتان ایجاد نمی‌کند) منبع متمرکزی به عنوان استاندارد دستور خط وجود نداشته است. از این جهت دستور خط فارسی در کتاب‌های مختلف گنجور از سلیقه‌ها و انتخاب‌های متفاوتی پیروی می‌کنند و یکدست نیستند.

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

اما با ارائهٔ امکان ویرایش متون و تصحیح غلط‌های تایپی انجام این کار خصوصاً برای متون پرمخاطب شدنی‌تر و در دسترس‌تر شده است. چنانچه حرکت‌گذاری و آسان‌خوان کردن متون از اهدافی است که گروهی از همراهان گنجور با استفاده از این امکانات برای رسیدن به آن تلاش می‌کنند.

مشکلی که اینجا وجود دارد این است که در این وضعیت هم هنوز استاندارد مدون و مشخصی برای ویرایش و یکدست کردن خط در متون گنجور وجود نداشته و ارائه نشده است.

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

اوّل نیازمندیهای دستور خط در گنجور را با هم مرور کنیم:

۱. جستجوپذیری: یکی از مهمترین کارکردهای گنجور جستجوی متون است. دستور خط گنجور نباید برای رسیدن به اهدافی مانند آسان‌خوانی به گونه‌ای ویژه، سلیقه‌ای و غیرقابل پیش‌بینی شود که اشخاص نتوانند کلمات را مطابق صورتی که در گنجور ظاهر شده حدس بزنند و در کادر جستجو تایپ کنند. تعهد به جستجوپذیری دستور خط‌هایی را که ممکن است مزایایی از قبیل آسان‌خوانی ارائه کنند اما مطابق انتظار همگان نیستند و جا نیفتاده‌اند و استفاده از آنها نیاز به آموزش دارد نفی می‌کند.

تبصره: عموم موتورهای جستجو و همینطور جستجوگر داخلی گنجور حرکات (کسره، ضمّه، فتحه)، تشدید، همزهٔ بالای ه، تنوین و مواردی مانند آن را در جستجو نادیده می‌گیرند و آنها را حذف می‌کنند. از این جهت استفاده از این راهنماهای خوانش استاندارد مغایر با جستجوپذیری در گنجور نیست.

۲. خوانش آسان متون: شکل یک کلمه مثل «برد» در خط فارسی لزوماً نمایانگر آن نیست که کلمهٔ متناظر آن چه کلمه‌ای بوده است. این کلمه می‌تواند «بُرْد»، «بَرَد»، «بُرَد»، «بَرْد» (به معنی سرما) باشد و حتی زمانی که کلمه به مدد محتوای جمله‌ای که در آن به کار رفته مشخص شود عاملی به نام وزن شعر می‌تواند باعث شود که همان کلمه به گونه‌ای متفاوت مثلاً با تشدید روی حرف «ر» خوانده شود. حرکت‌گذاری متون تا حد زیادی می‌تواند این نقیصه را جبران کند. برای آن که کار به افراط نکشد می‌توانیم کلماتی را که کمتر پیش می‌آید به گونهٔ دیگری خوانده شوند استثنا کنیم.

قواعد پیشنهادی:

۱. در تایپ متون در ویندوز و سایر سیستم عامل‌ها از صفحه‌کلید استاندارد فارسی (Persian Standard) استفاده کنید. این صفحه‌کلید با آنچه به طور معمول در ویندوز فعال می‌شود متفاوت است. تایپ نیم‌فاصله در این چینش با Shift+Space انجام می‌شود و امکان تایپ عموم حرکات استاندارد در آن با ترکیب Shift و سایر کلیدها وجود دارد (این چینش صفحه‌کلید در ویندوزهای خیلی قدیمی با نصب برنامه‌ای جانبی در دسترس قرار می‌گیرد اما در ویندوزهای بعد از ویندوز ۱۰ و همینطور روی سیستم‌عامل‌های جدید به صورت توکار در دسترس است). معضل احتمالی این صفحه‌کلید آن است که اعداد را به شکل فارسی و متفاوت با صورت لاتین آنها تایپ می‌کند که هم در جستجوپذیری و هم در عملیات محاسباتی یا ورود متن در کادرهای محدود شده به عدد در بعضی نرم‌افزارها و وب‌سایت‌ها مشکلاتی ایجاد می‌کند که البته آن هم با سوییچ موقت به صفحه‌کلید انگلیسی و تایپ اعداد با آن حل می‌شود.

صفحه‌کلید استاندارد فارسی

۲. یای کوتاه روی های ناملفوظ (مثلاً در «نامهٔ من») به همین صورت (هٔ) و با استفاده از نشانهٔ اختصاصی آن در صفحه‌کلید استاندارد فارسی قابل تایپ با نگه داشتن دکمهٔ Shift و فشردن کلید N (یا شیفت+د) نوشته می‌شود.

تایپ یای کوتاه (هٔ)

این نویسه در دستور خط فرهنگستان (نسخهٔ لینک داده شده منتشر شده در سال ۱۴۰۲) صفحهٔ ۳۳ نیز به عنوان نویسهٔ استاندارد تایپ یای کوتاه روی های ناملفوظ انتخاب شده است. مزیت آن به نسبت صورت متفاوت متداول یعنی نوشتن کامل ی که با نیم‌فاصله از ه جدا شده (نامه‌ی من) آن است که در هنگام جستجو به طور کامل حذف می‌شود و بر خلاف صورت غیراستاندارد که حروف کامل را در جستجو حذف نمی‌کند در جستجوی عبارات کامل مثل «نامه من» به مشکل برنمی‌خورد. برای این ترکیب صورت دیگری با استفاده از یک شکل کامل (یک حرف که های ناملفوظ و یا را با هم تایپ می‌کند به صورت «ۀ») نیز با استفاده از چینش قدیمی صفحه‌کلید قابل تایپ است که به لحاظ مشکلاتی که در جستجوپذیری متن ایجاد می‌کند استفاده از آن درست نیست (نرم‌افزار گنجور در هنگام تأیید پیشنهادهای تصحیحی به طور خودکار آن را با صورت درست جایگزین می‌کند).

استثنای یای کوتاه روی های ناملفوظ: در موارد معدودی حرکت یای روی های ناملفوظ سکون است (مثال از اخوان ثالث: «به گرده‌یْ من، به رگهای فسرده‌یْ من، به زنده‌یْ تو، به مرده‌یْ من»). نوشتن آن به صورت پیشنهاد شده در این حالت به لحاظ آن که خواننده را در خوانش متن دچار اشتباه می‌کند پیشنهاد نمی‌شود و در این حالت استثنایی نوشتن آن به صورت یای کامل با سکون اجباری روی یا ارجح است.

۳. سرهم نویسی، جدانویسی: در مورد دو کلمهٔ پشت سر هم که به شکل ترکیب به کار گرفته شده‌اند (مثلاً «اینجا» یا «گر چه»)، به این قواعد نگاه کنید: اول این که در عرف آیا این ترکیب سرهم نوشته می‌شود یا جدا، مواردی مانند اینجا و آنجا معمولاً جدا نوشته نمی‌شود و البته به نظر می‌رسد تکیه در تلفظ آنها در فرم سر هم و جدا متفاوت است، از این جهت آنها را جدا نمی‌نویسیم، دوم (اگر قاعدهٔ اول این مورد را پوشش نداد) این که آیا معنای کلمهٔ ترکیبی با ترکیب دو کلمهٔ مجزا یکسان است یا خیر، اگر معنای کلمهٔ مرکب ترکیب دو بخش نیست قطعاً می‌بایست سرهم نوشته شود. سرهم‌نویسی با جدا کردن حروف چسبان با نیم‌فاصله ایرادی ندارد اما سرهم نویسی مواردی که نمی‌بایست سرهم نوشته شوند در آمارگیری کلمات مجزا در گنجور (امکانی که ممکن است بعدها ایجاد شود) مشکل ایجاد می‌کند.

۴. چسبیدن «که» به «آن» و «این» و موارد مشابه: در جایگاه‌هایی که «که» به «آن» و «این» چسبیده و ترکیب «کان» و«کاین» را ساخته، ترکیب را جدا نمی‌کنیم (که‌این و که‌آن پذیرفتنی نیست) و آنها را همانطور که خوانده می‌شوند می‌نویسیم. برای نمایش ترکیبی بودن کلمه صورت «کآن» بر «کان» و «کاین» بر «کین» ترجیح داده می‌شود. در مورد چسبیدن واو («و») به آن و این در حالتی که «وان» و «وین» خوانده می‌شود صورت‌های «وآن» و «وین» قابل قبول است («واین» احتمالاً موجب بدخوانی می‌شود). نوشتن «کآن» و «کاین» به صورت «ک‌آن» و «ک‌این» و هر گونه روشی که سلیقهٔ شخصی قلمداد شود و در متون متداول نباشد نیز درست نیست.

۵. «کی» در غزلیات شمس و «سد» در دیوان وحشی بافقی و … : تعهد به رسم‌الخط‌های اختصاصی نسخ خطی الزامی نیست و جهت جستجوپذیر کردن آنها به شرطی که مسلم باشد که کلمهٔ متداول چیست («که» به جای «کی»، «آن که» به جای «آنک»، «صد» به جای «سد»، «قفس» به جای «قفص» و …) تغییر آن به کلمهٔ متداول ترجیح داده می‌شود.

۶. استفاده از علائم سجاوندی می‌بایست مطابق کارکرد و تعریف استاندارد آنها باشد و استفاده از آنها به منظور تسهیل خوانش زمانی قابل قبول است که در آن افراط نشود و القای معنای نادرست نکند. در صورتی که یک مصرع می‌تواند با توقف در پایان کلمات مختلف به چند صورت صحیح خوانده شود نمی‌بایست علامت‌گذاری باعث نفی صورت‌های دیگر خواندن شعر شود چنان که محتمل است که شاعر عمداً قصد ایجاد ابهام روی نحوهٔ خواندن شعر را داشته است تا بتواند معانی متفاوتی را از این طریق خلق کند.

۷. علائم سجاوندی (ویرگول، علامت سؤال و علامت تعجب و …) به کلمهٔ قبلی بدون فاصله می‌چسبند و با کلمهٔ بعدی فاصله دارند (نمونه: «گفتا: کدام دل؟ چه نشان؟ کی؟ کجا؟ که برد؟» و نه «گفتا : کدام دل ؟ چه نشان ؟ کی ؟ کجا ؟ که برد ؟») .

۸. جایگاه قافیه: بعضی از قواعد رسم‌الخط در جایگاه قافیهٔ اشعار برای ایجاد یکدستی در قوافی استثناپذیر هستند. یعنی اگر رعایت رسم‌الخط صحیح در جایگاه قافیه به یکدستی قوافی یک شعر لطمه بزند از آن صرف نظر می‌کنیم.

این متن یک پیش‌نویس ناقص و اولیه است. از دوستانی که از ویراستاری و رسم‌الخط فارسی سررشته دارند و در آن مطالعه کرده‌اند و با رویکرد گنجور در مورد تسهیل جستجو در کنار تعهد به یک استاندارد عمومی و پرهیز از رویکرد سلیقه‌ای همگام و همفکر هستند خواهشمندیم نکاتی را که باید در این زمینه در نظر گرفته شود در نظرات این نوشته اعلام کنند تا به آن افزوده شود.

چرا در کلیات شمس اشعار شاعران دیگر دیده می‌شود؟

اگر در کلیات شمس پرسه زده باشید بسیار پیش می‌آید که با اشعاری برخورد کنید که مسلماً پیش از مولانا و توسط شاعران دیگر سروده شده اما گاه بدون تغییر و گاه با تغییراتی اندک درآثار مولانا هم ظاهر شده. از نمونه‌های نام‌آور آن سوگ‌سرودهٔ رودکی برای ابوالحسن مرادی است که در دیوان شمس در دو غزل در یکی با تغییرات بسیار کم و در دیگری در قالب یک تضمین و بازسروده در رثای سنایی آمده است.

اگر برای شما هم سؤال شده که دلیل آمدن این اشعار در دیوان شمس چیست این نوشتهٔ تلگرامی استاد میرافضلی می‌تواند پاسخگوی شما و من باشد:

یک تشابه و سه نکته

نام تو کنم نقش چو نی برگیرم
سوی تو کنم گذر چو پی برگیرم
یاد تو کنم نوش چو می برگیرم
با عشق چنین، دل از تو کی برگیرم؟
(مسعود سعد)

بهر تو زنم نوا چو نی برگیرم
کوی تو کنم گذر چو پی برگیرم
چندین کرم و لطف که با من کردی
اندر دو جهان، دل از تو کی برگیرم؟
(مولانا)

از مقایسۀ این دو رباعی چند نکته عاید ما می‌شود:
اول. شیوۀ مولانا در برخورد با میراث شعر فارسی، اخذ و اقتباس و ویرایش بوده است. او به مدد حافظه و ذوق، اشعاری را که از حفظ داشته، در ذهن خود احضار و به مناسبت مقام، در متن آن‌ها تصرّف می‌‌کرده است. چنین اتفاقی در رباعیات او بارها و بارها تکرار شده است. میزان تصرّف او در متن پیشین، از صفر تا صد بوده است! صفر، یعنی اینکه عین همان متن را بر زبان آورده است و مریدان، آن را وارد دفتر اشعار او کرده‌اند. کلیات شمس پُر از رباعیات دیگران است و معتقدم اغلب آن‌ها را مولانا در جمع یاران و مریدان بر خوانده است. البته، عدد صد اینجا جنبۀ اغراق دارد. ولی مولانا گاه تصرّفات ذوقی زیادی در شعر دیگران کرده و اثر جدیدی پدید آورده است که گاهی تشخیص آنکه متن اولیه چه بوده، بسیار دشوار است.

دوم. تغییر قافیۀ مصراع سوم، مربوط به پسند زمانه و تغییر فرم رباعی در قرن هفتم هجری است که رباعی چهارقافیه‌ای را نمی‌پسندیده‌اند. پیشتر هم گفته‌ام که جنبۀ زیباشناسانۀ این تغییر،‌ آن است که با ایجاد وقفه در ضرباهنگ رباعی، برجستگی و اثربخشیِ بیشتری به مصراع چهارم رباعی داده است.

سوم. در بیت اول رباعی مسعود سعد، ناهمطرازیِ موسیقایی بین دو کلمۀ «نقش» و «گذر» وجود دارد و باعث خلل در ریتم رباعی شده است. این عیب، در مصراع سوم رباعی مسعود سعد نیز وجود دارد. کلمۀ «نوش» با «نقش» هماهنگ است، اما با «گذر» نه. مولانا با تغییر کلمۀ «نقش» به «نوا» این ناهماهنگی را بر طرف کرده است.

منابع: دیوان مسعود سعد، ۸۰۵؛ کلیات شمس، جزو هشتم، ۲۰۲
‏..

«چهار خطی»
https://telegram.me/Xatt4

انتخاب املای «پیشخان» در گنجور آگاهانه است

اوّل بار احتمالاً چهار سال پیش لازم شده که این واژه در جایگاه معادل کلمهٔ «داشبورد» در نرم‌افزارها در گنجور به کار گرفته شود. در آن زمان حاصل جستجوی ما ما را مجاب به انتخاب این شکل املایی برای این کلمه کرد.

پیشخان یا پیشخوان

اگر بگردید و شواهد را ببینید می‌بینید که همه «پیشخان» را درست می‌دانند از ابوالحسن نجفی در کتاب «غلط ننویسیم» گرفته:

صفحهٔ ۹۴ کتاب غلط ننویسیم

تا فرهنگ‌های لغت و رضا شکراللهی خوابگرد و دیگران.

و عموماً در فرهنگ‌ها «پیشخوان» را به معنای کسی می‌دانند که پیش از مجلس وعظ پیش‌خوانی می‌کند.

املای «پیشخوان» در معنای «پیشخان» به لطف «پیشخوان خدمات دولت» و البته انتخاب‌های برنامه‌نویسان و مترجمان نرم‌افزارهای تحت وب نیز کم و بیش متداول است و به نظر من مشکلی هم ندارد. از این نظرگاه اگر بسامد کارکرد این غلط مصطلح بر صورت درست آن بچربد مشکلی نیست که به شکل آگاهانه از آن شکل استفاده شود تا از احتمال وقوع پرسش و پاسخ‌های بیهوده بکاهیم!

خلاصه و جان کلام این مطلب آن است که «پیشخان» در گنجور حتی اگر به زعم شما غلط باشد به علت کم‌سوادی یا اشتباه سهوی به کار گرفته نشده. این انتخاب آگاهانه و عمدی است و پس از جستجو انجام شده. جستجویی که انتظار می‌رود حداقل کاری باشد که کسی که می‌خواهد آن را مستمسک حمله و انتقاد کند انجام داده باشد.

پیروز باشید!

پیشنهادهای طراحی رابط و تجربهٔ کاربری آقای حسین مرتضوی‌فر برای گنجور

رابط و تجربهٔ کاربری گنجور از دیرباز مورد انتقاد بوده. انتخاب رنگ‌ها، ناهماهنگی‌های متعدد در صفحات و در دو سه سال اخیر شلوغ شدن آن با افزوده شدن تعداد زیادی دکمه و منو و عناصر دیگر رابط کاربری که به نظر می‌رسد همینطوری روی صفحات ریخته شده‌اند.

گنجور از لحاظ رابط کاربری همیشه نیاز به کمک و همیاری داشته. عموم تحولات مهم رابط کاربری گنجور از بهینه‌سازی آن برای موبایل (به کمک آقای حسام بهرامی) گرفته تا تغییرات لوگوی آن (از لوگوی قدیمی تا لوگوی فعلی طراحی شده توسط آقای مجید نجاتی) و موارد دیگری که هست و اکنون در خاطرم نیست با کمک دوستان طراح صورت گرفته.

این که ناهماهنگی‌های رابط کاربری (رنگ و طرح) و پیچیدگی‌های تجربهٔ کاربری (چینش و نحوهٔ دسترسی به ابزارها) در گنجور چطور می‌تواند از این وضعیت دربیاید دغدغه‌ای بوده که باز برای حل آن نیاز به یاری دوستان متخصص داریم.

آقای حسین مرتضوی‌فر داوطلبانه برای حل این مسئله پیشگام شده‌اند و تا به حال دو سری طراحی جایگزین برای رابط کاربری گنجور ارائه کرده‌اند. از آنجا که تا پیاده‌سازی این پیشنهادها در گنجور طول خواهد کشید بهتر دیدیم پیشنهادهای جالب و امیدوارکنندهٔ ایشان را با همراهان گنجور به اشتراک بگذاریم.

پیشنهاد طراحی صفحهٔ اول
پیشنهاد طراحی برای صفحهٔ اول: در پیشنهاد آقای مرتضوی‌فر صفحهٔ اول تنها کارکرد دسترسی به فهرست شاعران را ندارد و در آن کارکردهایی مثل نمایش آخرین خوانش‌های اضافه شده، فال و شعر روز، آخرین اشیاء اضافه شده به گنجینهٔ گنجور، دسترسی به دریافت فایل‌های کتابخانهٔ گنجور، نمایش نقشهٔ خاستگاه سخنوران و همینطور مناسبت‌های ادبی نیز پیش‌بینی شده (که این مورد آخری در گنجور وجود ندارد). عموم این موارد به نظر می‌رسد راهکارهایی برای خلاصه کردن پانویس شلوغ صفحات گنجور را فراهم کرده‌اند. البته تغییر کارکرد صفحهٔ اول از یک به اصطلاح هاب دسترسی ساده و اختصاصی با امکانات گروه‌بندی و جستجو برای شاعران به صفحه‌ای با کارکردهای متعدد احتمالاً به ساده کردن پیچیدگی‌های گنجور کمک زیادی نمی‌کند. با این حال پیشنهادهای طراحی برای خلاصه کردن صفحهٔ اول در بخش «سخنوران» قابل تأمل به نظر می‌رسد.
پیشنهاد طراحی صفحهٔ سخنوران
از صفحهٔ اول و با دنبال کردن لینک «همه» در بخش «سخنوران» به این صفحه می‌رسیم که به نوعی عموم کارکردهای صفحهٔ اول فعلی در آن در دسترس است.
پیشنهاد طراحی صفحات اختصاصی شاعران
پیشنهاد طراحی صفحات اختصاصی شاعران (نمونه صفحه در گنجور)
پیشنهاد طراحی صفحات فهرست‌های اشعار
پیشنهاد طراحی صفحات فهرست‌های اشعار (نمونه صفحه در گنجور)
پیشنهاد طراحی صفحات شعرها
پیشنهاد طراحی صفحات شعرها (نمونه صفحه در گنجور)، پیشنهادهای جالبی برای کاهش پیچیدگی این صفحات در این طراحی دیده می‌شود.
پیشنهاد طراحی صفحات شعرها
پیشنهاد طراحی صفحات شعرها: زبانهٔ خوانش‌ها
پیشنهاد طراحی برای صفحات پیشنهاد تصویر برای شاعر
پیشنهاد طراحی برای صفحات پیشنهاد تصویر برای شاعر (نمونه صفحه در گنجور)
پیشنهاد طراحی صفحهٔ بیت تصادفی گنجور
پیشنهاد طراحی برای صفحهٔ بیت تصادفی گنجور
پیشنهاد طراحی برای تازه‌های گنجور
پیشنهاد طراحی برای تازه‌های گنجور

بخش دیگری از پیشنهادهای آقای مرتضوی‌فر عزیز بخش‌های پروفایل کاربران را پوشش می‌دهد که در حال حاضر بسیار ابتدایی و البته ناهماهنگ با طراحی صفحات عمومی (بدون نیاز به ورود کاربر) در گنجور است.

پیشنهاد طراحی پروفایل کاربر
پروفایل کاربر (در پیشنهاد ایشان موارد جالبی برای ارتقای کاربران به نسخهٔ پیشرفته پیشبینی شده که در این صفحه هم قابل مشاهده است که به لحاظ فلسفهٔ شکل‌گیری و نوع تفکر گردانندهٔ گنجور مبنی بر عدم سوگیری به سمت یک استارتاپ درآمدزا امکان ظهور و استفاده در گنجور را نخواهد داشت، این نکته را برای زدودن نگرانی احتمالی کاربران گرامی عنوان کردیم)
پیشنهاد طراحی پروفایل کاربر
پیشنهاد طراحی برای کارنامهٔ عمومی کاربر
پیشنهاد طراحی پروفایل کاربر
پیشنهاد طراحی برای تنظیمات کاربر
پیشنهاد طراحی صفحات تنظیمات کاربر
پیشنهاد طراحی برای تنظیمات اعلان‌های کاربر
پیشنهاد طراحی صفحات تنظیمات کاربر
پیشنهاد طراحی برای ویرایش نمایهٔ کاربر
پیشنهاد طراحی صفحات تنظیمات کاربر
پیشنهاد طراحی برای کارنامهٔ ویرایش‌های قطعات کاربر

در پیشنهادهای ایشان مورد مبدعانهٔ متعددی وجود دارد که می‌تواند به بهبود رابط کاربری گنجور کمک کند. بعضی پیشنهادها با تغییر چینش صفحات قابل پیاده‌سازی است اما مواردی هم هستند که تنها پیشنهاد طراحی نیستند و پیشنهاد قابلیت‌های جدیدی در گنجور هستند که پیش‌نیاز ظهور آنها هنوز در آن پیاده‌سازی نشده.

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

کار بزرگی که آقای مرتضوی‌فر عزیز انجام داده‌اند آن بوده که پیشنهادهای عملی برای بهبود رابط و تجربهٔ کاربری گنجور ارائه کرده‌اند که امیدواریم در آینده اثر مثبت آن را در کاهش پیچیدگی‌ها و بهبود رابط کاربری سایت شاهد باشیم.

دوستان علاقمند و متخصص می‌توانند با مراجعه به وب‌سایت ایشان نمونه‌کارهای حرفه‌ای ایشان را مشاهده کنند. ضمناً از پیشنهادهای تخصصی این دسته از دوستان استقبال می‌کنیم.

راه حل از دسترس خارج شدن سایت در IIS (مشکل پیشین گنجور)

پیش‌تر و زمانی که یک شب کامل گنجور از دسترس خارج شد به لحاظ آن که دوستان زیادی نگران شده بودند راجع به آن نوشتم تا نگرانی دوستان رفع شود منتهی آن اطلاع‌رسانی باعث نگرانی بیشتر شد!

دوستان زیادی در آن زمان برای ارائهٔ راه حل تلاش و اقدام کردند و از جملهٔ آنها آقای محمد حکیمی از شرکت نئور فاوا راه حل اساسی و استاندارد این مشکل را ارائه کردند. برای استفادهٔ سایر دوستان (کسانی که روی ویندوز و روی IIS سایتهای مبتنی بر ASP.NET Core را میزبانی می‌کنند) راه حل ایشان را بازگو می‌کنم.

سلام

در مورد مشکل Stop شدن IIS که نوشته بودید؛ اگر موضوع Stop شدن سرویس IIS باشد، یک راه ساده این است که یک Scheduled Task ایجاد کنید که با اجرای یک خط دستور Powershell، در بازه زمانی هر 1 دقیقه یکبار اگر سرویس مورد نظر Stop شده بود، آن را Start کند. این Task خیلی ساده است و تقریبا هیچ باری به سرور وارد نمی‌کند.

Get-Service | Where-Object {$_.Status -eq “Stopped” -and $_.StartType -eq “Automatic” -and $_.Name -eq “W3SVC”} | Start-Service

اگر خود وب سایت در IIS به صورت Stop در آمده باشد، می توانید یک Task ایجاد کنید تا فقط آن وب سایت را هر 1 دقیقه Start کند.

Import-Module IISAdministration

Start-IISSite -Name “api.ganjoor.net”

اگر مشکل با Application Pool است به این صورت می‌توانید اقدام کنید.

Import-Module WebAdministration

set-Location IIS:\AppPools

$ApplicationPools = dir

foreach ($item in $ApplicationPools)

{

$ApplicationPoolName = $item.Name

$ApplicationPoolStatus = $item.state

Write-Host “$ApplicationPoolName -> $ApplicationPoolStatus”

if($ApplicationPoolStatus -ne “Started”)

{

Write-Host “—–> $ApplicationPoolName found stopped.”

Start-WebAppPool -Name $ApplicationPoolName

Write-Host “—–> $ApplicationPoolName started.”

}

}

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

ممنون از زحمات شما

Mohammad Hakimi

Neor Fava

www.neor.ir

با سپاس از آقای حکیمی عزیز، پیش از تماس ایشان برای رفع اشکال از راه حل مشابهی در قالب یک برنامهٔ دات نتی استفاده کردم که کد آن در این نشانی در دسترس است (تهیه شده با کمک چت‌جی‌پی‌تی).

در پاسخ به طرح این موضوع آقای حکیمی نکتهٔ بجایی را عنوان کردند:

چه خوب.

البته معمولا ترجیح ما بر این است که در پروژه‌ها برای انجام کارهای ساده از برنامه هایی که به این صورت نوشته و Compile می‌شوند پرهیز کنیم چون معمولا به جزئیات مربوط به امنیت و Performance توجه کافی نمی‌شود. با فراخوانی Componentها، تعدادی DLL روی Memory فراخوانی می‌شوند و پس از اجرای برنامه هم باقی می‌مانند و در طول زمان منجر به پر شدن Memory سرور و کند شدن عملکرد می‌شود. در صورتی‌که با استفاده از Scriptهای استاندارد Powershell، مدیریت مسائل جانبی توسط خود Powershell انجام می‌شود و دیگر دغدغه‌های امنیتی یا Performance وجود ندارد.

این توضیح کلی بود و مربوط به این مورد خاص نبود.

امیدوارم که در هر صورت مشکل برطرف شود و این پروژه ارزشمند پابرجا باشد.

ممنون از زحمات ارزشمند شما

با این حال با توجه به آن که راه حل پیشتر پیاده‌سازی شده (برنامهٔ مجزا) قبل از آن روی سرور راه‌اندازی شده بود من تنبلی کردم و راه حل را تغییر ندادم.

اما به نظرم رسید که راه حل آقای حکیمی را (که من در جستجوهایم به آن نرسیده بودم) برای روز مبادا و برای دیگرانی که دچار همین مشکل می‌شوند در اینجا به اشتراک بگذارم.