.\" .TH XKBEVD 1 "xkbevd 1.1.6" "X Version 11" .SH "نام (NAME)" xkbevd \- دیمن رخدادهای XKB .SH "خلاصه دستور (SYNOPSIS)" .B xkbevd [\fIگزینه‌ها\fR] .SH "توضیحات (DESCRIPTION)" .PP این دستور بسیار خام و ناپخته است و به همین دلیل تنها بخشی از آن پیاده‌سازی شده است؛ ما آن را به عنوان یک پیش‌نمونه اولیه برای توسعه‌دهندگان ارائه می‌دهیم، نه یک ابزار همه‌منظوره برای کاربران نهایی. چیزی شبیه به این ممکن است جایگزین مناسبی برای .B xev باشد؛ البته من تعهدی برای انجام آن نمی‌دهم، اما ایده جالبی است. .PP دیمن رخداد .I xkbevd به رخدادهای مشخص‌شده‌ی XKB گوش فرا می‌دهد و در صورت وقوع آن‌ها، دستورات درخواستی را اجرا می‌کند. فایل پیکربندی شامل فهرستی از جفت‌های مشخصات رخداد/اقدام و/یا تعاریف متغیرها است. .PP مشخصات یک رخداد شامل یک نام کوتاه رخداد XKB است که به دنبال آن یک رشته یا شناسه درون پرانتز به عنوان توصیف‌کننده (qualifier) قرار می‌گیرد؛ پرانتز خالی نشان‌دهنده نبود توصیف‌کننده است و برای تعیین دستور پیش‌فرضی به کار می‌رود که روی رخدادهای منطبق‌نشده با هیچ‌یک از مشخصات دیگر اعمال می‌شود. تفسیر توصیف‌کننده به نوع رخداد بستگی دارد: رخدادهای زنگ (Bell) با استفاده از نام زنگ تطبیق داده می‌شوند، رخدادهای پیام (message) با محتوای رشته پیام تطبیق می‌یابند و رخدادهای کلیدهای کُند (slow keys) هر یک از مقادیر \fIpress\fP، \fIrelease\fP، \fIaccept\fP یا \fIreject\fP را می‌پذیرند. در حال حاضر هیچ رخداد دیگری شناسایی نمی‌شود. .PP یک اقدام (action) شامل یک کلیدواژه اختیاری است که در پی آن یک آرگومان رشته‌ای اختیاری می‌آید. در حال حاضر، .I xkbevd اقدام‌های زیر را شناسایی می‌کند: \fInone\fP، \fIignore\fP، \fIecho\fP، \fIprintEvent\fP، \fIsound\fP و \fIshell\fP. اگر اقدام مشخص نشده باشد، رشته به عنوان نام فایل صوتی برای پخش در نظر گرفته می‌شود، مگر اینکه با علامت تعجب شروع شود که در این صورت به عنوان یک دستور شل در نظر گرفته می‌شود. .PP تعاریف متغیرها در رشته آرگومان، پیش از ارسال رشته آرگومان به پردازشگر اقدام، با فیلدهای مربوط به آن رخداد بسط داده می‌شوند. ساختار نحوی کلی برای یک متغیر یا به‌صورت $\fIc\fP یا $(\fIstr\fP) است، که در آن \fIc\fP یک نویسه تک و \fIstr\fP رشته‌ای با طول دلخواه است. همه پارامترها دارای هر دو نام تک‌نویسه‌ای و نام طولانی هستند. .PP فهرست پارامترهای شناسایی‌شده از رخدادی به رخداد دیگر متفاوت است و در حال حاضر طولانی‌تر از آن است که بتوان در اینجا فهرست کرد. به هر حال، این یک انتشار مخصوص توسعه‌دهندگان است، بنابراین انتظار می‌رود که به کد منبع نگاهی بیندازید (به‌ویژه فایل evargs.c مورد توجه است). .PP اقدام‌های \fIignore\fP، \fIecho\fP، \fIprintEvent\fP، \fIsound\fP و \fIshell\fP همان کاری را انجام می‌دهند که از دستوراتی با این نام‌ها انتظار دارید، با این استثنا که دستور .I sound تنها برای ماشین‌های SGI پیاده‌سازی و آزمایش شده است. این دستور در حال حاضر یک برنامه خارجی را فراخوانی می‌کند، بنابراین سازگار کردن آن باید نسبتاً آسان باشد، به‌ویژه اگر جلوه‌های صوتی را دوست داشته باشید که حدود نیم ثانیه دیرتر از زمانی که انتظارشان را دارید پخش می‌شوند. .PP تنها متغیرهای شناسایی‌شده در حال حاضر \fIsoundDirectory\fP و \fIsoundCmd\fP هستند. مطمئناً می‌توانید متوجه شوید که چه کاری انجام می‌دهند. .SH "گزینه‌ها (OPTIONS)" .TP 8 .B \-help پیام راهنمای استفاده را چاپ می‌کند که به مراتب به‌روزتر از هر چیزی در این صفحه راهنما است. .TP 8 .B \-cfg \fIfile\fP فایل پیکربندی مورد نظر برای خواندن را مشخص می‌کند. اگر هیچ فایل پیکربندی مشخص نشود، .I xkbevd به ترتیب به دنبال ~/.xkb/xkbevd.cf و $(LIBDIR)/xkb/xkbevd.cf می‌گردد. .TP 8 .B \-sc\ \fIcmd\fP دستور مورد استفاده برای پخش صداها را مشخص می‌کند. .TP 8 .B \-sd\ \fIdirectory\fP دایرکتوری سطح بالا را برای فایل‌های صوتی مشخص می‌کند. .TP 8 .B \-display\ \fIdisplay\fP نمایشگر مورد استفاده را مشخص می‌کند. در صورت عدم وجود، .I xkbevd از متغیر محیطی $DISPLAY استفاده می‌کند. .TP 8 .B \-bg به .I xkbevd می‌گوید که یک زیرفرایند ایجاد کند (fork شود و در پس‌زمینه اجرا گردد). .TP 8 .B \-synch همگام‌سازی تمامی درخواست‌های X را اجباری می‌کند. کند است. .TP 8 .B \-v اطلاعات بیشتری از جمله پیام‌های اشکال‌زدایی چاپ می‌کند. درج چندباره گزینه .B \-v تا حدی باعث افزایش حجم خروجی می‌شود. .TP 8 .B \-version نسخه برنامه را چاپ کرده و خارج می‌شود. .SH "همچنین ببینید (SEE ALSO)" .BR xev (1), .BR xkbwatch (1), .BR X (7). .SH "نویسنده (AUTHOR)" Erik Fortune, Silicon Graphics