همانطور که در پرسش گفته شد، مصرع نخست هر بیت داخل کادر افقی \verse@i
قرار میگیرد. متأسفانه تک مکانیزمی برای نوشتن محتویات یک کادر افقی به فایل دیگر ندارد هرچند میتوان یک کادر دیگر تعریف کرد و محتویات کادر \verse@i
را هر بار قبل از خالی شدن، در این کادر کپی کرد و سپس از آن برای ایجاد فهرست اشعار خودکار استفاده کرد. راهحل بصورت زیر است:
\documentclass{article}
\usepackage{xepersian}
\usepackage{bidipoem}
\settextfont{Yas}
\makeatletter
\newbox\save@verse@i
\bidi@patchcmd{\poem@line}{\poem@verse\verse@i}{%
\global\setbox\save@verse@i\vbox{%
\hsize\columnwidth
\ifvoid\save@verse@i
\else
\unvbox\save@verse@i
\fi
\ifvoid\verse@i
\else
\usebox\verse@i{} \hrulefill{} \thepage
\fi
}
\poem@verse\verse@i
}{\typeout{Suceeded}}{\typeout{Failed}}
\newcommand*{\listofpoems}{\section*{فهرست شهرها}
\unvbox\save@verse@i
}
\makeatother
\begin{document}
\begin{traditionalpoem}
جهان چون بزاری برآید همی & بدو نیک روزی سرآید همی \\
چو بستی کمر بر در راه آز & شود کار گیتیت یکسر دراز \\
بیک روی جستن بلندی سزاست & اگر در میان دم اژدهاست \\
و دیگر که گیتی ندارد درنگ & سرای سپنجی چه پهن و چه تنگ \\
پرستنده آز و جویای کین & بگیتی ز کس نشنود آفرین \\
چو سرو سهی گوژ گردد بباغ & بدو بر شود تیره روشن چراغ \\
کند برگ پژمرده و بیخ سست & سرش سوی پستی گراید نخست \\
بروید ز خاک و شود باز خاک & همه جای ترسست و تیمار و باک \\
سر مایهٔ مرد سنگ و خرد & ز گیتی بیآزاری اندر خورد \\
در دانش و آنگهی راستی & گرین دو نیابی روان کاستی \\
اگر خود بمانی بگیتی دراز & ز رنج تن آید برفتن نیاز \\
یکی ژرف دریاست بن ناپدید & در گنج رازش ندارد کلید \\
اگر چند یابی فزون بایدت & همان خورده یک روز بگزایدت \\
سه چیزت بباید کزان چاره نیست & وزو بر سرت نیز پیغاره نیست \\
خوری گر بپوشی و گر گستری & سزد گرد بدیگر سخن ننگری \\
چو زین سه گذشتی همه رنج و آز & چه در آز پیچی چه اندر نیاز \\
چو دانی که بر تو نماند جهان & چه پیچی تو زان جای نوشین روان \\
بخور آنچ داری و بیشی مجوی & که از آز کاهد همی آبروی \\
دل شاه ترکان چنان کم شنود & همیشه برنج از پی آز بود \\
ازان پس که برگشت زان رزمگاه & که رستم برو کرد گیتی سیاه \\
بشد تازیان تا بخلخ رسید & بننگ از کیان شد سرش ناپدید \\
بکاخ اندر آمد پرآزار دل & ابا کاردانان هشیاردل \\
چو پیران و گرسیوز رهنمون & قراخان و چون شیده و گرسیون \\
برایشان همه داستان برگشاد & گذشته سخنها همه کرد یاد \\
که تا برنهادم بشاهی کلاه & مرا گشت خورشید و تابنده ماه \\
مرا بود بر مهتران دسترس & عنان مرا برنتابید کس \\
ز هنگام رزم منوچهر باز & نبد دست ایران بتوران دراز \\
شبیخون کند تا در خان من & از ایران بیازند بر جان من \\
دلاور شد آن مردم نادلیر & گوزن اندر آمد ببالین شیر \\
برین کینه گر کار سازیم زود & وگرنه برآرند زین مرز دود \\
سزد گر کنون گرد این کشورم & سراسر فرستادگان گسترم \\
ز ترکان وز چین هزاران هزار & کمربستگان از در کارزار \\
بیاریم بر گرد ایران سپاه & بسازیم هر سو یکی رزمگاه \\
همه موبدان رای هشیار خویش & نهادند با گفت سالار خویش
\end{traditionalpoem}
\listofpoems
\end{document}