2024 年 12 月 0 篇文章

SQL大全

查询某一个子文档下面不含标签的文档 seehttps://ld246.com/article/1723590423117SELECT*FROMblockswheretype='d'andpathlike'%20240725203634-j3t72jv/%'andtag=''andidnotin(SELECTroot_idFROMblockswheretype<>'d'andpathlike'%2024

监听思源退出事件

seehttps://ld246.com/article/1734263645595//调用示例,当 callback 返回 true 时退出,返回 false 时取消退出 functionsleep(ms){returnnewPromise(resolve=>setTimeout(resolve,ms));}listenExit(async()=>{console.log('waiting');awaitsle

思源如何给日记模板添加天气

思源如何给日记模板添加天气
seehttps://ld246.com/article/1734002304855 一,日记模板由于思源模板中无法执行 js,也就无法调用天气 api 了。所以这里可以利用 sql 查询模板变相执行 js 实现。比如这个示例模板,只需要把这段 js 放到模板里,然后模板加载时就可以显示天气了。//!jsreturn(async()=>{//获取天气 getWeather();asyncfunctiongetWeathe

思源笔记丨目前我用过的数据库 API 整理

seehttps://ld246.com/article/1733365731025 数据库添加非绑定的块和属性值/api/av/appendAttributeViewDetachedBlocksWithValueavID:数据库 id,非块 idblocksValueslist,数据库要添加的行 blocksValues 是个二维数组,对应表格视图的行列参数中的值可以参考源码 kernel/av/value.

天气模板

日志模板//!jsreturn(async()=>{//获取天气 getWeather();asyncfunctiongetWeather(){//天气 apiconstweather=awaitfetch('https://wttr.in/?format=1');consttext=awaitweather.text();//显示当时的天气 render(text);//始终显示今天的天气//rende

Sprig模板全局变量示例

seehttps://ld246.com/article/1733921523331.action{$total:=0}.action{$id:=.id}.action{$blocks:=queryBlocks"select*fromblockswhereroot_id='?'andid!='?'"$id$id}.action{range$v:=$blocks}.action{$len:=len$v

思源模板功能新人指南:模板语法 + 函数 + md 块语法

思源模板功能新人指南:模板语法 + 函数 + md 块语法
推荐教程:思源模板功能新人指南:模板语法 + 函数 +md 块语法手把手数据库模板列简单使用指南快速预览 https://docs.siyuan-note.club/zh-Hans/reference/template/sprig/函数手册 https://docs.siyuan-note.club/zh-Hans/reference/template/siyuan.html 思源专有 https://www.to

调用外部编辑器编辑图片

seehttps://ld246.com/article/1733636224439//思源 alt+ 单击图片打开本地图片编辑器//特色:打开编辑器后会等待编辑器的关闭,关闭后自动刷新思源文档//仅支持 electron 端,及 Windows 和 Mac 系统//windows 调用画图,Mac 调用预览//seehttps://ld246.com/article/1733636224439(()=>{if(isE

查看文档的正向链接

seehttps://ld246.com/article/1733727390265Imuvux•3 分钟前订阅者​付费者 SQL 查询当前文档引用块:select*fromblockswhereidin(selectdef_block_idfromrefswhereroot_id='文档 ID')​文档层级导航插件,设置启用显示正向链接,可以查看文档级正链反链过滤面板插件,设置定义块范围=引用其他文档的定

刷新数据库api

/api/sqlite/flushTransaction​seehttps://ld246.com/article/1733634555319#%E8%83%BD%E4%B8%8D%E8%83%BD%E7%A7%BB%E5%8A%A8%E5%90%8E%E5%8D%B3%E6%97%B6%E5%88%B7%E6%96%B0sqlite%E6%95%B0%E6%8D%AE%E5%BA%93await(

常用css

给 emoji 修改颜色.emoji{color:transparent;text-shadow:000#f2b05d;}给目录树排序.sy__fileul{display:flex;flex-direction:column;}/*带排序的 li 添加 order*/li{order:-1;}‍

批量折叠和展开标题

批量折叠和展开标题
该代码主要有以下几个功能:alt+ 点击标题前的箭头按钮,折叠/展开所有同级标题 ctrl/meta+alt+ 点击标题前的箭头按钮,折叠/展开所有标题选择情况下,仅折叠/展开已选择的部分的标题效果如下:代码//批量折叠和展开标题//使用方法://1.alt+ 点击标题前的箭头按钮,折叠/展开所有同级标题//2.ctrl/meta+alt+ 点击标题前的箭头按钮,折叠/展开所有标题//3.选择情况下,仅折叠/

js获取鼠标所在元素

要确定鼠标当前位于哪个元素内,JavaScript 提供了几种方法。你可以通过监听 mousemove​事件并在事件处理函数中检查 event.target​来得知鼠标所在的元素。此外,还可以使用 document.elementFromPoint​方法来查找特定坐标下的最顶层元素。以下是两种常见的实现方式:使用 mousemove​事件你可以为整个文档或某个容器添加一个 mousemove​事件监听器,然后在

思源目录支持 shift+click 多选

seehttps://ld246.com/article/1733364742803(()=>{letlastClickedItem=null;functionhandleFileClick(event){if(!event.shiftKey){//普通点击,记录最后点击的项目 lastClickedItem=event.target.closest('li[data-type="navigation

监听websocket channel

(()=>{//默认渠道名,可以根据需要修改 constchannel='siyuan-runjs';//创建 socket 客户端 createSocketClient(channel);//当收到消息时被调用 functiononReceivedMessage(event){letrequest=parseJson(event.data);letresult='';try{result=(newFunct