tinykeys: کتابخانهای سبک برای مدیریت میانبرهای کیبورد
خلاصهٔ کاملتر
tinykeys یه کتابخانه جاوااسکریپته که کار با میانبرهای کیبورد توی مرورگر رو بهشدت ساده میکنه. با یه npm install tinykeys نصب میشه و API اون خیلی مستقیمه: یه آبجکت از «الگوی کلید» به «تابع» میدی و کتابخانه بقیه کار رو انجام میده.
این کتابخانه سه نوع اصلی از میانبر رو پشتیبانی میکنه. کلیدهای ترکیبی همزمان مثل Shift+D، توالیهای پشتسرهم مثل y e e t (که باید به ترتیب فشار داده بشن)، و الگوهای regex-style مثل $mod+([1-9]) که چند کلید مشابه رو یهجا پوشش میدن.
یه ویژگی جالب $mod هست که بهصورت خودکار روی ویندوز/لینوکس به Control و روی مک به Command ترجمه میشه — دیگه نیازی نیست برای هر پلتفرم جداگانه چک کنی.
import tinykeys from "tinykeys"
tinykeys(window, {
"Shift+D": () => {
alert("The 'Shift' and 'd' keys were pressed at the same time")
},
"$mod+([1-9])": event => {
event.preventDefault()
alert(`Either 'Control+${event.key}' or 'Meta+${event.key}' were pressed`)
},
})کد بالا نشون میده که ثبت shortcut چقدر کمحجمه. الگوی $mod+([1-9]) با یه regex ساده همه اعداد ۱ تا ۹ رو میگیره و event اصلی هم در دسترسه تا بتونی مثلاً رفتار پیشفرض مرورگر رو با preventDefault() بلاک کنی.
کتابخانه همچنین یه debugger داخلی داره که وقتی تایپ میکنی، جزئیاتی مثل event.key، event.code، event.repeat، و وضعیت modifier keyها رو لاگ میکنه — خیلی به درد تست و دیباگ کردن shortcutهای پیچیده میخوره.
نکات کلیدی:
- نصب سریع با npm install tinykeys
- پشتیبانی از کلیدهای همزمان، توالی پشتسرهم، و الگوهای regex-style
- $mod بهصورت خودکار بین Control و Command بسته به پلتفرم تشخیص میده
- دسترسی کامل به شیء event در داخل handler
- debugger داخلی برای بررسی رویدادهای کیبورد




