跳转到主要内容

一款用于记录和描述键盘快捷键的命令行工具和Python库。

项目描述

ksc

一款用于以标准化和正确格式记录和描述键盘快捷键的命令行工具。

该程序名称是 (k)eyboard (s)hort(c)ut 的缩写。

灵感来源于并改编自Brett Terpstra的 Jekyll的kbd插件

以下是一些示例

$ ksc -ms -p command shift %
⇧+⌘+5
$ ksc -y command shift option control t
Hyper-T
$ ksc control +
Control-Shift-+
$ ksc ⌘⇧F
Shift-Command-F

安装

您需要Python 3。使用pip进行安装

$ pip install ksc

指定键盘快捷键

此程序最简单的调用有一些作为参数的键盘快捷键描述。接受许多输入变体。大小写不重要。您可以使用修饰键名称和缩写,如 Commandopt。您可以使用修饰键符号,如 。您可以使用在 Cocoa文本系统键绑定 中使用的ASCII符号作为修饰符。

键可以是键盘上的任何字母或符号。此外,您还可以输入键的名称,例如escreturnhomepageuprightarrowF5eject。您尝试的大部分内容都应该可以正常工作。如果不行,请提交一个问题,我会添加它。以下是一些示例

$ ksc command b
Command-B
$ ksc shift F2
Shift-F2
$ ksc fn f10
Fn-F10
$ ksc command-option-rightarrow
Option-Command-Right Arrow
$ ksc command shift %
Shift-Command-5
$ ksc $~r
Option-Shift-R
$ ksc ⇧⌘P
Shift-Command-P

可以通过用/|(斜杠或竖线周围的空格是必需的)分隔来输入多个键盘快捷键的序列。

$ ksc control x / control c
Control-X Control-C

如果您有一系列多个键盘快捷键,并且第一个快捷键包含斜杠,您可以通过用-连接快捷键的元素来明确快捷键。

$ ksc command-/ / control-f
Command-/ Control-F

除了友好的修饰符名称之外,您还可以使用表示修饰符的Unicode符号或ASCII符号输入键盘快捷键。ASCII符号与苹果在Cocoa文本系统键绑定中使用的符号相同。

修饰符 Unicode ASCII
控制 ^
选项 ~
Shift $
命令 @

获取帮助

您目前正在阅读此程序的说明。您可以使用帮助命令行选项查看简要总结

$ ksc -h

自定义输出

输出是根据苹果的样式指南标准化的(见下文),包括修饰符、键的名称、大小写、移位符号和字符的解释,以及如果有多个修饰符,则修饰符的顺序。

有几个命令行选项可以修改输出。使用-ms--modifier-symbols选项以Unicode符号的形式输出修饰符

$ ksc -ms shift command u
⇧⌘U

苹果建议您在符号之间包含加号,但我认为这样看起来不好看,所以这不是默认设置。如果您需要它,请在使用-ms时添加-p--plus-sign

$ ksc -ms -p shift command u
⇧+⌘+U

您还可以使用-ma--modifier-ascii选项以修饰符的ASCII表示形式输出修饰符符号

$ ksc -ma shift command u
$@U

使用-k--key-symbols参数将所有键以它们的符号而不是它们的名称输出。在结合使用-ms时最有意义

$ ksc -ms -k control option pageup
⌃⌥⇞

使用-c--clarify-keys将一些不太易读的键以名称和符号的形式输出,而不是仅以符号形式输出。如果使用-k,则忽略此设置。以下是使用-c时的差异

$ ksc command .
Command-.
$ ksc -c command .
Command-Period (.)

显示键盘

T8之类的字母数字键很容易识别和理解。然而,您可能不知道其他键的名称和符号。您可以通过以下方式获取列表:

$ ksc -l

键盘大师

我创建了一个简单的键盘大师宏,允许您在Mac上任何可以输入的地方使用ksc。我设置了一个输入触发器,当我在键盘上输入;ksc时,键盘大师会提示我输入。我输入我想要的键盘快捷键,然后键盘大师运行脚本,捕获输出,然后将输出输入到我的光标所在位置。

Keyboard Maestro Macro for Keyboard Shortcut

下载键盘快捷键宏以用于键盘大师。

阿尔弗雷德

如果您使用阿尔弗雷德,则有一个键盘快捷键工作流程,它使用命令行程序。工作流程包括ksc片段触发器。如果您的片段前缀是//,则可以输入//ksc,阿尔弗雷德将提示您输入,您可以在其中输入键盘快捷键的文本表示。阿尔弗雷德将在光标位置粘贴标准化的版本。

下载键盘快捷键工作流程以用于阿尔弗雷德。

超键

使用Karabiner ElementsBetterTouchTool,您可以设置Caps Lock-T键与按下Control-Option-Shift-Command-T相同。Mac爱好者称之为Hyper键。在输入快捷键时,您始终可以使用hyper作为修饰键。

$ ksc hyper-t
Control-Option-Shift-Command-T

如果您提供了-y--hyper命令行选项,当合适时,您会在输出中得到一个Hyper键。

$ ksc -y control option shift command t
Hyper-T
# ksc -y hyper t
Hyper-T

技巧和窍门

  • 您可以使用以下方法轻松获取键的Unicode符号并将其复制到剪贴板(在MacOS上):

    $ ksc -k home | pbcopy
    
  • 由于波浪线字符~既可以表示Option键,也可以表示Shift-Grave,以下输入是模糊的:

    $ ksc '$@~'
    

    注意单引号可以保护所有这些特殊字符不被您的shell解释。这可能意味着Shift-Command-~,这是有效的,或者Shift-Command-Option,这是无效的,因此这个输入会导致解析错误。您可以使用以下方法来澄清:

    $ ksc command tilde
    Shift-Command-~
    

    或者

    $ ksc -c shift command grave
    Shift-Command-Tilde (~)
    

苹果风格

此程序实现了在苹果风格指南中定义的“键,键”的规则。它们的深链接不是语义化的,似乎容易更改,所以您只需搜索即可。

如果您严格遵循风格指南,截图的快捷键将是Command-Shift-%。然而,苹果从未这样称呼它,它们使用Command-Shift-5。请参阅在Mac上截图或屏幕录制。这似乎是不成文规则:如果快捷键包括数字键和Shift键,则显示数字而不是符号。

苹果的人机界面指南与风格指南冲突

例如,帮助的快捷键是Command-Question mark (?),而不是Shift-Command-Slash。

根据风格指南,应该是Command-Shift-Question mark

此程序实现了风格指南以及不成文规则,并忽略了HIG中的冲突。

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

ksc-1.2.3.tar.gz (183.7 kB 查看哈希值)

上传时间 源代码

构建分发

ksc-1.2.3-py3-none-any.whl (15.1 kB 查看哈希值)

上传时间 Python 3

支持者

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面