安卓利用FV悬浮球实现不打开ob进行文本快捷输入(包括图片自动上传图床后的外链)

  • 摘要
  • 前言
  • FV悬浮球自定义任务简介
  • 自定义任务编写
    • 1、自定义任务文件结构
    • 2、任务编写
      • 2.1、基础子任务:外部分享文字并添加到ob日记
      • 2.2、任务1:文字
      • 2.3、任务2:待办
      • 2.4、任务3:分享文字
      • 2.5、任务4:分享图片

摘要

简述如何使用安卓手机上的悬浮球编写自定义任务,配合obsidian以及咕咚云图使用,实现了在不打开obsidian的情况下将以下四种内容插入obsidian当日的日记种的功能,四种内容如下:

  • 文字
  • 待办事项(reminder格式)
  • 分享文字
  • 分享图片(会自动上传图片至图床然后以外链的形式插入obsidian)

请看视频演示(这里只演示了3项,分享文字并没有进行演示)

写这篇文档是为了记录分享下折腾的过程,也是抛砖引玉。

前言

前几天看到obsidian QQ群里有一个老哥(维克笔记)用苹果手机的快捷方式实现了在不打开obsidian的情况下输入一段文字保存到obsidian中的某个文档:详见视频

我就想着安卓手机能不能也实现类似的功能,第一时间就想到了FV悬浮球,这个软件相当强大,所以就准备用它来模仿。
除了模仿上面这个需求外,还有个问题,手机端的obsidian并没有支持移动端的自动上传图片至图床的插件,所以另一个需求就是在手机上直接选中图片执行任务,让它自动将选中的图片上传至图床并将图片以外链的形式插入到obsidian的某个文档中。

所以需求就是在不打开obsidian的情况下将以下四种内容插入obsidian当日的日记种的功能,四种内容如下:

  • 文字
  • 待办事项(reminder格式)
  • 分享文字
  • 分享图片(会自动上传图片至图床然后以外链的形式插入obsidian)

FV悬浮球自定义任务简介

FV悬浮球的自定义任务是一种可视化编程,它的功能完全足够满足这次的需求。
下图中红框部分就是软件提供的各种命令,而用户就是用这各种命令来实现目标。具体怎么新建任务以及各个命令的功能我就不介绍了,详见命令支持库 - FV 悬浮球 - fooView (gitbook.io)

自定义任务编写

1、自定义任务文件结构

分析上面的四个需求:在不打开obsidian的情况下将以下四种内容插入obsidian当日的日记种的功能,四种内容如下:

  • 文字
  • 待办事项(reminder格式)
  • 分享图片(会自动上传图片至图床然后以外链的形式插入obsidian)
  • 分享文字

这四种内容其实都是文字的形式,而且都是追加文字到一个md文档中,只是插入的具体内容和插入前要执行的步骤不一样罢了。所以为了提高代码的复用率和减少出错,就让它们共用一个子任务,这个子任务的功能应该是==插入一段文字到obsidian中当日的笔记中==。

所以我创建了5个任务,其中的“==外部分享文字并添加到ob日记==”任务是另外四个任务共用的子任务。
|350

大致流程及结构如下图所示:

下面开始编写FV任务部分。

2、任务编写

一些细节可能需要根据自身的obsidian设定进行更改。

2.1、基础子任务:外部分享文字并添加到ob日记

肯定是先完成最基础的任务“==外部分享文字并添加到ob日记==”的编写,这个整完了其它的都比较简单。

2.2、任务1:文字

有了上面编写好的基础子任务,这个输入文字添加到文档实现起来就简单多了。

下面这段是直接在文档内容的最后面追加,并没有空行什么的,有需要的可以自己弄个空行。

注意:在FV里空行直接打有时候没法打出来,可以先在手机的便签里写个手动换行的段落,然后复制到FV中,再把除了换行符的其它字符删除即可。

2.3、任务2:待办

我使用的插件是reminder,它的格式要求是

- [ ] 待做事项 (@yyyy-mm-dd)

当然也可以加具体时间,这里我懒得整了。有需要的可以自己改动任务

2.4、任务3:分享文字

这个其实就是基础子任务“外部分享文字并添加到ob日记”,只不过为了名字看起来统一就又新建个任务嵌套下

  • 具体编程:
    • 右上角点击3个点,然后点击“添加到分享菜单”,选择分享的内容类型为“文字”

2.5、任务4:分享图片

这个稍微有点麻烦,这个任务需要先把分享的图片上传到图床,然后再将外链插入obsidian日记中

这里图床软件咕咚云图要设置下:关闭图片上传前确认、关闭自动复制

9 个赞

来给大佬暖场 :partying_face:
顺道也附议一种安卓端不烧脑文字录入ob法

建一个quickadd的capture

利用advance uri的command指令获取这个capture的uri
01

把uri发到安卓,下载搜索进化app

把uri如图所示添加进去

随便输入一个字符,跳出search list pannel,选择flomo,就跳转到flomo输入框,开始随意录入啦ヾ(´︶`*)ノ♬

再补充一个从外部分享收集文字到ob的简单法子

obsidian://advanced-uri?vault=obsidian&filepath=inbox/xc/inbox&data=%s&mode=append

"inbox/xc/inbox"此处改为自己的收集箱即可

3 个赞

我看你最后一张截图中,第二张图上有直接可以分享到OB的图标按钮,这个是怎样实现的?

ob自带的鸭 :sweat_smile:内置在原生分享菜单
这问题提得好!可以指定filepath,用搜索进化app,存到特定文件里,也可以直接走分享菜单里的ob分享,再在ob里选存放位置。

还可以用插件
kzhovn/uri-commands-obsidian: Execute URIs from the command palette

自定义placeholder定制导入

对于把fv纳入手机生态的我来说,这个很方便

或许可以用tasker来实现文字的录入。

但这个其实还是启动了ob吧?如果插件多还得加载一会才能打开

urlscheme可以打开ob后再执行命令,打开情况下当然更快更顺畅

这么高清的gif是怎么弄的啊, 我用视频转gif好模糊啊:melting_face:

多谢分享,我自己试了下很可以,效果非常好。

1 个赞

比如我的inbox路径是内部存储/00minOBnote/2笔记/inbox.md,那就把inbox/xc/inbox换成00minOBnote/2笔记就可以了吗?

这个是视频,不是GIF

理论上是,用 advance uri 去生成这个:link:

我的 vault就叫 obsidian, vault=后面还要改成你的库名

好的 明白了 我试试 谢谢哈