批量添加微软 fluent emoji 到思源

本贴最后更新于 244 天前,其中的信息可能已经天翻地覆
  1. 这个方案是通过添加==自定义 emoji== 表情包的方式增加微软表情包,全套大概一万多个。可酌情使用。
  2. 按照习惯,先上教程再上示例,所以图片在步骤==下方==。
  3. 本教程主要是为了配合思源插件:emoji 增强(siyuan-plugin-emoji-enhance)的按文件夹分组功能,将源文件自动分组。

首先说明缺点:

  1. 暂时没有找到合适的 fluent emoji 字体,因此本方案不能替换思源内置的 emoji。
  2. 文件较多较大,数量 1W+(四种风格总共),大小 100MB。酌情挑选使用。

步骤

前置条件

  1. 下载 fluent emoji 的压缩包文件:GitHub - microsoft/fluentui-emoji: A collection of familiar, friendly, and modern emoji from Microsoft

    1. 绿色按钮:Code ---> Download ZIP
  2. 在思源中安装 emoji增强(siyuan plugin emoji enhance)

  3. 安装 python https://www.python.org/

具体步骤

  1. 解压缩下载的 ZIP 文件

  2. 找到解压缩后的文件夹

  3. 文件夹路径 --> assets 下创建一个 python 文件 organize_emoji.py

  4. 复制代码到 python 文件,并在这个文件夹下运行

    1. 运行命令:python3 organize_emoji.py

    2. 代码:

      import os import json import shutil # 设定当前目录为工作目录 root_dir = '.' # 功能:递归遍历文件夹,寻找最底层的目录 def move_files_and_remove_dir(path, group): # 判断是否是最底层目录 if all(os.path.isdir(os.path.join(path, x)) for x in os.listdir(path)): for dir_name in os.listdir(path): # 递归调用处理下一层目录 move_files_and_remove_dir(os.path.join(path, dir_name), group) else: # 移动文件到目标目录 target_folder = os.path.join(root_dir, f"{group}_{os.path.basename(path)}") os.makedirs(target_folder, exist_ok=True) for file in os.listdir(path): src_file = os.path.join(path, file) dst_file = os.path.join(target_folder, file) shutil.move(src_file, dst_file) # 检查是否可以删除原目录 if not os.listdir(path): os.rmdir(path) # 遍历所有顶级文件夹 for emoji_folder in os.listdir(root_dir): emoji_path = os.path.join(root_dir, emoji_folder) if os.path.isdir(emoji_path) and 'metadata.json' in os.listdir(emoji_path): metadata_path = os.path.join(emoji_path, 'metadata.json') # 读取metadata.json获取group信息 with open(metadata_path, 'r', encoding='utf-8') as f: data = json.load(f) group = data.get('group') # 处理此emoji文件夹下的所有文件 for item in os.listdir(emoji_path): item_path = os.path.join(emoji_path, item) if os.path.isdir(item_path): move_files_and_remove_dir(item_path, group) # 删除原emoji目录 shutil.rmtree(emoji_path, ignore_errors=True) # 打印完成信息 print("文件已按照分组信息和风格分类。原文件夹已删除。")
  5. 稳妥起见关闭思源,然后将 assets中的所有文件夹 复制到 思源的emojis文件夹 下方

  6. 打开思源

  7. 顺便给个 css 片段,修一下 emoji 增强的分组栏

    .emojis>.fn__flex { overflow-x: scroll; }

介绍

微软 fluent 分为四种风格:

  1. 3D:PNG 格式,效果好
  2. 多彩 Color:SVG 格式,效果与 3D 有些区别的立体图标
  3. 扁平 Flat:SVG 格式,扁平化图标
  4. 高对比 High Contrast(黑白):SVG 格式,黑白图标

image

image

image

思源中结合插件的样式

可以看到底部已经按默认类型和风格分好组了。

b042db708a82ff536e8c6c64b999fcae

image

  • 思源笔记

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

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

    24881 引用 • 102392 回帖
1 操作
ACai 在 2024-08-02 12:43:02 更新了该帖

相关帖子

欢迎来到这里!

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

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