梦良衣

White-Night-Dream
关注
110518 号成员,2023-08-06 13:47:45 加入
165
个人主页 浏览
67h10m
在线时长
  • 思源笔记插件丨子文档整理

    2024-12-08 20:16

    achuan 大彻大悟 神功大成了

  • 想问问大家是否有“块镜像副本”的需求(notion 的同步块功能)

    2024-12-06 11:32

    可以试试番茄工具箱刚出的同步块功能

  • [js] 批量折叠和展开标题,标题批量转换不再是梦

    2024-12-05 22:59

    帮了大忙了 对我这种超大单文档用法

  • [js] 思源笔记文档添加动态图标自定义颜色

    2024-11-19 23:28

    测试好像不生效

  • 思源笔记丨动态图标使用笔记

    2024-11-10 19:30

    我用模板无法设置图标

    .action{/* 获取今天日期和星期 */}
    .action{ $today := now | date "2006-01-02" }
    .action{ $weekday := now | date "Mon" }
    
    .action{/* 定义每个星期几对应的颜色 */}
    .action{ $weekdayColors := dict "Mon" "E55D3B" "Tue" "FFA95C" "Wed" "FAD155" "Thu" "8BC34A" "Fri" "5BC0DE" "Sat" "5FADE2" "Sun" "C481BD" }
    
    .action{/* 获取当前星期的颜色 */}
    .action{ $color := index $weekdayColors $weekday }
    
    .action{/* 设置文档图标:选择type6,仅返回星期样式 */}
    {: icon="api/icon/getDynamicIcon?type=6&date=.action{ $today }&color=.action{ $color }" type="doc"}
    
  • 思源笔记丨动态图标使用笔记

    2024-11-10 17:34

    或者也可自定义颜色

    • 日记:格式“2024-11-10”
      import json
      import re
      import os
      from datetime import datetime
      
      
      def update_sy_file(file_path):
          # 读取 .sy 文件内容
          with open(file_path, "r", encoding="utf-8") as file:
              content = file.read()
      
          # 解析 JSON 数据
          data = json.loads(content)
      
          # 使用正则表达式提取 title 中的日期
          title = data.get("Properties", {}).get("title", "")
          match = re.match(r"^(\d{4})-(\d{2})-(\d{2})$", title)
          if match:
              year, month, day = match.groups()
              formatted_date = f"{year}-{month}-{day}"
      
              # 获取日期对应的星期几
              date_obj = datetime.strptime(formatted_date, "%Y-%m-%d")
              weekday = date_obj.weekday()  # 星期一是0,星期日是6
      
              # 根据星期几设置颜色
              colors = ["E55D3B", "FFA95C", "FAD155", "8BC34A", "5BC0DE", "5FADE2", "C481BD"]
              color = colors[weekday]
      
              # 更新 icon 属性
              new_icon = f"api/icon/getDynamicIcon?type=6&color={color}&date={formatted_date}&lang=zh_CN&weekdayType=1"
              data["Properties"]["icon"] = new_icon
      
              # 将更新后的数据写回文件
              with open(file_path, "w", encoding="utf-8") as file:
                  json.dump(data, file, ensure_ascii=False)
              print(f"Updated icon for file: {file_path}")
      
      
      def process_directory(directory_path):
          # 遍历目录及其子目录中的所有文件
          for root, _, files in os.walk(directory_path):
              for file in files:
                  if file.endswith(".sy"):
                      file_path = os.path.join(root, file)
                      update_sy_file(file_path)
      
      
      # 使用示例
      process_directory(r"D:\1STUDY\SIYUAN\data\20231007210051-jpydsvc")
      
    • 月:格式“11”
      import json
      import re
      import json
      import re
      import os
      
      
      def update_sy_file(file_path):
          # 读取 .sy 文件内容
          with open(file_path, "r", encoding="utf-8") as file:
              content = file.read()
      
          # 解析 JSON 数据
          data = json.loads(content)
      
          # 使用正则表达式提取 title 中的日期
          title = data.get("Properties", {}).get("title", "")
          # path = data.get("Path", "")
      
      
          match = re.match(r"^(\d{2})$", title)  # 匹配2位数字的月份
          if match:
              month = match.group(1)  # 使用group(1)而不是groups(1)
              formatted_date = f"{whatyear}-{month}-01"
      
              # 定义每个月份对应的颜色
              month_colors = {
                  "01": "FFFF99",  # 正月-黄白游
                  "02": "A64236",  # 二月-朱草
                  "03": "422166",  # 三月-凝夜紫
                  "04": "C25160",  # 四月-唇脂
                  "05": "D5DBAA",  # 五月-筠雾碧
                  "06": "E3B1C3",  # 六月-夕岚
                  "07": "88B5DA",  # 七月-窃蓝
                  "08": "F5F2EA",  # 八月-凝脂
                  "09": "941D24",  # 九月-朱樱
                  "10": "DC82A7",  # 十月-龙膏烛
                  "11": "E7CCE7",  # 十一月-银红
                  "12": "92BCC6",  # 十二月-青白玉
              }
      
              # 获取对应月份的颜色
              color = month_colors.get(month, "#FFFFFF")  # 默认颜色为白色
      
              # 更新 icon 属性
              new_icon = f"api/icon/getDynamicIcon?type=3&date={formatted_date}&color={color}"
              data["Properties"]["icon"] = new_icon
      
              # 将更新后的数据写回文件
              with open(file_path, "w", encoding="utf-8") as file:
                  json.dump(data, file, ensure_ascii=False)
              print(f"Updated icon for file: {file_path}")
      
      def process_directory(directory_path):
          # 只遍历当前目录下的文件,不递归进入子目录
          for item in os.listdir(directory_path):
              full_path = os.path.join(directory_path, item)
              if os.path.isfile(full_path) and item.endswith('.sy'):
                  update_sy_file(full_path)
      
      whatyear = "2024"
      # 使用示例
      process_directory(r"D:\1STUDY\SIYUAN\data\20231007210051-jpydsvc\20231212180155-4yzi6wx\20231230220908-wq15x5o")# 2024
      
  • 思源笔记丨动态图标使用笔记

    2024-11-10 16:42

    补一个默认设置的脚本

    • 日记:格式“2024-11-10”
      import json
      import re
      import os
      
      
      def update_sy_file(file_path):
          # 读取 .sy 文件内容
          with open(file_path, "r", encoding="utf-8") as file:
              content = file.read()
      
          # 解析 JSON 数据
          data = json.loads(content)
      
          # 使用正则表达式提取 title 中的日期
          title = data.get("Properties", {}).get("title", "")
          match = re.match(r"^(\d{4})-(\d{2})-(\d{2})$", title)
          if match:
              year, month, day = match.groups()
              formatted_date = f"{year}-{month}-{day}"
              # 更新 icon 属性
              new_icon = f"api/icon/getDynamicIcon?type=6&color=red&date={formatted_date}"
              data["Properties"]["icon"] = new_icon
      
              # 将更新后的数据写回文件
              with open(file_path, "w", encoding="utf-8") as file:
                  json.dump(data, file, ensure_ascii=False)
              print(f"Updated icon for file: {file_path}")
      
      
      def process_directory(directory_path):
          # 遍历目录及其子目录中的所有文件
          for root, _, files in os.walk(directory_path):
              for file in files:
                  if file.endswith(".sy"):
                      file_path = os.path.join(root, file)
                      update_sy_file(file_path)
      
      
      # 使用示例
      process_directory(r"D:\1STUDY\SIYUAN\data\20231007210051-jpydsvc")
      
    • 月:格式“11”
      import json
      import re
      import os
      
      
      def update_sy_file(file_path):
          # 读取 .sy 文件内容
          with open(file_path, "r", encoding="utf-8") as file:
              content = file.read()
      
          # 解析 JSON 数据
          data = json.loads(content)
      
          # 使用正则表达式提取 title 中的日期
          title = data.get("Properties", {}).get("title", "")
          # path = data.get("Path", "")
      
      
          match = re.match(r"^(\d{2})$", title)  # 匹配2位数字的月份
          if match:
              month = match.group(1)  # 使用group(1)而不是groups(1)
              formatted_date = f"{whatyear}-{month}-01"
              # 更新 icon 属性
              new_icon = f"api/icon/getDynamicIcon?type=3&date={formatted_date}"
              data["Properties"]["icon"] = new_icon
      
              # 将更新后的数据写回文件
              with open(file_path, "w", encoding="utf-8") as file:
                  json.dump(data, file, ensure_ascii=False)
              print(f"Updated icon for file: {file_path}")
      
      def process_directory(directory_path):
          # 只遍历当前目录下的文件,不递归进入子目录
          for item in os.listdir(directory_path):
              full_path = os.path.join(directory_path, item)
              if os.path.isfile(full_path) and item.endswith('.sy'):
                  update_sy_file(full_path)
      
      whatyear = "2023"
      # 使用示例
      process_directory(r"D:\1STUDY\SIYUAN\data\20231007210051-jpydsvc\20231212180155-4yzi6wx\20231212180155-jzvvkz7")# 2024
      
  • 白板需求讨论征集

    2024-11-01 10:29

    都要吧 电脑上用卡片整理知识比传统文档型方便 特别是大型文档 我有平板也可以用手写笔涂写

  • 想问问大家是否有“块镜像副本”的需求(notion 的同步块功能)

    2024-10-31 14:08

    有非常强的需求 嵌入块多起来性能和编辑都是问题

  • 提议更改反链的展示逻辑

    2024-10-21 15:21

    我也觉得有点草率

  • siyuan 究极性能优化笔记

    2024-10-12 10:11

    确实是个痛点 我习惯把书导入到思源看 有时候真的是卡疯了

  • 有没有画廊视图的替代品?

    2024-10-12 10:05
    .av__cellassetimg {
      width: 100% !important;
      height: auto !important;
      max-height: none !important;
    }
    

    数据库图片全宽 css

  • 思源笔记格式刷插件开发笔记

    2024-10-10 18:59

    感谢你对社区的贡献

  • 批量导入文档到数据库 0.0.6 版全新发布

    2024-10-10 15:00

    搞定啦 不麻烦大佬了

  • 批量导入文档到数据库 0.0.6 版全新发布

    2024-10-09 21:13

    佬可能我没有表示清楚 我不需要面包屑做标题 只是拿来排序用的

  • 批量导入文档到数据库 0.0.6 版全新发布

    2024-10-09 19:10

    感谢大佬 脚本很有用 我这里还有个需求不知道能不能实现 我用
    select * from blocks
    where path like '%${docBlockId}%' and markdown like '%✨%' and (type ='p' or type='h' or type='d' or type='t') order by created asc,sort asc ;来整理一个文档的所有标记好的知识点用于复习 同时 我希望他们添加到数据库时能够读取他们的面包屑该如何实现 (面包屑不行,母一级标题也行 )我想到的可以用脚本先写入面包屑到属性里

  • 手机端建议精简功能

    2024-10-04 19:55

    不仅反人类,而且数据多了以后打开和同步都特别慢 恶心的我一度都不想用了

  • aris 主题左上角思源的图标被吃掉一块

    2024-09-13 09:55

    自定义外观 css

    #dockLeft {
        z-index: 0!important;
        /* Add additional styles here */
    }
    
  • 使用 py 一键将 md 文档中 html 表格转思源表格

    2024-08-04 15:17

    额,好像发布到社区思源表格会变成 md 表格,这里附上图

    filehtml 表格转思源表格.png

  • 数据库一些列的值能否自动获取文档里的数据

    2024-06-24 16:22

    大佬,可以根据标题序号获取所属文档的对应标题吗,数据库长这样 章节是数据列

    image.png

    我让 gpt4 写都搞不定

    ```go
    .action{ $d := .章节 | int }
    .action{ $blocks := queryBlocks "SELECT root_id FROM blocks WHERE id='?'" .id }
    .action{ if not (empty $blocks) }
    .action{ $rootID := (first $blocks).root_id }
    .action{ $chapters := queryBlocks "SELECT * FROM blocks WHERE root_id = '?' AND type = 'h1' AND subtype = 'h1'" $rootID }
    .action{ $currentChapter := 1 }
    .action{ $title := "" }
    .action{ range $chapters }
    .action{ if eq $currentChapter $d }
    .action{ $title = .Content }
    .action{ end }
    .action{ $currentChapter = add $currentChapter 1 }
    .action{ end }
    .action{ if ne $title "" }
    .action{ $title }
    .action{ else }
    无
    .action{ end }
    .action{ end }
    
    
    
  • 文档漫游支持自定义排除(由 SQL 嵌入块 + 快速添加块属性插件实现)

    2024-06-21 11:22

    对的,但是好像可以用 sql 查到文档的子文档,就想着行不行

  • 文档漫游支持自定义排除(由 SQL 嵌入块 + 快速添加块属性插件实现)

    2024-06-18 21:58

    有办法实现 notsee 文档,子文档也不可见吗

  • 看板功能

    2024-06-17 16:05

    催催,拿数据库做 todo 的很需要这个