览 (SYNOPSIS)

showkey [ -[hVskm] | --help | --version | --scancodes | --keycodes | --keymap ] [ -t N | --timeout=N ]

描述 (DESCRIPTION)

按下/松开 任一个 键 时, showkey 在 标准输出 显示 对应的 扫描码(scan code), 键盘码(keycode), 或者 字符值. 如果 连续 10 秒钟 没发生 按下/松开 按键 事件 (该值 可用 --timeout-t 设置), 本程序 自动 结束. 来自 其他进程 的 某些 信号 也可以 结束 程序, 例如 SIGTERM.

showkey 有 三种 操作模式, 显示 扫描码, 键盘码, 以及 测试 键盘映射(keymap), 可以 通过 命令行选项 选择 操作模式.

命令 (COMMAND)

-h, --help
showkey 在 标准错误 上 显示 版本号, 简短 的 用法, 然后 结束.

-V, --version
showkey 在 标准错误 上 显示 版本号, 然后 结束.

-s, --scancodes
显示 扫描码.

在 这个模式 下, showkey 以 十六进制数 形式 显示 来自 键盘 的 每个 字节. 如果 两个 字节 间隔达到 0.1 秒, 或者 接收缓冲 已满, showkey 就 输出 一个 换行符. 可以 用它 大致 确定 某个键 按下 时, 键盘 输出 什么 字节序列. 扫描码模式 主要 用来 调试 键盘驱动程序, 或者 其他 类似的 低层 接口. 终端用户 对它 不太有 兴趣.

-k, --keycodes
显示 键盘码. 这是 缺省模式.

在 这个模式 下, showkey 显示 每个键 按下 或 松开 时 对应的 键盘码. 键盘码 是 内核 分配给 每个 物理 按键 的 数值. 无论 键盘 输出 单个 还是多个 扫描码, 每个 按键 只能 对应 一个 键盘码. 使用 这个模式, 当 用户 制作自己的 键盘映射文件 时, showkey 能够 查出 所需的 数值.

-m, --keymap
显示 键盘映射.

在 这个模式 下, showkey 显示 内核 根据 当前 键盘映射表 翻樊伟胜译 出来 的 字符. 它 可能 对 安装程序 的 作者 有用, 允许 用户 在 确认 安装 前 测试 新的 键盘.

选项 (OPTION)

-t N, --timeout=N
这个选项 用于 修改 超时值 (单位为秒), 取代 预设的 10 秒. 

showkey - 检查来自键盘的扫描码和键盘码的更多相关文章

  1. HTML5实现扫描识别二维码/生成二维码

    扫描识别二维码 思路: 1. 操作摄像头,获取图片.HTML5 WEBRTC的navigator.getUserMedia方法去实时获取摄像头资源.  2. 利用canvas使用相关算法分析图片识别图 ...

  2. Cesium专栏-雷达遮罩动态扫描(附源码下载)

    Cesium 是一款面向三维地球和地图的,世界级的JavaScript开源产品.它提供了基于JavaScript语言的开发包,方便用户快速搭建一款零插件的虚拟地球Web应用,并在性能,精度,渲染质量以 ...

  3. 微信小程序扫描普通二维码打开小程序的方法

    很久没有写博客了,之前换了一份工作,很久没有做Android开发了,现在转做前端开发了,记录一下遇到的问题及解决的方法. 最近做微信小程序开发,遇到一个需求,后台管理系统生成的问卷和投票会有一个二维码 ...

  4. EventBus源码解析 源码阅读记录

    EventBus源码阅读记录 repo地址: greenrobot/EventBus EventBus的构造 双重加锁的单例. static volatile EventBus defaultInst ...

  5. 第二节 EAN 8 码 / EAN 13 码

    EAN码的全名为欧洲商品条码(European Article Number),源於西元1977年,由欧洲十二个工业国家所共同发展出来的一种条码.目前已成为一种国际性的条码系统.EAN条码系统的管理是 ...

  6. 系统软键盘">Android在外接物理键盘时,如何强制调用系统软键盘?

    第一次写,写的不好请见谅 物理键盘映射过程: 手机/system/usr/keylayout/*.kl :内核将keyCode映射成有含义的字符串KeycodeLabels.h : framework ...

  7. 学习:二维码、QR码、J4L-QRCode、java

    开源码 Java 解码器(编码解码)下载:http://sourceforge.jp/projects/qrcode/downloads/28391/qrcode.zip Java QR Code O ...

  8. node.js Websocket实现扫码二维码登录---GoEasy

    最近在做一个扫码登录功能,为此我还在网上搜了一下关于微信的扫描登录的实现方式.当这个功能完成了后,我决定将整个实现思路整理出来,方便自己以后查看也方便其他有类似需求的程序猿些. 要实现扫码登录我们需要 ...

  9. C(++) Websocket实现扫码二维码登录---GoEasy

    最近在做一个扫码登录功能,为此我还在网上搜了一下关于微信的扫描登录的实现方式.当这个功能完成了后,我决定将整个实现思路整理出来,方便自己以后查看也方便其他有类似需求的程序猿些. 要实现扫码登录我们需要 ...

随机推荐

  1. spring中引入多个quertz 注意事项

    每一个独立的调取任务 需起不同的名字,否则只有最后一个调度起作用其他不起作用

  2. 【leetcode】905. Sort Array By Parity

    题目如下: 解题思路:本题和[leetcode]75. Sort Colors类似,但是没有要求在输入数组本身修改,所以难度降低了.引入一个新的数组,然后遍历输入数组,如果数组元素是是偶数,插入到新数 ...

  3. MyBatis框架之异常处理

    MyBatis框架定义了许多的异常类,之所以定义这么多的异常类,应该是将每一种异常情况都独立出来,这样在出现异常时,定位就很明确了.而我们平时写代码时,都是瞎搞一通,异常类大多也是随便定义,或者是使用 ...

  4. .NET Core 使用 nlog 进行日志记录

    1.运行环境 开发工具:Visual Studio 2017 JDK版本:.NET Core 2.0 项目管理工具:nuget 2.GITHUB地址 https://github.com/nbfujx ...

  5. 2018-2019 ACM-ICPC Brazil Subregional Programming Contest F. Music Festival

    题目:https://codeforces.com/gym/101908/problem/F 题意:给你n个舞台,每个舞台有很多个节目,每个节目有个开始时间,结束时间,价值,每个舞台至少出演过一个节目 ...

  6. JDK1.8中ArrayList的实现原理及源码分析

    一.概述 ArrayList是Java开发中使用比较频繁的一个类,通过对源码的解读,可以了解ArrayList的内部结构以及实现方法,清楚它的优缺点,以便我们在编程时灵活运用. 二.源码分析 2.1 ...

  7. Visual Studio Code - 调试 Node.js 代码

    官方的文档写的太好了!大家还是看参考资料吧. 参考资料: Debugging in Visual Studio Code Debug Node.js Apps using Visual Studio ...

  8. java常用排序

    1.冒泡排序 public static int[] bubble(int[] a){ for(int i=0;i<a.length-1;i++){ int tmp=0; for(int j=0 ...

  9. Asp.Net Core 第04局:依赖注入

    总目录 前言 本文介绍Asp.Net Core中默认的依赖注入(DI)模式. 环境 1.Visual Studio 2017 2.Asp.Net Core 2.2 开局 第一手:依赖注入说明 1.一个 ...

  10. 解决“/bin/bash^M: bad interpreter: No such file or directory”

    在执行shell脚本时提示这样的错误主要是由于shell脚本文件是dos格式,即每一行结尾以\r\n来标识,而unix格式的文件行尾则以\n来标识.  查看脚本文件是dos格式还是unix格式的几种办 ...