A-A+
mac中PopClip插件开发实例
Actions 里面一个 dict 是一个图标,由于 PopClip 不支持直接执行可执行文件,所以要使用 shell 来执行一下。
配置文件:
Actions 里面一个 dict 是一个图标,由于 PopClip 不支持直接执行可执行文件,所以要使用 shell 来执行一下。
自己给定的两个图标的颜色是没有关系的,PopClip 会自动修改图标的颜色。
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
- <plist version="1.0">
- <dict>
- <key>Actions</key>
- <array>
- <dict>
- <key>After</key>
- <string>copy-result</string>
- <key>Image File</key>
- <string>id.png</string>
- <key>Regular Expression</key>
- <string>(?s)1\w+$</string>
- <key>Title</key>
- <string>Url2Id</string>
- <key>Shell Script File</key>
- <string>url2id.sh</string>
- </dict>
- <dict>
- <key>After</key>
- <string>copy-result</string>
- <key>Image File</key>
- <string>url.png</string>
- <key>Regular Expression</key>
- <string>(?s)\d+$</string>
- <key>Title</key>
- <string>Id2Url</string>
- <key>Shell Script File</key>
- <string>id2url.sh</string>
- </dict>
- </array>
- <key>Apps</key>
- <array>
- <dict>
- <key>Link</key>
- <string>http://tool.lu/</string>
- <key>Name</key>
- <string>在线工具</string>
- </dict>
- </array>
- <key>Credits</key>
- <array>
- <dict>
- <key>Link</key>
- <string>mailto:245565986@qq.com</string>
- <key>Name</key>
- <string>xiaozi</string>
- </dict>
- </array>
- <key>Extension Description</key>
- <string>Convert ids for mogujie.</string>
- <key>Extension Identifier</key>
- <string>lu.tool.popclip.extension.id-converter</string>
- <key>Extension Image File</key>
- <string>id.png</string>
- <key>Extension Name</key>
- <string>Id Converter</string>
- <key>Version</key>
- <integer>1</integer>
- </dict>
- </plist>
代码,PopClip 操作的文本是直接放在环境变量 POPCLIP_TEXT 里面的,所以下面的代码可以当做是 go 的一个插件模板.
- package main
- import (
- "fmt"
- "os"
- )
- func main() {
- text := os.Getenv("POPCLIP_TEXT")
- fmt.Print(text)
- }
- go build -o IdConverter .
发布:
mv IdConverter/ IdConverter.popclipext
zip -r IdConverter.popclipext.zip IdConverter.popclipext
mv IdConverter.popclipext.zip IdConverter.popclipextz