> For the complete documentation index, see [llms.txt](https://docs-cn.hapigo.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs-cn.hapigo.com/clipboard/snippet.md).

# Snippet 帮助

{% hint style="info" %}
更多功能还在开发中，敬请关注后续更新。
{% endhint %}

### Snippet 是什么？

Snippet 对大部分用户可能是一个陌生词，但是可能一部分人其实无形中已经使用过类似的功能。比如，你输入 (r)，会自动弹出商标符号 ®，这就是一个 Snippet：当我输入一个预定义的短关键词时，会自动替换成一段长文本/文件/图片等内容。

使用 HapiGo Snippet 的过程就是将一段长文本/文件/图片（文件/图片将在后续版本支持）保存起来，然后为其分配一个短关键词。下次输入这个短关键词来调用这个长文本。当然，也不一定要分配关键词，也可以直接通过剪贴板面板搜索，然后回车粘贴。

<figure><img src="/files/YH3OuZpobJkpz499t6le" alt=""><figcaption></figcaption></figure>

### 新建分组

HapiGo 支持将 Snippet 保存至不同分组。在剪贴板面板的顶部就是分组条，默认只有全部和剪贴板 2 个分组。大家可以通过分组条最右侧的加号 + 按钮来新建分组。

这些分组可以通过 tab 或 <mark style="background-color:blue;">Option+数字</mark>来切换，也可以通过拖拽的方式进行排序。如果需要修改分组，直接在分组上点击右键，选择编辑即可。

<figure><img src="/files/CZucCXYAwajUIi8GAgts" alt=""><figcaption><p>Option+数字切换分组</p></figcaption></figure>

### 新建 Snippet

新建好了分组，我们接下来就可以新建 Snippet 了。你可以从空白、任意应用的选择文本或文本型剪贴板进行新建，按下快捷键 <mark style="background-color:blue;">Option+N</mark> 即可打开 Snippet 编辑面板。这个面板上有多个编辑项，下面分别介绍其含义：

* **标题：**&#x6807;题可以任意填写，方便寻找
* **分类：**&#x76EE;前支持 4 种分类：文本、源代码、脚本和 AI 提示。文本比较好理解，源代码其实也是文本的一种，只是选择了代码类别，可以语法高亮。脚本支持：AppleScript、Bash、Ruby、Python3 和 Swift。这跟上面的源代码是不一样的，脚本会返回执行之后的结果，而不是代码本身。AI 提示又称 AI Prompt，后续会进一步优化。
* **内容：**&#x5185;容的右上角有个 + 号按钮，点击后可以添加多种交互。这样在扩展文本时，就可以让用户直接填写动态内容了。
* **分组：**&#x4E0A;面新建的分组都会显示在这里，如果没有也可以直接在这里新建。
* **触发关键词：**&#x53EF;选项，建议尽量使用「:abc123」「;abc123」这类特殊格式，避免跟正常的输入发生冲突。
* **输出模式：**&#x5F53;分类选择脚本时，会出现「输出模式」，这也就是设置将脚本的执行结果以何种方式返回。目前支持 4 种：粘贴：直接粘贴到前置应用；拷贝：拷贝到剪贴板；静默：无任何提示或操作；顶部通知：会将返回的结果以顶部通知的方式提示。

### 导入/导出 Snippet

当需要进行备份或分享 Snippets 时，可以将他们进行手动导出。选择需要导出的 snippets，点击鼠标右键打开菜单，点击导出即可。

收到 snippets 文件的用户只要双击 hasnp 文件即可进行导入。

### 使用示例

#### 快速填写电话

我们经常需要填写类似电话这类信息，之前很多用户都会选择手输，现在我们使用 Snippet 来完成。按下 Option+N，输入电话、标题和分组，在触发关键词处输入「;myph」。之后在需要输入电话时，只要输入「;myph」即可。如果不喜欢触发关键词，也可以打开剪贴板面板搜索电话并回车。

<figure><img src="/files/lfowfOIgRM9eqxJKmuIg" alt=""><figcaption></figcaption></figure>

#### 发送模板邮件

在 HapiGo 的日常运营中，我经常需要给用户回复邮件。有些邮件主要内容相同，只是用户名字等少数地方需要临时修改。这种情况，我们可以使用 Snippet 的交互组件功能来完成。

Option+N 新建 Snippet 后，将事先准备好的模板邮件填入内容区。在内容区的右上角有一个 + 按钮，点开后一共 8 项。上面是可以让用户输入的交互组件，下面是可以直接生成内容的交互组件。

<div align="left"><figure><img src="/files/jDW7hLQrVkKWkcgnWlD5" alt="" width="264"><figcaption></figcaption></figure></div>

以下面的邮件模板为例：用户姓名 & 最后的签名都是不需要分行的文本，我们可以添加「单行输入」，然后输入字段名称和默认内容。默认内容在展开时会自动填充，也可以根据需要再修改。有时候邮件的回复内容会是多个模版里选择，这时候可以添加「弹出菜单」或「复选框」。

<figure><img src="/files/JpHZKXM0ECGgc2HkFyCT" alt=""><figcaption></figcaption></figure>

邮件模板设置好后就可以使用了。新建邮件后可以直接输入触发关键词或通过剪贴板面板搜索并回车。这时因为这个 Snippet 是有交互的，所以会弹出一个填写面板。我们根据设定填写内容并回车，一封邮件就写好了。

<figure><img src="/files/C4h3M0dYKk5TN4d2Te3O" alt=""><figcaption></figcaption></figure>

#### 直接填入当前 IP

对于开发者而言，他们技术水平较好，此时可以编写一些可执行脚本类型的 Snippet。这里以使用 bash 获取当前 IP 为例：Option+N 新建 Snippet，分类选择「脚本-Bash」。填入脚本 & 触发关键词并保存。请注意最后的输出模式，如果你需要直接在编辑器里打印出来，需要选择粘贴。

```bash
# Get IP address and paste
curl 'https://api.ipify.org/?format=text'
```

<figure><img src="/files/GQDBIOWLTCL680AStaiQ" alt=""><figcaption></figcaption></figure>
