| lirc-config-tool(1) | General Commands Manual | lirc-config-tool(1) |
نام (NAME)
lirc-config-tool - ابزاری برای بررسی و ایجاد فایلهای پیکربندی lirc
خلاصه دستور (SYNOPSIS)
lirc-config-tool -s|-u [ -c FILE]
lirc-config-tool [-o DIR] [-d] [-c
FILE] [FILES]
lirc-config-tool -l
گزینهها (OPTIONS)
بدون مشخص کردن گزینهها، تمام فایلهای lircrc مخصوص برنامهها در ~/.config/lirc ایجاد میشوند. آرگومان اختیاری [files] فهرستی از فایلها برای ساخت یا استخراج قالب است، همانطور که توسط گزینه -l فهرست شدهاند.
- -s
- بررسی فایل lircd برای نمادهای کلیدی تکراری یا نمادهایی که در فضای نام (namespace) استاندارد وجود ندارند.
- -u
- بهروزرسانی فایل lircd موجود جهت استفاده از نمادهای کلیدی استاندارد در فضای نام.
- -l
- فهرست کردن فایلهای موجود قابل تولید.
- -d
- تخلیه و چاپ قالبهای فایل در خروجی استاندارد (stdout) بهگونهای که در ورودی استاندارد (stdin) قابل استفاده باشند.
- -o <dir>
- دایرکتوری خروجی؛ پیشفرض: ~/.config/lirc
- -c <lircd-filename>
- فایل پیکربندی lircd(8)؛ پیشفرض: /etc/lirc/lircd.conf
- -h
- چاپ پیام راهنما
توضیحات (DESCRIPTION)
این اسکریپت برای کمک به راهاندازی و تنظیم فایلهای پیکربندی lirc(8) برای کنترلهای از راه دور (ریموت کنترلهای) معمولی طراحی شده است. هدف این اسکریپت کار با صفحهکلیدهای کامل یا دستههای بازی (جویاستیک) نیست. فایلهای lircrc تولیدشده یک نقطه شروع محسوب میشوند که به بهینهسازیها و ویرایشهای دستی بیشتری نیاز دارند، اما در بسیاری از موارد میتوانند عملکرد پایه را فراهم کنند.
فرایند راهاندازی شامل استانداردسازی (نرمالسازی) فایل lircd.conf برای استفاده از نمادهای موجود در فضای نام مجاز، و ایجاد فایلهای lircrc مخصوص هر برنامه است که از این نمادهای نرمالشده استفاده میکنند.
برای کمک به نرمالسازی /etc/lircd.conf، این اسکریپت میتواند نمادهای بهکاررفتهای را که در فضای نام معتبر نیستند گزارش کند. همچنین میتواند بسیاری از این نمادها را به نمادهای متناظر و معتبر در فضای نام بهروزرسانی نماید.
این اسکریپت همچنین قادر است فایلهای lircrc مخصوص برنامهها مانند mythtv.lircrc یا vlc.lircrc را بسازد. در این فرایند از نمادهای کلیدی نرمالشده در /etc/lirc/lircd.conf استفاده میشود. بهطور پیشفرض، فایلها در مسیر ~/.config/lirc ایجاد میشوند.
فایلهای lircrc تولیدشده اساساً کلیدهای شناختهشده از /etc/lirc/lircd.conf را با دادههای قالب مربوط به یک برنامه ترکیب میکنند. خروجی این فرایند یک فایل lircrc، فهرستی از کلیدهای استفادهنشده و ورودیهایی است که با هیچ کلید موجودی مطابقت ندارند. کلیدهای استفادهنشده و موارد بدون تطابق بهصورت کامنت در فایل تولیدشده درج میشوند.
یک کلید «غیرمجاز» (کلیدی که در فضای نام استاندارد نیست) با هیچ ورودی مطابقت نخواهد یافت و بنابراین همیشه استفادهنشده باقی میماند. با این حال، میتوانید بعداً هنگام ویرایش دستی فایلهای lircrc بهراحتی از آن استفاده کنید.
هنگام بهروزرسانی فایلها، اسکریپت همواره نسخههای پشتیبان (Backup) تهیه میکند.
فایلهای lircrc تولیدشده برای فراخوانی و گنجانده شدن در فایل اصلی ~/.config/lircrc در نظر گرفته شدهاند. یک نمونه حداقلی میتواند به این صورت باشد:
-
include ~/.config/lirc/mythtv.lircrc
مثالها (EXAMPLES)
بررسی /etc/lirc/lircd.conf برای نمادهای تکراری و نمادهای خارج از فضای نام:
- lirc-config-tool -s
بهروزرسانی یک فایل محلی lircd.conf جهت استفاده از نمادهای استاندارد فضای نام:
- lirc-config-tool -uc ./lircd.conf
فهرست کردن فایلهای موجود برای تولید:
- lirc-config-tool -l
ایجاد یکی از فایلهای فهرستشده با -l (فایل ~/.config/lirc/mythtv.lircrc را میسازد):
- lirc-config-tool mythtv
تخلیه دادههای قالب مربوط به mythtv:
- lirc-config-tool -d mythtv >mythtv.lircdata
استفاده از دادههای احیاناً ویرایششده برای ایجاد یک mythtv.lircrc سفارشی در دایرکتوری جاری:
- lirc-config-tool -o . stdin < mythtv.lircdata
تبدیلهای LIRCD.CONF (LIRCD.CONF CONVERSIONS)
گزینه -s صرفاً تمامی نمادهای کلیدی خارج از فضای نام را گزارش میدهد. همچنین برخی نمادها را که اگرچه معتبرند اما در این زمینه نامناسب به شمار میروند (بهویژه KEY_NUMERIC_0 تا KEY_NUMERIC_9)، گزارش میکند. کلیدهای تکراری نیز در صورت وجود گزارش میشوند.
گزینه -u چندین نماد شناختهشده را به نمادهای متناظر KEY_* تبدیل میکند. نمادهایی که نامهایی مانند KEY_WINDOWS دارند اما در فضای نام قرار ندارند، پیشوند X_ دریافت میکنند (برای مثال KEY_WINDOWS -> X_KEY_WINDOWS). بنابراین فایل تبدیلشده تضمین میکند هر نماد کلیدی که با KEY_ شروع میشود یک نماد معتبر است.
تمامی کلیدهای عددی شناختهشده مانند '1'، 'KEY_1'، 'KEY_KP_1' و 'KEY_NUMERIC_1' به KEY_1 تبدیل میشوند.
تمامی تغییرات با کامنت در فایل مشخص میشوند.
توسعهپذیری (EXTENDING)
میتوان با ارائه یک تابع شل با نام *.lircdata، این اسکریپت را برای پشتیبانی از برنامههای بیشتر توسعه داد. به عنوان مثال، برای افزودن یک برنامه جدید به نام "my_app" بر پایه برنامه پیشساخته vlc:
$ lirc-config-tool -d vlc >my_app.lircdata
$ function my_app_lircdata()
> {
> cat my_app.lircdata
> }
$ export -f my_app_lircdata
$ lirc-config-tool my_app
قالب دادهها (DATA FORMAT)
این اسکریپت از یک قالب خطمحور ساده برای نمایش فایلهای lircrc استفاده میکند. هدف از این قالب، کمحجم بودن و در نتیجه ارائه دید کلی مناسب و همچنین تحلیل و پارس آسان است. هر خط به نشانههایی (tokens) که با کاما از هم جدا شدهاند تقسیم میشود. چهار نوع خط وجود دارد:
خطوط کامنت که با '#' آغاز میشوند. این خطوط عیناً در فایل خروجی کپی میشوند.
اولین خط داده، موارد عمومی و سراسری را مشخص میکند که برای تمام ورودیها اعمال میشوند. کلمه اول نام برنامه است و در اولین خط 'program=' استفاده میشود. کلمات بعدی (در صورت وجود)، خطوط اختیاری هستند که به انتهای هر ورودی در فایل افزوده خواهند شد.
یک خط داده که با 'begin' یا 'end' شروع شود، مشخصکننده بلوک حالت (mode block) است و عیناً در فایل خروجی کپی میشود.
تمام خطوط
داده دیگر
نشاندهنده
یک ورودی
کلید/تنظیمات
(button/config) هستند.
قالب به این
صورت است:
<button> <config> [extra]...
مقدار button در
خط button = و مورد config
در خط config =
استفاده
میشود؛
درج هر دو
الزامی است.
موارد بعدی
(در صورت
وجود) عیناً
به عنوان
خطوط اضافی
به ورودی
کپی
میشوند.
یک مثال از این قالب داده:
myprog, flags = quit
begin volume_mode
KEY_VOLUMEUP, volume-up, delay=4, repeat=1
KEY_VOLUMEDOWN, volume-down
end volume_mode
به شکل زیر تبدیل میشود:
begin volume_mode
begin
program = myprog
button = KEY_VOLUME_UP
config = volume-up
delay = 4
repeat = 1
flags = quit
end
begin
program = myprog
button = KEY_VOLUME_DOWN
config = volume-down
flags = quit
end
end volume_mode
حق نشر (COPYRIGHT)
مجوز GPLv2+: گنو GPL نسخه ۲ یا بالاتر http://gnu.org/licenses/gpl.html. این نرمافزار آزاد است: شما مجاز به تغییر و بازتوزیع آن هستید. هیچگونه ضمانتی وجود ندارد، تا حدی که قانون اجازه میدهد.
همچنین ببینید (SEE ALSO)
lircd(8)
http://www.lirc.org -
مستندات
اصلی lirc
| Aug 2015 | User Commands |