首页
/ PromptLab扩展中Action Script输入变量的使用技巧

PromptLab扩展中Action Script输入变量的使用技巧

2025-06-04 06:22:01作者:董斯意

在Raycast的PromptLab扩展开发过程中,开发者经常会遇到需要在Action Script中获取用户输入文本的需求。本文将通过一个实际案例,深入探讨PromptLab中变量传递的机制和最佳实践。

问题背景

当开发者创建自定义命令时,通常会设计一个AI处理流程:首先获取用户选中的文本(selectedText),经过AI处理后生成响应(response),最后可能需要将这些信息保存到文件中。在这个过程中,如何将初始输入文本传递给后续的Action Script成为了一个关键问题。

变量传递机制分析

PromptLab提供了两种主要的变量传递方式:

  1. 传统环境变量方式:通过$input变量传递,这种方式实际上获取的是通过QuickLink输入参数传递的文本,而不是模板中的{{selectedText}}值。

  2. 模板占位符方式:直接使用{{selectedText}}这样的占位符语法,这种方式会在脚本执行时动态获取当前的选中文本值。

技术实现对比

方式 优点 缺点 适用场景
$input变量 简单直接 只能获取QuickLink输入 简单命令处理
{{selectedText}}占位符 动态获取最新值 值可能随时间变化 需要精确获取输入文本的场景

最佳实践建议

  1. 对于需要精确获取初始输入文本的场景,推荐使用模板占位符方式,如/script.sh "{{selectedText}}" "$response"

  2. 注意时效性问题:占位符方式获取的是执行时的当前值,如果用户在AI处理过程中改变了选中文本,获取的值也会相应变化。

  3. 未来改进方向:PromptLab可能会改进这一机制,使Action Script能够访问发送给模型的原始占位符值,这将提供更一致的开发体验。

实际应用示例

以下是一个完整的英语文本校正命令实现示例:

# 提示词模板
"You are the English teacher. Try to fix typo, grammar and repeats for the text. Keep original meaning.

Input text: "{{selectedText}}"
As result, give only result text."

# 动作脚本
/save_corrections.sh "{{selectedText}}" "$response"

这种方式确保了原始输入文本和AI校正结果都能被准确记录,非常适合用于学习分析和内容存档等场景。

通过理解PromptLab的这些特性,开发者可以构建更可靠、功能更丰富的自定义命令,提升工作效率和用户体验。

登录后查看全文
热门项目推荐

热门内容推荐

最新内容推荐

项目优选

收起
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
139
1.91 K
kernelkernel
deepin linux kernel
C
22
6
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
8
0
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
192
273
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
923
551
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
421
392
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
145
189
金融AI编程实战金融AI编程实战
为非计算机科班出身 (例如财经类高校金融学院) 同学量身定制,新手友好,让学生以亲身实践开源开发的方式,学会使用计算机自动化自己的科研/创新工作。案例以量化投资为主线,涉及 Bash、Python、SQL、BI、AI 等全技术栈,培养面向未来的数智化人才 (如数据工程师、数据分析师、数据科学家、数据决策者、量化投资人)。
Jupyter Notebook
74
64
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
344
1.3 K
easy-eseasy-es
Elasticsearch 国内Top1 elasticsearch搜索引擎框架es ORM框架,索引全自动智能托管,如丝般顺滑,与Mybatis-plus一致的API,屏蔽语言差异,开发者只需要会MySQL语法即可完成对Es的相关操作,零额外学习成本.底层采用RestHighLevelClient,兼具低码,易用,易拓展等特性,支持es独有的高亮,权重,分词,Geo,嵌套,父子类型等功能...
Java
36
8