应用程序扩展和快捷方式
本页概述了可以使用Pythonista脚本扩展iOS,其他应用和Pythonista本身的各个地方。
大多数功能可以通过点击编辑器中的“扳手
”按钮,然后选择“Shortcuts
”进行可以访问。
Pythonista键盘
Pythonista键盘是一个自定义的屏幕键盘,您可以在具有可编辑文本的任何应用程序中使用。键盘包含一个Python解释器,因此您可以运行用于操纵文本的脚本,而无需启动主Pythonista应用程序。脚本可以在应用程序中插入文本,进行选择,甚至显示完全自定义的用户界面。
请注意,Pythonista键盘并非旨在取代您的所有写作的系统键盘,它更像是表情包键盘,即您通常会短暂切换到该键盘以运行脚本,然后再切换回系统键盘(或任何其他自定义键盘)来完成大部分输入操作。尽管键盘确实包含标准的QWERTY布局,但没有任何类型的自动更正或键入建议,因此它实际上不适合用于长文本输入。
为了让您大致了解键盘的功能,初始内置了几个样例脚本。
如何使用
要开始使用键盘,请点击并按住系统键盘上的“地球
”键,然后选择“键盘设置...
”。从那里,选择“键盘>添加新键盘...
”。您应该在可用键盘列表中找到“Pythonista
”。
添加键盘后,您可能还希望启用“完全访问
”选项,否则脚本将无法使用某些功能(例如,编写可被主应用读取的文件或访问网络)。不过,通常可以在未启用完全访问权限的情况下使用键盘。
启用键盘后,您可以随时使用“地球
”键切换到该键盘。按住地球键时,您可以直接切换到任何键盘(无需通过点击来遍历所有键盘)。
通常,您可以执行大多数在主应用程序中运行的脚本所执行的操作,但是也有一些限制:
- 自定义用户界面仅在键盘内运行,无法覆盖整个屏幕。它们在显示视图的方式上也受到更多限制。
- 通常,资源也更加有限,如果脚本使用过多的内存(即使脚本在主应用程序中运行正常),键盘也可能“崩溃”。
提示:
- 点击并按住脚本快捷方式可编辑脚本或删除该快捷方式。
- 点击绿色键,将脚本快捷方式行扩展到整个键盘。这也将扩展该视图中显示的所有用户界面。
- 点击并按住地球键可直接切换到其他键盘,而无需浏览所有其他键盘。
keyboard
模块包含用于处理文本输入和键盘的函数。您可以使用它来插入文本,移动光标,获取选定的文本等等。- Python标准库包含许多用于处理和转换文本的模块,在自定义键盘中使用时可能会很有趣。查看Python标准文档的文字处理服务页面以获取概述。
- 查看内置的示例脚本,以了解使用可编程脚本键盘能做哪些事情。
更多信息
- keyboard模块
- ui模块
共享扩展表单
使用Pythonista共享扩展表单,您可以从支持标准iOS共享表单的其他应用程序(例如Safari,相册,备忘录)运行脚本,同样也包括第三方应用程序(包括Pythonista本身)。
您的脚本可以访问共享表单的输入数据,例如Safari中的URL或相册中的图像。
如何使用
要启用Pythonista共享扩展表单,只需在受支持的应用程序中共享某些内容,例如Safari或Pythonista本身。在动作列表中向下滚动(或在iOS 12及更早版本上侧滚)以找到“Run Pythonista Script
”操作。如果尚未在列表中,请点击“更多...
”(在iOS 12上)或“编辑操作...
”(在iOS 13+上)。
共享表单脚本的提示
- 您可以使用
appex
模块中的各种功能来访问共享表单的输入数据,例如appex.get_url()
,获取URL(例如,在Safari中),appex.get_text()
获取文本(例如,备忘录),appex.get_image()
获取共享照片等。 - 您可以使用
appex.finish()
功能以编程方式关闭共享表单。 - 共享扩展表单包含一个交互式控制台,因此您也可以交互式地处理输入数据,而无需编写完整的脚本。
- 如果要处理共享扩展表单中的图像,可以使用
PIL
(用appex.get_image()
)或ui
(用appex.get_ui_image()
)。虽然PIL
是跨平台的,但ui
模块提供了更高质量的矢量绘图,并且通常更轻便。 - 与所有应用程序扩展一样,运行资源比主应用程序更受限制(由于内存限制,这很可能导致“崩溃”),并且共享扩展表单程序在单独的进程中运行。某些模块仅在主应用程序中受支持,例如
editor
模块。
更多信息
- appex模块
- clipboard模块
- ui模块
- PIL模块
编辑器动作
您可以点击“扳手
”按钮弹出编辑器操作的扩展窗口,因此您可以在编辑代码时运行脚本或查看其他文件。
每个编辑器操作可以具有自定义图标/颜色,并且您可以从同一脚本创建多个操作而传递不同的命令行参数。
编辑器操作对于使用editor
模块的脚本(用于为文本编辑器编写脚本)特别有用,但是它们也可以是您希望快速访问的任何内容。
“Reset Environment
”选项决定在运行脚本之前是否删除全局变量等。通常,在运行脚本之前会重置运行时环境,但是如果编辑器操作与调试相关,则将变量与最后运行的脚本保持一致可能会很有用。
更多信息
主屏幕图标
这使您可以添加自定义主屏幕图标以启动Pythonista脚本。从技术上讲,这些主屏幕图标只是Safari书签,但它们确实可以离线工作。
在iOS 13及更高版本上,您可能想使用快捷指令应用程序中的主屏幕快捷指令作为替代。您可以从快捷指令应用程序通过打开pythonista://
URL来启动Pythonista (请参见下文)。
Pythonista URL
使用Pythonista URL生成器,您可以轻松生成用于从其他应用程序启动或打开脚本的pythonista3://
URL。您还可以生成带有嵌入URL的二维码,可以通过iOS相机应用程序对其进行扫描来触发执行。
Pythonista的URL Scheme支持允许各种自动化,包括从快捷指令应用程序或第三方自动化工具启动脚本。
有关如何使用Pythonista URL的更多信息,请参阅Pythonista URL Scheme参考。
您还可以使用该shortcuts
模块以编程方式生成Pythonista URL 。
更多信息
- webbrowser模块
- shortcuts模块
- Pythonista URL Scheme