JTV (как и любая
аналогичная программа) взаимодействует с пользователем через устройства
ввода: клавиатуру, мышь или пульт дистанционного управления (ПДУ).
Особенностью JTV является то, что привязки команд JTV к клавишам
вынесены в отдельный текстовый файл KEYS.TXT, который легко редактировать,
но также легко и 'испортить' по неосторожности. В этот файл включены
привязки и к кнопкам ПДУ, и к клавишам клавиатуры.
Набор клавиш клавиатуры стандартен и, если нет большого желания
переделывать все под себя, можно пользоваться 'стандартными' привязками,
которые вам достались в комплекте JTV. Но вот набор кнопок конкретного
ПДУ может отличаться от того, для которого был настроен этот файл,
что создает уже некоторые проблемы. Типичной проблемой, вызванной
таким несоответствием, является невозможность нормального управления
JTV с ПДУ, хотя на закладке 'Diagnostics' в JTVRemote все кнопки
отображаются правильно.
Автор JTV предусмотрел частичное решение этой проблемы и ввел
понятие 'общих' кодов кнопок (клавиш), которые заведомо присутствуют
и могут быть определены (и активизированы через драйвер) в любом
ПДУ, но их набор ограничен. Отсюда
понятно, что содержимое файла KEYS.TXT может сильно отличаться
в разных комплектах JTV. Поэтому все нижеизложенное относится
к комплекту jtv3w126.zip,
с сайта http://jtvhost.chat.ru
и к файлу keys.txt из этого комплекта.
По замыслу, редактирование
и сохранение файла KEYS.TXT должно было быть возможно изнутри
JTV через пункт 'Клавиши...' (Alt-F9) главного меню JTV, в приведенном
ниже окне редактора привязок.
Как
видно на этой картинке, предусматривалась возможность привязки
к команде и клавиш клавиатуры (Клавиша...), и кнопок ПДУ (Пульт...).
Однако функция редактирования до конца не реализована. В этом
окне можно только просмотреть уже существующие привязки команд
JTV к клавишам, а редактировать ничего нельзя: файлы отката (KEYS0.TXT,
KEYS1.TXT, ...) исправно создаются, а в файл KEYS.TXT ничего не
записывается.
Вместе с тем, это окно полезно для просмотра и контроля правильности
введенных вручную привязок, а также правильности написания команд
JTV и просмотра схем раскладок и наименований кнопок ПДУ (Пульт...).
Правила привязки
команд к клавишам (кнопкам) очевидны; можно назначить одной команде
несколько клавиш и кнопок ПДУ, важно только чтобы одна и та же
клавиша (кнопка) не назначались разным командам в одной группе
команд.
Например, как видно на картинке, клавиша "T"
присвоена команде Main.Teletext.Show в группе
Main.
Если присвоить эту же клавишу команде Main.TVGuide.Show,
то это будет ошибкой, поскольку команда входит в ту же группу
Main, а если присвоить ее команде Teletext.Cycle,
то все верно, поскольку команда входит в другую группу - Teletext.
Другие назначенные клавиши для этих двух команд тоже продублированы.
Таким образом, и
для включения/отключения режима Телетекст и для перебора возможных
вариантов его отображения используются одни и те же клавиши (кнопки),
что вполне удобно и логически оправдано.
Однако включить режим
Телетекст с ПДУ можно будет лишь в том случае, если в драйвере
ПДУ будет определена кнопка "Key_Teletext". При этом
неважно, есть ли кнопка с таким названием на ПДУ, достаточно чтобы
имя кнопки было присвоено, при создании драйвера, любой из реально
имеющихся. На ПДУ AVerMedia TVPhone98 w/VCR, для которого и настраивался
данный файл KEYS.TXT, такая кнопка есть.
Названия
кнопок, определенные при создании конкретного файла драйвера ПДУ
зашиты в него, и их всегда можно посмотреть на закладке "Diagnostics"
пункта "Конфигурация" в меню JTVRemote, как это видно
на 2-ой приведенной картинке.
В драйвере ПДУ AVerMedia
TVPhone98 w/VCR определены, среди прочих, показанные на картинке
кнопки, в том числе и "Key_Teletext".
Приведенные в скобках вторые названия кнопок, там где они есть,
отражают "общие" коды кнопок, которые являются синонимами,
дубликатами основного названия. Их можно использовать в файле
KEYS.TXT вместо основных наименований.
Имена "общих"
кодов зашиты в исполняемые файлы программы и не могут быть изменены.
К ним относятся: 0, 1, ..., 9, Power, Recall, VolumeUp, VolumeDown,
ChannelUp, ChannelDown, Left, Right, Enter, Up, Down, NextLinear,
PrevLinear. Визуально, при отображении схемы раскладки ПДУ (Пульт...),
они обозначаются графическими символами, которые появляются на
соответствующих кнопках пульта.
Схемы раскладок ПДУ хранятся в текстовых .RCU-файлах в подкаталоге
\Remote. Они предназначены только для визуализации схем раскладок
ПДУ и создаются вручную при создании соответствующего драйвера
ПДУ. Редактировать их ни к чему; это имеет смысл делать только
в случае создания нового файла раскладки на основе уже существующего.
Очевидно, что бессмысленно определять
кнопку "Key_Teletext" для драйвера ПДУ где ее реально
нет (например, в ПДУ FlyVideo 98), лучше просто присвоить, при
необходимости, одну из реально существующих, например "Key_Esc",
команде Main.Teletext.Show, соответственно отредактировав
файл KEYS.TXT. В данном примере
строку файла
Main.Teletext.Show,REMOTE:Key_Teletext
можно заменить на
Main.Teletext.Show,REMOTE:Key_Esc,
или даже добавить ее к исходной:
Main.Teletext.Show,REMOTE:Key_Teletext
Main.Teletext.Show,REMOTE:Key_Esc.
Таковы общие правила использования и редактирования файла привязок
KEYS.TXT.
Относительно конкретной
реализации файла, включенного в упомянутый комплект, можно сказать
следующее: все очень индивидуально, однако общие соображения,
вероятно, могут быть полезны. Очевидно, что чем полнее и логичнее
выполнены привязки команд к клавишам, тем удобнее пользоваться
программой. С другой стороны, каждый имеет свои привычные предпочтения
как в составе задействованных клавиш клавиатуры, так и кнопок
ПДУ. Приводить полный перечень привязок команд к клавишам, как
мне кажется, не имеет смысла. Каждый может просмотреть файл KEYS.TXT
или в текстовом редакторе, или в редакторе привязок JTV. Приведу
лишь примеры для лучшего понимания вопроса.