urxvt-selection(1) RXVT-UNICODE urxvt-selection(1)

selection - انتخاب هوشمندانه‌تر متن

این افزونه تلاش می‌کند هنگام گسترش ناحیه انتخابی توسط کاربر (دوبار کلیک و کلیک‌های متوالی)، رفتار هوشمندانه‌تری داشته باشد. در حال حاضر، این افزونه سعی می‌کند کلمات، نشانی‌های وب (url) و آرگومان‌های کامل نقل‌قول‌شده در شل (shell-quoted) را انتخاب کند؛ قابلیتی که چنانچه دستور ls شما از "--quoting-style=shell" پشتیبانی کند، بسیار کاربردی و راحت است.

یک دوبار کلیک معمولاً کلمه زیر مکان‌نما را انتخاب می‌کند، و کلیک‌های بعدی محدوده انتخاب را بزرگ‌تر خواهند کرد.

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

URxvt.selection.pattern-0: perl-regex
URxvt.selection.pattern-1: perl-regex
...

شماره اندیس (0, 1...) نباید هیچ جای خالی یا وقفه‌ای داشته باشد، و هر عبارت باقاعده باید دست‌کم شامل یک جفت پرانتز ضبط‌کننده (capturing parentheses) باشد که برای تطبیق استفاده خواهد شد. برای نمونه، خط زیر یک عبارت باقاعده اضافه می‌کند که هر چیزی را میان دو خط عمودی (|) مطابقت می‌دهد:

URxvt.selection.pattern-0: \\|([^|]+)\\|

مثالی دیگر: برنامه‌هایی که من استفاده می‌کنم اغلب هنگام پردازش چندین فایل، در ابتدای خط عبارت "absolute path: " را در خروجی چاپ می‌کنند. الگوی زیر نام فایل را تطبیق می‌دهد (توجه داشته باشید که در انتهای آن یک فاصله قرار دارد):

URxvt.selection.pattern-0: ^(/[^:]+):\

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

این افزونه همچنین عملیات‌های زیر را ارائه می‌دهد:

هنگام فعال شدن، متن انتخاب‌شده را با الگوریتم Rot-13 رمزگذاری می‌کند.

مثال:

URxvt.keysym.C-M-r: selection:rot13
2025-10-24 9.31