-
如何使用思源笔记实现类似于腾讯文档的多端同步编辑,实时保存渲染效果?
2024-04-25 11:18docker 版相当于一直后台运行的客户端,所以不能直接把 docker 版工作目录给其他客户端同步,不然会出现同步问题,只能中间再搭个 minio 用 s3 给各个客户端
-
结合数据库的 DailyNotes 输入方式分享
2024-04-24 21:05基本就是当成另类的双链来用,文档级别整理全部依靠数据库管理,这样就有筛选排序等功能,并且如果要分类只需要再多个单选列分类就行了,实在分类层级不够就再新建数据库转移过去继续细分,其实就相当于直接双链添加到到一个能筛选排序的 MOC 里面,可以不整理也可以后续慢慢打状态标签整理,因为数据库有筛选,可以快速给没用的文章打上归档标签隐藏起来,平时翻找最近的文章也可以直接按时间排序一步直达。
另外思源的数据库和 notion 那些不太一样,notion 主键必须绑定文档名称,思源主键可以是链接,完全就是双链的另一种形式,在文档管理上会更方便。
-
v3.0.10 数据库功能使用问题反馈
2024-04-20 16:06第 2 点建议还是主键是 1 月、2 月等。如果可以重复绑定那比如文章书籍库就很容易重复,得需要做个添加前识别是否重复并提醒的功能才好点
-
能否优化下思源的标签页管理及功能,用起来感觉有点混乱
2024-04-19 07:32感觉布局功能就能解决,打开的页签多暂时用不上就保存布局后,切换个以前保存的空布局再打开标签页
至于新窗口的工作区是可以优化,详见这个 issue,如果做完就和浏览器一样了 Issue #10809 · siyuan-note/siyuan
-
在数据库中取消绑定块后,那一行消失了
2024-04-18 21:00可以把代码和报错丢给 chatGPT 帮忙弄,我就是 gpt 帮我改好的,这帖子里面有相关格式说明来源数据库进度条模板 - 链滴 (ld246.com)
-
在数据库中取消绑定块后,那一行消失了
2024-04-18 19:00可以去 github 下今天刚发的 dev1 版本,支持模板列报错提示,当然现在也可以导出日志在日志里看到是否有模板代码报错,如果没报错那可以上报给 d 大
-
思源文档进行更改后,是否可以像 word 等 app 一样,用 * 表明 [修改]?
2024-04-18 15:17自动同步修改后 30 秒就会同步,电脑端一般不会出现手机上的突然退出的情况,不过可以考虑电脑上能给同步的图标用颜色区分同步状态。比如云朵图标黄色:已编辑未同步(检测到有编辑操作就变黄),绿色:已同步最新修改。
-
手机同步后笔记顺序混乱
2024-04-18 10:57很久没用的客户端同步是会有几率出现合并问题的,我大半年以前也遇到过,平板端很久没同步然后合并出错了,不过其实不用担心,回退下数据快照就好了。
建议你先断网进手机客户端,然后选完全手动同步,接着联网同步选下载云端数据,然后看看有没有合并错误,如果合并错了就卸载重装再同步,没事就开自动同步就行了。我公司电脑、家里电脑、手机三端都是自动同步,每天同步没有发生数据合并出错的问题。
-
标签,大多攻略系以双链取代标签使用,那标签是否无用,或有什么使用场景
2024-04-18 10:45有没有用看你的使用场景需不需要,每个人答案都不一样。就思源里标签现状来看没有双链那么方便,所以也在讨论重构标签标签支持绑定文档、创建标签文档,带有该标签的块汇总在该文档的反链面板 · Issue #11025 · siyuan-note/siyuan (github.com)
-
我数据库创建的视图有点太多了,能不能拆开。就是创建个副本什么的,每个副本的视图可以不一样
2024-04-18 10:41数据库支持隐藏视图 · Issue #10734 · siyuan-note/siyuan (github.com)可以关注下这个隐藏视图功能,复制个镜像数据库搭配这个应该就够用
-
数据库进度条模板
2024-04-17 16:37接上方我的回帖的,还有 x 天的代码,和进度条代码均已修复报错,直接用就行
.action{$startTime := .计划时间} .action{$endTime := .计划时间_end} .action{$totalDuration := 0} .action{$elapsedDuration := 0} .action{$percentage := 0.0} .action{$color := "rgb(45,164,78)"} .action{$remainingText := ""} .action{if and (not (eq $startTime nil)) (not (eq $endTime nil))} .action{$nowdate := now} .action{$endTimeParsed := $endTime} .action{$startTimeParsed := $startTime} .action{if and (ne $startTimeParsed nil) (ne $endTimeParsed nil)} .action{$totalDuration = $endTimeParsed.Sub $startTimeParsed} .action{$elapsedDuration = $nowdate.Sub $startTimeParsed} .action{$totalDurationHours := divf $totalDuration.Hours 1} .action{if gt $totalDurationHours 0.0} .action{$percentage = (mulf (divf (div $elapsedDuration.Hours 1) $totalDurationHours) 100.0)} .action{$daysLeft := divf ($endTimeParsed.Sub $nowdate).Hours 24} .action{if eq 0 $startTimeParsed.Minute $startTimeParsed.Hour $endTimeParsed.Minute $endTimeParsed.Hour } .action{$daysLeft = ceil (divf ($endTimeParsed.Sub $nowdate).Hours 24)} .action{end} .action{if gt $daysLeft 0.0} .action{$remainingText = printf "%.0f天" $daysLeft} .action{else if eq $daysLeft 0.0} .action{$remainingText = "当天"} .action{else} .action{$remainingText = printf "已过%.0f天" (subf 0.0 $daysLeft)} .action{end} .action{end} .action{end} .action{end} .action{$colorGradient_triggerPercentage := list 90.0 70.0 50.0 20.0 0.0} .action{$colorGradient_baseColor := list "#f94144" "#FF6E34" "#ffcc00" "#2DA44E" "#2571BF"} .action{range $index, $element := $colorGradient_triggerPercentage} .action{if ge $percentage (index $colorGradient_triggerPercentage $index)} .action{$color = index $colorGradient_baseColor $index} .action{break} .action{end} .action{end} <span style="color: .action{$color};">.action{$remainingText}</span>
-
坏了,数据库真成标签了
2024-04-16 17:40是的,除了父子标签没法实现没什么大问题了,相当于自带一个目录的标签,间接完成了标签重构的实现。反正数据库本身也是可以随意在文档移动排布,子标签数据库需要的时候再放到父文档感觉基本就够用了,现在就剩下新建数据库这个操作比较麻烦了
-
坏了,数据库真成标签了
2024-04-16 17:24未曾设想的道路。。。如果是这样用传统标签确实可以退休了,思源因为数据库可以链接各种块,不与文档绑定,相当于弄出了一种基于数据库汇总的标签模式,这个用法值得开拓一下
-
数据库进度条模板
2024-04-16 11:413.0.10 后支持上图样式,日期列改名为计划时间,下方是进度条代码
<!-- 解析当前时间 --> .action{$nowdate := now } <!-- 解析计划开始时间 --> .action{$startTime := .计划时间} <!-- 如果计划开始时间无效,则将其设置为当前时间 --> .action{with $startTime} .action{if eq (printf "%v" .) (printf "%v" $nowdate)} .action{$startTime = $nowdate} .action{end} .action{end} <!-- 解析计划结束时间 --> .action{$endTime := .计划时间_end} <!-- 如果计划结束时间无效,则将其设置为当前时间 --> .action{with $endTime} .action{if eq (printf "%v" .) (printf "%v" $nowdate)} .action{$endTime = $nowdate} .action{end} .action{end} <!-- 检查日期是否解析成功 --> .action{with $startTime} .action{with $endTime} <!-- 计算总持续时间和已过时间 --> <!-- 计算总持续时间 --> .action{$totalDuration := $endTime.Sub $startTime} <!-- 如果计算失败,则设置$totalDuration为0 --> .action{with $totalDuration} .action{if eq (printf "%v" .) "failed"} .action{$totalDuration = 0} .action{end} .action{end} <!-- 计算已过时间 --> .action{$elapsedDuration := $nowdate.Sub $startTime} <!-- 如果计算失败,则设置$elapsedDuration为0 --> .action{with $elapsedDuration} .action{if eq (printf "%v" .) "failed"} .action{$elapsedDuration = 0} .action{end} .action{end} <!-- 计算百分比 --> .action{$percentage := 0} <!-- 如果总持续时间大于0且计算成功,计算百分比 --> .action{with $totalDuration} .action{if and (gt (printf "%v" .) "0") (not (eq (printf "%v" $totalDuration) "failed"))} .action{$percentage = (mulf (divf (divf $elapsedDuration.Hours 24) (divf $totalDuration.Hours 24)) 100.0)} .action{end} .action{end} <!-- 默认颜色 --> .action{$color := "rgb(45,164,78)" } <!-- 切换颜色 红 橙 黄 绿 蓝 --> .action{$colorGradient_triggerPercentage := list 90.0 70.0 50.0 20.0 0.0} .action{$colorGradient_baseColor := list "#f94144" "#FF6E34" "#f2c40d" "#2DA44E" "#2571BF"} .action{range $index, $element := $colorGradient_triggerPercentage} <!-- 根据百分比确定颜色 --> .action{if ge (printf "%.2f" $percentage) (printf "%.2f" (index $colorGradient_triggerPercentage $index))} .action{$color = index $colorGradient_baseColor $index} .action{break} <!-- 结束条件 --> .action{end} <!-- 结束循环 --> .action{end} <!-- 显示进度条 --> <span style="background-color: rgba(175,184,193,0.2); width: 100%; display: inline-block;height: 12px;border-radius: 6px;align-self: center;overflow: hidden;"> <!-- 进度条 --> <span style="text-align: right; font-size: 12px; width: .action{$percentage}%; background-color: .action{$color}; display: inline-block;height: inherit;vertical-align: top;"></span> </span> .action{end} .action{end}