写文章,尤其是非技术类的,总是会有一些展示图片的场合,而上传图床&获得图片连接则是工作流中的重要部分。
和很多应用一样,Linux目前还没有我满意的解决方案。现存的工具有PicGo,fu等,其主要问题在于不够简洁。我希望能有一个直观的命令行工具来完成这件事,并且它能够整合系统剪贴板。我决定自己写一个小工具来完成这件事,并选择了Github作为图床,用jsdelivr加速。
核心
首先需要创建一个新的Github repo,进入设置页面生成一个Personal access tokens,然后就可以使用Github API上传文件了。Github API的第四版换成了GraphQL,它对于大多数人来说比较晦涩,而且普及度也不如REST,因此我这里就用第三版的API。下面的脚本需要Python3和requests:
|
|
在上面的脚本中,填入token,并替换用户名和仓库名即可。
不过,在Python里访问系统剪贴板比较麻烦,需要装一些额外的包。因此这项工作就交给shell来做就行了。这个小包装脚本需要安装xclip:
|
|
KDE整合
Dolphin
如果能在文件管理器中直接上传是很方便的,而KDE提供了一种办法自定义动作。想要在Dolphin中添加一项动作的话,只需要在.local/share/kservices5/ServiceMenus
目录下创建一个desktop文件,并设置好MIME和动作:
|
|
效果:
Klipper
此外,KDE的剪贴板也允许自定义动作,这次直接在Klipper的配置页面进行操作即可: