日记与数据库模板列使用分享 v2.0 版本

通过一段时间的自我使用,在原先日记与数据库模板列的结合使用分享 - 链滴 (ld246.com)的基础上进行了一些小优化。具体怎么玩大家可以看上面这个帖子。

主要是对一些判断处理逻辑进行了小优化。对关键字列可以通过感叹号来对当天的重点事件进行强调,因为普通事件目前做的太花哨了,不强调的话容易看花眼。对样式加上了更骚气的随机渐变色

这个是带渐变色版本的

因为颜色是随机取的思源默认支持的 13 种颜色,而不同主题对这 13 种颜色会有改写,所以展示效果可能会有差异性,我这花哨的展示效果是在 Asri 主题下呈现的,供大家参考,有基础的也可自行对颜色进行改写。

ce3c1af2b8842f92b67f9c882431f16b.jpeg

渐变色的缺点是比不带渐变色的加载稍微慢一丢丢

.action{$key := "关键词:"}
.action{$ret := queryBlocks "SELECT * FROM blocks WHERE root_id = '?' AND type = 'p' AND content LIKE '?%' LIMIT 1" .id $key}
.action{if len $ret}
.action{$val := first $ret}
.action{$str := trimPrefix $key $val.Content}
.action{if empty $str}
<span class="b3-chip" style="background-color:#C5E1A5;color:#000000">^.^ 今日安康</span>
.action{else}
.action{$str = replace "!" "!" $str | replace "," ","}
.action{$list := splitList "," $str}
.action{ $one := list }
.action{ $two := list }
.action{ $three := list }
.action{ $four := list }
.action{ range $v := $list }
.action{ if hasPrefix "!!!" $v }
.action{ $one = append $one $v }
.action{ else if hasPrefix "!!" $v }
.action{ $two = append $two $v }
.action{ else if hasPrefix "!" $v }
.action{ $three = append $three $v }
.action{ else }
.action{ $four = append $four $v }
.action{ end }
.action{end}
.action{ if and (empty $one) (empty $two) (empty $three)}
.action{ range $v := $four}
.action{$a := randInt 2 13}
.action{$b := randInt 1 13}
<span class="b3-chip" style="background: linear-gradient(120deg, var(--b3-font-background.action{$a}) 0%, var(--b3-font-background.action{$b}) 100%);color:var(--b3-font-color.action{$a})">.action{$v}</span>
.action{ end }
.action{ else }
.action{ $list := concat $one $two $three $four }
.action{ range $v := $list }
.action{if hasPrefix "!!!" $v}
.action{ $v:= trimAll "!" $v }
<span class="b3-chip" style="background-color:red;color:yellow">.action{$v}</span>
.action{else if hasPrefix "!!" $v}
.action{ $v:= trimAll "!" $v }
<span class="b3-chip" style="background-color:#FFD700;color:#000000">.action{$v}</span>
.action{else if hasPrefix "!" $v}
<span class="b3-chip" style="background-color:#007BFF;color:#FFFFFF">.action{$v}</span>
.action{else}
.action{$a := randInt 2 13}
.action{$b := randInt 1 13}
<span class="b3-chip" style="background: linear-gradient(120deg, var(--b3-font-background.action{$a}) 0%, var(--b3-font-background.action{$b}) 100%);color:var(--b3-font-color.action{$a})">.action{$v}</span>
.action{end}
.action{ end }
.action{ end }
.action{ end }
.action{ end }

上述代码只是为了方便大家看下怎么写的,真正填入模板列的时候是需要把所有换行都去掉的,可以直接复制下面的内容或者自行换成一行

.action{$key := "关键词:"}.action{$ret := queryBlocks "SELECT * FROM blocks WHERE root_id = '?' AND type = 'p' AND content LIKE '?%' LIMIT 1" .id $key}.action{if len $ret}.action{$val := first $ret}.action{$str := trimPrefix $key $val.Content}.action{if empty $str}<span class="b3-chip" style="background-color:#C5E1A5;color:#000000">^.^ 今日安康</span>.action{else}.action{$str = replace "!" "!" $str | replace "," ","}.action{$list := splitList "," $str}.action{ $one := list }.action{ $two := list }.action{ $three := list }.action{ $four := list }.action{ range $v := $list }.action{ if hasPrefix "!!!" $v }.action{ $one = append $one $v }.action{ else if hasPrefix "!!" $v }.action{ $two = append $two $v }.action{ else if hasPrefix "!" $v }.action{ $three = append $three $v }.action{ else }.action{ $four = append $four $v }.action{ end }.action{end}.action{ if and (empty $one) (empty $two) (empty $three)}.action{ range $v := $four}.action{$a := randInt 2 13}.action{$b := randInt 1 13}<span class="b3-chip" style="background: linear-gradient(120deg, var(--b3-font-background.action{$a}) 0%, var(--b3-font-background.action{$b}) 100%);color:var(--b3-font-color.action{$a})">.action{$v}</span>.action{ end }.action{ else }.action{ $list := concat $one $two $three $four }.action{ range $v := $list }.action{if hasPrefix "!!!" $v}.action{ $v:= trimAll "!" $v }<span class="b3-chip" style="background-color:red;color:yellow">!.action{$v}</span>.action{else if hasPrefix "!!" $v}.action{ $v:= trimAll "!" $v }<span class="b3-chip" style="background-color:#FFD700;color:#000000">!.action{$v}</span>.action{else if hasPrefix "!" $v}<span class="b3-chip" style="background-color:#007BFF;color:#FFFFFF">.action{$v}</span>.action{else}.action{$a := randInt 2 13}.action{$b := randInt 1 13}<span class="b3-chip" style="background: linear-gradient(120deg, var(--b3-font-background.action{$a}) 0%, var(--b3-font-background.action{$b}) 100%);color:var(--b3-font-color.action{$a})">.action{$v}</span>.action{end}.action{ end }.action{ end }.action{ end }.action{ end }

这是不带渐变色的,流畅性稍微好点,使用时最好也是把换行都去掉:

.action{$key := "关键词:"}
.action{$ret := queryBlocks "SELECT * FROM blocks WHERE root_id = '?' AND type = 'p' AND content LIKE '?%' LIMIT 1" .id $key}
.action{if len $ret}
.action{$val := first $ret}
.action{$str := trimPrefix $key $val.Content}
.action{if empty $str}
<span class="b3-chip" style="background-color:#C5E1A5;color:#000000">^.^ 今日安康</span>
.action{else}
.action{$str = replace "!" "!" $str | replace "," ","}
.action{$list := splitList "," $str}
.action{ $one := list }
.action{ $two := list }
.action{ $three := list }
.action{ $four := list }
.action{ range $v := $list }
.action{ if hasPrefix "!!!" $v }
.action{ $one = append $one $v }
.action{ else if hasPrefix "!!" $v }
.action{ $two = append $two $v }
.action{ else if hasPrefix "!" $v }
.action{ $three = append $three $v }
.action{ else }
.action{ $four = append $four $v }
.action{ end }
.action{end}
.action{ if and (empty $one) (empty $two) (empty $three)}
.action{ range $v := $four}
.action{$a := randInt 1 13}
<span class="b3-chip" style="background-color:var(--b3-font-background.action{$a});color:var(--b3-font-color.action{$a})">.action{$v}</span>
.action{ end }
.action{ else }
.action{ $list := concat $one $two $three $four }
.action{ range $v := $list }
.action{if hasPrefix "!!!" $v}
.action{ $v:= trimAll "!" $v }
<span class="b3-chip" style="background-color:red;color:yellow">!.action{$v}</span>
.action{else if hasPrefix "!!" $v}
.action{ $v:= trimAll "!" $v }
<span class="b3-chip" style="background-color:#FFD700;color:#000000">!.action{$v}</span>
.action{else if hasPrefix "!" $v}
<span class="b3-chip" style="background-color:#007BFF;color:#FFFFFF">.action{$v}</span>
.action{else}
.action{$a := randInt 1 13}
<span class="b3-chip" style="background-color:var(--b3-font-background.action{$a});color:var(--b3-font-color.action{$a})">.action{$v}</span>
.action{end}
.action{ end }
.action{ end }
.action{ end }
.action{ end }

还是要额外说明下,在我的例子中,日记模板中的 关键字: 后面可以通过一到三个感叹号表示三种强调级别,比如Clip20240718105446.jpg

Clip20240718105501.jpg

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    21869 引用 • 87006 回帖
1 操作
jihui 在 2024-07-18 10:55:44 更新了该帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 爱了爱了

  • 其他回帖
  • jihui

    另外最新数据库模板是能兼容日记模版中对于中英文逗号的区分的,不管你使用哪种逗号都能分割,这在上一版是不行的,感叹号强调级别也同时支持中英文的使用。

jihui
可是,现在是春天,一切的好事都应该有权利发生。

推荐标签 标签

  • CSS

    CSS(Cascading Style Sheet)“层叠样式表”是用于控制网页样式并允许将样式信息与网页内容分离的一种标记性语言。

    197 引用 • 547 回帖
  • danl
    122 关注
  • WebSocket

    WebSocket 是 HTML5 中定义的一种新协议,它实现了浏览器与服务器之间的全双工通信(full-duplex)。

    48 引用 • 206 回帖 • 357 关注
  • WordPress

    WordPress 是一个使用 PHP 语言开发的博客平台,用户可以在支持 PHP 和 MySQL 数据库的服务器上架设自己的博客。也可以把 WordPress 当作一个内容管理系统(CMS)来使用。WordPress 是一个免费的开源项目,在 GNU 通用公共许可证(GPLv2)下授权发布。

    66 引用 • 114 回帖 • 241 关注
  • 笔记

    好记性不如烂笔头。

    308 引用 • 793 回帖
  • C

    C 语言是一门通用计算机编程语言,应用广泛。C 语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

    85 引用 • 165 回帖
  • Bug

    Bug 本意是指臭虫、缺陷、损坏、犯贫、窃听器、小虫等。现在人们把在程序中一些缺陷或问题统称为 bug(漏洞)。

    75 引用 • 1737 回帖 • 4 关注
  • jsDelivr

    jsDelivr 是一个开源的 CDN 服务,可为 npm 包、GitHub 仓库提供免费、快速并且可靠的全球 CDN 加速服务。

    5 引用 • 31 回帖 • 57 关注
  • QQ

    1999 年 2 月腾讯正式推出“腾讯 QQ”,在线用户由 1999 年的 2 人(马化腾和张志东)到现在已经发展到上亿用户了,在线人数超过一亿,是目前使用最广泛的聊天软件之一。

    45 引用 • 557 回帖 • 95 关注
  • API

    应用程序编程接口(Application Programming Interface)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

    77 引用 • 429 回帖
  • PHP

    PHP(Hypertext Preprocessor)是一种开源脚本语言。语法吸收了 C 语言、 Java 和 Perl 的特点,主要适用于 Web 开发领域,据说是世界上最好的编程语言。

    179 引用 • 407 回帖 • 489 关注
  • Spring

    Spring 是一个开源框架,是于 2003 年兴起的一个轻量级的 Java 开发框架,由 Rod Johnson 在其著作《Expert One-On-One J2EE Development and Design》中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许使用者选择使用哪一个组件,同时为 JavaEE 应用程序开发提供集成的框架。

    942 引用 • 1459 回帖 • 36 关注
  • PWA

    PWA(Progressive Web App)是 Google 在 2015 年提出、2016 年 6 月开始推广的项目。它结合了一系列现代 Web 技术,在网页应用中实现和原生应用相近的用户体验。

    14 引用 • 69 回帖 • 148 关注
  • 程序员

    程序员是从事程序开发、程序维护的专业人员。

    564 引用 • 3532 回帖
  • PostgreSQL

    PostgreSQL 是一款功能强大的企业级数据库系统,在 BSD 开源许可证下发布。

    22 引用 • 22 回帖 • 2 关注
  • HBase

    HBase 是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的 Google 论文 “Bigtable:一个结构化数据的分布式存储系统”。就像 Bigtable 利用了 Google 文件系统所提供的分布式数据存储一样,HBase 在 Hadoop 之上提供了类似于 Bigtable 的能力。

    17 引用 • 6 回帖 • 68 关注
  • 开源中国

    开源中国是目前中国最大的开源技术社区。传播开源的理念,推广开源项目,为 IT 开发者提供了一个发现、使用、并交流开源技术的平台。目前开源中国社区已收录超过两万款开源软件。

    7 引用 • 86 回帖
  • Flutter

    Flutter 是谷歌的移动 UI 框架,可以快速在 iOS 和 Android 上构建高质量的原生用户界面。 Flutter 可以与现有的代码一起工作,它正在被越来越多的开发者和组织使用,并且 Flutter 是完全免费、开源的。

    39 引用 • 92 回帖
  • Hibernate

    Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常轻量级的对象封装,使得 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。

    39 引用 • 103 回帖 • 705 关注
  • 导航

    各种网址链接、内容导航。

    39 引用 • 170 回帖
  • Sandbox

    如果帖子标签含有 Sandbox ,则该帖子会被视为“测试帖”,主要用于测试社区功能,排查 bug 等,该标签下内容不定期进行清理。

    404 引用 • 1246 回帖 • 580 关注
  • 钉钉

    钉钉,专为中国企业打造的免费沟通协同多端平台, 阿里巴巴出品。

    15 引用 • 67 回帖 • 340 关注
  • 创业

    你比 99% 的人都优秀么?

    84 引用 • 1399 回帖
  • Dubbo

    Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,是 [阿里巴巴] SOA 服务化治理方案的核心框架,每天为 2,000+ 个服务提供 3,000,000,000+ 次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。

    60 引用 • 82 回帖 • 593 关注
  • Sillot

    Insights(注意当前设置 master 为默认分支)

    汐洛彖夲肜矩阵(Sillot T☳Converbenk Matrix),致力于服务智慧新彖乄,具有彖乄驱动、极致优雅、开发者友好的特点。其中汐洛绞架(Sillot-Gibbet)基于自思源笔记(siyuan-note),前身是思源笔记汐洛版(更早是思源笔记汐洛分支),是智慧新录乄终端(多端融合,移动端优先)。

    主仓库地址:Hi-Windom/Sillot

    文档地址:sillot.db.sc.cn

    注意事项:

    1. ⚠️ 汐洛仍在早期开发阶段,尚不稳定
    2. ⚠️ 汐洛并非面向普通用户设计,使用前请了解风险
    3. ⚠️ 汐洛绞架基于思源笔记,开发者尽最大努力与思源笔记保持兼容,但无法实现 100% 兼容
    29 引用 • 25 回帖 • 80 关注
  • 深度学习

    深度学习(Deep Learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。

    52 引用 • 40 回帖 • 1 关注
  • 新人

    让我们欢迎这对新人。哦,不好意思说错了,让我们欢迎这位新人!
    新手上路,请谨慎驾驶!

    52 引用 • 228 回帖