Map non-standard hid reports to scancodes for Logitech G105 Gaming Keyboard

Многие ответили хорошо. Я хочу лишь дополнить эти ответы. Я думаю, что философия UNIX состоит в том, что инструмент должен делать одно и делать это хорошо. Если кто-то пытается создать всеобъемлющий инструмент, у него гораздо больше возможностей для неудачи. Такое ограничение функциональности делает набор инструментов надежным.

Также учтите, что если бы в оболочку были встроены такие функции, как sed или grep , было бы так же легко вызывать из командной строки, когда вам это нужно?

В заключение учтите, что некоторые функции, которые вы хотите иметь в BASH, находятся в BASH . Например, возможность сопоставления RE в BASH реализована с помощью бинарного оператора = ~ (см. Грамматику оболочки на странице руководства для более подробной информации, в частности, обратитесь к обсуждению [[[ ]] для , если ). В качестве очень быстрого примера скажем, что я ищу в файле две шестнадцатеричные цифры:

while read line; do
    if [[ $line =~ 0x[[:xdigit:]]{2} ]]; then
        # do something important with it
    fi
done < input_file.txt

Что касается sed-подобных функциональности, посмотрите в разделе «Расширение параметров» в заголовок «Расширение» та же справочная страница. Вы увидите множество вещей, напоминающих sed. Чаще всего я использую sed, чтобы изменить тип подстановки текста. Основываясь на вышеизложенном:

# this does not take into account the saving of the substituted text
# it shows only how to do it
while read line; do
    ${line/pattern/substitution}
done < input_file.txt

В конце концов, "лучше" ли вышеперечисленное, чем?

grep -E "[[:xdigit:]]{3}" input_file.txt
sed -e 's/pattern/substitution/' input_file.txt

1
13.11.2015, 03:29
1 ответ

Теперь существует драйвер Linux для клавиатуры Logitech G105, он называется sidewinderd и доступен на github .

2
27.01.2020, 23:36

Теги

Похожие вопросы