比如我想要从文档当中搜索和筛选出含有关键词“工具”的段落。
我只能在文档手动 Ctrl+ 点击,选择段落?
如何从搜索结果当中批量选择?
比如我想要从文档当中搜索和筛选出含有关键词“工具”的段落。
我只能在文档手动 Ctrl+ 点击,选择段落?
如何从搜索结果当中批量选择?
比如说,我有一个记事本 A 文档,记录了多个任务/段落
另外一个记事本 B 文档,也记录了多个任务/段落
现在要快速从 A 当中筛选某些段落,迁移到 B
目前,手动选定是可以实现的……但要从多段当中一段段的目测查找,复选,比较麻烦。
而从搜索结果,则只能一次次的选择和移动……
查询除了官方自带的搜索功能,还有 SQL 查询,当手动查询不方便时,我们可以考虑 SQL 查询。
根据你的描述,我觉得有两种方法:
如果你的 A 文档和 B 文档相似,只是某些段落不同,可以用对比工具,然后同步差异即可。
对比方法又有两种:
插件对比,比如,比较与合并文档插件。
外部工具对比,可以把两个文档先导出为 Markdown,然后用对比工具(比如 vscode,beyond compare)进行文件对比,对比后同步差异后复制到或再导入到思源即可。
如果 B 文档和 A 文档没什么关联,仅仅想把 A 查询结果复制到 B,可以使用下面的脚本提取并复制到剪切板,然后粘贴到 B 文档即可。
代码:
//!js
return (async () => {
/////// 主逻辑区 ///////
// sql查询
const sql = `select markdown from blocks where type='p' and markdown like '%工具%'`;
const result = await query(sql);
// 无数据提示
if(result.length === 0) return error('未找到任何数据');
// 过滤数据
const markdowns = result.map(row => row.markdown);
// 写到剪切板
const clipboardText = markdowns.join("\n\n");
await navigator.clipboard.writeText(clipboardText);
// 渲染结果
return render('查询结果已复制到剪切板');
/////// 功能函数区 ///////
// 查询SQL函数
async function query(sql) {
const result = await fetchSyncPost('/api/query/sql', { "stmt": sql });
if (result.code !== 0) {
console.error("查询数据库出错", result.msg);
return [];
}
return result.data;
}
// 渲染结果函数
function render(html, style) {
onRender('.b3-form__space--small').then((container) => {
container.style = style || 'color:var(--b3-card-info-color);';
container.innerHTML = html;
});
return [];
}
// 渲染错误输出
function error(html, style) {
return render(html, style || 'color:red;');
}
// 监听dom渲染
function onRender(selector) {
return new Promise(resolve => {
const check = () => {
let el = item.querySelector(selector);
if (el) resolve(el); else requestAnimationFrame(check);
};
check();
});
}
})();
使用方法:
在任意文档中输入 {{}}
在弹出的对话框中输入下面的代码,然后关闭窗口即可。
执行结果:
TensorFlow 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。
愿逝者安息!
Elasticsearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful 接口。Elasticsearch 是用 Java 开发的,并作为 Apache 许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
CentOS(Community Enterprise Operating System)是 Linux 发行版之一,它是来自于 Red Hat Enterprise Linux 依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux 使用。两者的不同在于 CentOS 并不包含封闭源代码软件。
Latke 是一款以 JSON 为主的 Java Web 框架。
Rust 是一门赋予每个人构建可靠且高效软件能力的语言。Rust 由 Mozilla 开发,最早发布于 2014 年 9 月。
Caddy 是一款默认自动启用 HTTPS 的 HTTP/2 Web 服务器。
Go 语言是 Google 推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。谷歌首席软件工程师罗布派克(Rob Pike)说:我们之所以开发 Go,是因为过去 10 多年间软件开发的难度令人沮丧。Go 是谷歌 2009 发布的第二款编程语言。
ngrok 是一个反向代理,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道。
有什么新发现就分享给大家吧!
JSON (JavaScript Object Notation)是一种轻量级的数据交换格式。易于人类阅读和编写。同时也易于机器解析和生成。
Facebook 是一个联系朋友的社交工具。大家可以通过它和朋友、同事、同学以及周围的人保持互动交流,分享无限上传的图片,发布链接和视频,更可以增进对朋友的了解。
Vim 是类 UNIX 系统文本编辑器 Vi 的加强版本,加入了更多特性来帮助编辑源代码。Vim 的部分增强功能包括文件比较(vimdiff)、语法高亮、全面的帮助系统、本地脚本(Vimscript)和便于选择的可视化模式。
星期六到星期天晚,实行五天工作制后,指每周的最后两天。再过几年可能就是三天了。
“梦想从学习开始,事业从实践起步” —— 习近平
AngularJS 诞生于 2009 年,由 Misko Hevery 等人创建,后为 Google 所收购。是一款优秀的前端 JS 框架,已经被用于 Google 的多款产品当中。AngularJS 有着诸多特性,最为核心的是:MVC、模块化、自动化双向数据绑定、语义化标签、依赖注入等。2.0 版本后已经改名为 Angular。
你创造的作品可能会帮助到很多人,如果是开源项目的话就更赞了!
Typecho 是一款博客程序,它在 GPLv2 许可证下发行,基于 PHP 构建,可以运行在各种平台上,支持多种数据库(MySQL、PostgreSQL、SQLite)。
我来 wolai:不仅仅是未来的云端笔记!
Android 是一种以 Linux 为基础的开放源码操作系统,主要使用于便携设备。2005 年由 Google 收购注资,并拉拢多家制造商组成开放手机联盟开发改良,逐渐扩展到到平板电脑及其他领域上。
宋真宗赵恒曾经说过:“书中自有黄金屋,书中自有颜如玉。”
Tomcat 最早是由 Sun Microsystems 开发的一个 Servlet 容器,在 1999 年被捐献给 ASF(Apache Software Foundation),隶属于 Jakarta 项目,现在已经独立为一个顶级项目。Tomcat 主要实现了 JavaEE 中的 Servlet、JSP 规范,同时也提供 HTTP 服务,是市场上非常流行的 Java Web 容器。
Node.js 是一个基于 Chrome JavaScript 运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞 I/O 模型而得以轻量和高效。
域名(Domain Name),简称域名、网域,是由一串用点分隔的名字组成的 Internet 上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的电子方位(有时也指地理位置)。
确认过眼神后的灵魂连接,站在链在!
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于