keyboard — Pythonista键盘工具集
简介
keyboard
模块提供了用于扩展自定义Pythonista键盘(“PyKeys”)的各种功能。
Pythonista键盘是一个自定义的屏幕键盘,您可以在iOS上几乎任何可以编辑文本的应用程序中使用。您可以使用自己的脚本来扩展此键盘,例如,用于插入文本片段,甚至在QWERTY键盘中或上方提供完全自定义的UI(ui.View
)。此自定义UI可以显示其他按钮等,并且还可以对文档中的更改或选择做出反应。
如果您为键盘脚本实现了自定义视图/ UI,则在某些与文本输入相关的事件发生时,也可以通过用户移动光标或使用内置QWERTY布局上的键来得到通知。为此,可以在自定义ui.View
子类中实现以下任何回调方法:
1 | import keyboard |
自定义键盘UI的各种示例随Pythonista一起包含在Examples>Keyboard
文件夹中。
注意:您可以在Pythonista快捷方式页面上找到有关如何启用和使用键盘的更多信息。
函数
keyboard.backspace(times=1)
向后删除当前文档(模拟退格键)。本次参数确定有多少个字符,在一次被删除。
keyboard.get_appearance()
返回键盘的当前外观(’dark
‘或’light
‘)。
keyboard.get_document_id()
返回键盘正在键入的当前文档的唯一标识符(UUID)。该标识符是任意/随机的,不包含有关文档的任何信息,但是您可以使用它来检测用户何时键入其他文档。
keyboard.get_input_context()
返回两个字符串的一个2元组,其为紧接在光标之前和之后的文本。
keyboard.get_selected_text()
返回当前选择的文本。如果没有选择文本,则为空字符串。
警告:如果选择了两行以上或大约1000个字符,则该函数的返回值将在中间被截断。不幸的是,从技术上讲不可能阻止这种情况(这是系统限制),并且也无法检测到截断。
如果所选文本包含多行,则通常不应使用此函数的返回值替换所选文本。
keyboard.get_text_replacements()
返回您在全局键盘设置中定义的文本替换列表(设置应用:通用>键盘>文本替换)。每个文本替换都是两个字符串(短语,快捷方式)的元组。
仅在Pythonista键盘中运行时才支持此功能。在其他情况下,返回None
。
keyboard.has_full_access()
如果为键盘启用了“完全访问”选项,则返回True
,否则返回False
。
许多事情都需要“完全访问”,例如,任何网络访问,剪贴板,将文件写入主应用程序。
keyboard.has_text()
如果键盘正在编辑的文档(文本字段)包含任何文本,则返回True
;如果为空,则返回False
。
keyboard.insert_text(text)
在键盘正在编辑的当前文档(文本字段)中插入文本。
keyboard.is_keyboard()
如果脚本在自定义Pythonista键盘中运行,则返回True
,否则返回False
。
可以将这些脚本用于行为不同的脚本,具体取决于它们是在键盘上运行还是在主应用程序中运行。
keyboard.move_cursor(offset)
将光标移动指定的偏移量(正整数或负整数)。
keyboard.play_input_click()
播放输入点击声音(如果用户启用了此声音)(可以在全局键盘设置中关闭输入点击声音),并且设备不为静音。
keyboard.set_view(view=None, mode=’current’)
将自定义ui.View
设置为键盘的UI,可以在QWERTY布局上方(mode = 'minimized'
)或填充键盘的大部分区域(mode = 'expanded'
)。使用mode = 'current'
时,保持活动模式(您可以通过点击绿色的“快捷方式”键手动切换)。
您可以给view
传None
以关闭当前视图。
请参见简介以了解更多回调函数的信息,使你可以在自定义UI中实现以获取有关文本输入事件的通知。