obsidian社区插件
自定义 Excalidraw 脚本 - 修改 MindMap Format 设置思维导图 Frame 容器
插件ID:%E8%87%AA%E5%AE%9A%E4%B9%89excalidraw%E8%84%9A%E6%9C%AC-%E4%BF%AE%E6%94%B9mindmap-format%E8%AE%BE%E7%BD%AE%E6%80%9D%E7%BB%B4%E5%AF%BC%E5%9B%BEframe%E5%AE%B9%E5%99%A8
%E8%87%AA%E5%AE%9A%E4%B9%89excalidraw%E8%84%9A%E6%9C%AC-%E4%BF%AE%E6%94%B9mindmap-format%E8%AE%BE%E7%BD%AE%E6%80%9D%E7%BB%B4%E5%AF%BC%E5%9B%BEframe%E5%AE%B9%E5%99%A8
%E8%87%AA%E5%AE%9A%E4%B9%89excalidraw%E8%84%9A%E6%9C%AC %E4%BF%AE%E6%94%B9mindmap-format%E8%AE%BE%E7%BD%AE%E6%80%9D%E7%BB%B4%E5%AF%BC%E5%9B%BEframe%E5%AE%B9%E5%99%A8:修改 MindMap Format 设置思维导图 Frame 容器
自定义 Excalidraw 脚本 - 修改 MindMap Format 设置思维导图 Frame 容器
在 Excalidraw 的脚本市场 下载 MindMap Format 脚本,可以让选择的元素按照水平思维导图的形式排列组合:
这里修改了脚本,设置了一个 frame 容器。当该 frame 的名称以 mind
结尾时,脚本会排列组合容器内连接的元素。当然,也可以通过选择元素进行组合。效果如下:
主要代码还是 MindMap Format 脚本,修改如下脚本:
PS:从脚本市场下载的脚本通常位于
Excalidraw\Scripts\Downloaded
文件夹中,文件名为MindMap Format
。建议使用编辑器或者 txt 记事本打开。
源代码 (代码的最后 5 行):
const elements = ea.getViewSelectedElements();
generateTree(elements);
ea.copyViewElementsToEAforEditing(elements);
await ea.addElementsToView(false, false);
替换为:
const elements = ea.getViewSelectedElements();
if (elements.length > 1) {
generateTree(elements);
ea.copyViewElementsToEAforEditing(elements);
await ea.addElementsToView(false, false);
} else {
// 获取mindFrame并格式化
const mindFrames = ea.getViewElements().filter(el => el.type === "frame").filter(el => String(el.name).endsWith("mind"));
for (let mindFrame of mindFrames) {
console.log(mindFrame.id);
let allFrameEls = ea.getViewElements().filter(el => el.frameId === mindFrame.id);
generateTree(allFrameEls);
ea.copyViewElementsToEAforEditing(allFrameEls);
await ea.addElementsToView(false, false);
}
}
讨论
若阁下有独到的见解或新颖的想法,诚邀您在文章下方留言,与大家共同探讨。
反馈交流
其他渠道
版权声明
版权声明:所有 PKMer 文章如果需要转载,请附上原文出处链接。