比如我想要从文档当中搜索和筛选出含有关键词“工具”的段落。
我只能在文档手动 Ctrl+ 点击,选择段落?
如何从搜索结果当中批量选择?
比如我想要从文档当中搜索和筛选出含有关键词“工具”的段落。
我只能在文档手动 Ctrl+ 点击,选择段落?
如何从搜索结果当中批量选择?
查询除了官方自带的搜索功能,还有 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();
});
}
})();
使用方法:
在任意文档中输入 {{}}
在弹出的对话框中输入下面的代码,然后关闭窗口即可。
执行结果:
比如说,我有一个记事本 A 文档,记录了多个任务/段落
另外一个记事本 B 文档,也记录了多个任务/段落
现在要快速从 A 当中筛选某些段落,迁移到 B
目前,手动选定是可以实现的……但要从多段当中一段段的目测查找,复选,比较麻烦。
而从搜索结果,则只能一次次的选择和移动……
OpenResty 是一个基于 NGINX 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。
据说 99% 的性能瓶颈都在数据库。
Chrome 又称 Google 浏览器,是一个由谷歌公司开发的网页浏览器。该浏览器是基于其他开源软件所编写,包括 WebKit,目标是提升稳定性、速度和安全性,并创造出简单且有效率的使用者界面。
用爱发电 (Programming With Love) 是一个以开源精神为核心的民间开源爱好者技术组织,“用爱发电”象征开源与贡献精神,加入组织,代表你将遵守组织的“个人开源爱好者”的各项条款。申请加入:用爱发电组织邀请帖。
用爱发电组织官网:https://programmingwithlove.stackoverflow.wiki/
DevOps(Development 和 Operations 的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法 。
Jenkins 是一套开源的持续集成工具。它提供了非常丰富的插件,让构建、部署、自动化集成项目变得简单易用。
Postman 是一款简单好用的 HTTP API 调试工具。
CSS(Cascading Style Sheet)“层叠样式表”是用于控制网页样式并允许将样式信息与网页内容分离的一种标记性语言。
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的操作系统上。容器完全使用沙箱机制,几乎没有性能开销,可以很容易地在机器和数据中心中运行。
IBM(国际商业机器公司)或万国商业机器公司,简称 IBM(International Business Machines Corporation),总公司在纽约州阿蒙克市。1911 年托马斯·沃森创立于美国,是全球最大的信息技术和业务解决方案公司,拥有全球雇员 30 多万人,业务遍及 160 多个国家和地区。
有空闲时间是接外包好呢还是学习好呢?
Ubuntu(友帮拓、优般图、乌班图)是一个以桌面应用为主的 Linux 操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词,意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观,类似华人社会的“仁爱”思想。Ubuntu 的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。
宕机,多指一些网站、游戏、网络应用等服务器一种区别于正常运行的状态,也叫“Down 机”、“当机”或“死机”。宕机状态不仅仅是指服务器“挂掉了”、“死机了”状态,也包括服务器假死、停用、关闭等一些原因而导致出现的不能够正常运行的状态。
GitHub 于 2008 年上线,目前,除了 Git 代码仓库托管及基本的 Web 管理界面以外,还提供了订阅、讨论组、文本渲染、在线文件编辑器、协作图谱(报表)、代码片段分享(Gist)等功能。正因为这些功能所提供的便利,又经过长期的积累,GitHub 的用户活跃度很高,在开源世界里享有深远的声望,并形成了社交化编程文化(Social Coding)。
Web Clipper 是一款浏览器剪藏扩展,它可以帮助你把网页内容剪藏到本地。
Openfire 是开源的、基于可拓展通讯和表示协议 (XMPP)、采用 Java 编程语言开发的实时协作服务器。Openfire 的效率很高,单台服务器可支持上万并发用户。
又拍云是国内领先的 CDN 服务提供商,国家工信部认证通过的“可信云”,乌云众测平台认证的“安全云”,为移动时代的创业者提供新一代的 CDN 加速服务。
Sublime Text 是一款可以用来写代码、写文章的文本编辑器。支持代码高亮、自动完成,还支持通过插件进行扩展。
Solidity 是一种智能合约高级语言,运行在 [以太坊] 虚拟机(EVM)之上。它的语法接近于 JavaScript,是一种面向对象的语言。
Typecho 是一款博客程序,它在 GPLv2 许可证下发行,基于 PHP 构建,可以运行在各种平台上,支持多种数据库(MySQL、PostgreSQL、SQLite)。
Mobi.css is a lightweight, flexible CSS framework that focus on mobile.
Bug 本意是指臭虫、缺陷、损坏、犯贫、窃听器、小虫等。现在人们把在程序中一些缺陷或问题统称为 bug(漏洞)。
Kubernetes 是 Google 开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。
App(应用程序,Application 的缩写)一般指手机软件。
确认过眼神后的灵魂连接,站在链在!
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于