昨天看到更新了白板功能, 非常棒, 简直是梦寐以求的功能, 所以打算深入挖挖这个软件.
然后有个个人需求.
对于图片, pdf甚至视频, 都可以通过拖拽的方式拖到文档或白板中, 拖拽过来之后会作为"附件"保存在仓库的指定文件夹里, 这一切都非常棒, 但"文件夹"却不能.
我找了很久相关的插件也没找到, 所以打算自己写一个.
总体来讲很容易理解, 但也有几个api令人困惑, 比如this.app.vault
没用提供获得basePath
的函数, 我只得自己打了个猴子补丁:
var basePath = (this.app.vault.adapter as unknown as { basePath: string }).basePath
有更好的解法吗, 毕竟猴子补丁更新了就不一定能用了…
现在做到这个程度:
2 个赞
然后有个问题:
workspace
的editor-drop
事件似乎只能处理从软件外
拖到文档中
的情况, 像这种从侧边栏
拖到文档中
的情况是什么事件呢?
(因为新用户一次只能发一个图片, 所以就发到这了)
* 如果看到其他插件实现了类似的功能也可以告诉我, 我去翻他代码就知道怎么写了.
这个找到了, 藏在了子类里…
if (!(this.app.vault.adapter instanceof FileSystemAdapter)) {
return
}
var basePath = this.app.vault.adapter.getBasePath()
1 个赞
好吧, 经过一些研究, 找到了判断的地方…
看起来api提供的接口非常有限, 又不开源, 想搞复杂的功能就得硬读混淆过的源码…
1 个赞
dorkloon
(wissl)
5
大佬对文件树有没有想法?
ob已有的文件夹或者外部文件夹拖进来直接生成文件树
emmmmmmm 暂时没有这个需要
但是想看看 要怎么做呢? 是什么插件吗
boninall
(noname)
7
Ob 其实有很多 api 都还没暴露出来,基本都只能靠自己打断点或者看混淆源码,继续加大力度催猫哥把 api 给暴露出来
dorkloon
(wissl)
8
没有插件,思路是这样:
如果整个文件夹下的文件都有相关性并且根据路径排序,那么生成的文件树就应该是一个思维导图
啊, 你是想自己实现一个这样的插件吗…
生成的思维导图显示在哪里呢? 画布里? 还是文档里?
思维导图是什么形式? 图片吗?
理论上都是可以实现的, 但我想不到有什么用途…
dorkloon
(wissl)
10
画布里或者别的地方都可以,主要是作为学习路线图非常的完美
现在是在excalidraw里手动写,挺费劲的