000 从零开始的 mini-vlook: WIP 起航!

本贴最后更新于 482 天前,其中的信息可能已经时移俗易

[!Example]+ 属性

  • 版本 v0.0.1-alpha+20240826

你还在为找不到心意的插件而烦恼吗?你还在为大佬更新过慢而困扰吗?你还在因为不同主题的特色功能而反复切换或者取舍不定吗?—— 少年!来吧,求人不如求自己,让我们一起从零开启插件和主题的“深度自定义”之旅吧!

跟着我走,你能学习到如何从零开始开发主题和插件,甚至你能学习到如何管理自己的项目和任务,组织自己的知识和笔记。

我不会深入告诉你 CSS 盒子模型是怎么折磨人的,也不会告诉你复杂的 js 语法糖是怎么起作用的。因为我也不懂。我甚至不想教你如何正确规划自己的编程路线,因为 Github 上路线图真的比我的要全。

我只是把自己摸索和学习的过程分享给你——正如,2 年前,我一边在浏览器搜 “CSS 如何让文字居中”、“CSS 如何改变文字颜色”,一边东拼西凑起这个 bug 不断、又很小众审美的 mini-vlook 主题。

我折腾的最初动力就是—— 我想把 Typora 的 vlook 插件中的“小部分”功能,迁移到我的新笔记软件——思源笔记上。

我从魔改 Zhang Light 主题开始,到借鉴萌仙子的 Dark+ 的项目结构和启动脚本, 复制 Roy 和 Savor 的一个个有趣的功能项,加上一些自己的主观用途,又在折腾群群主老哥和各位大佬的帮助下,一个东拼西凑的主题就奇妙的跑起来。

出发点就是一个很私人的主题诞生了——一个上架就是为了蹭免费云端备份和同步的小小主题,居然也有了点小小的下载量。

搭台唱戏,台下哪怕没有一个人,也应该把戏唱完,何况还有这么多朋友也恰好和我有一样的喜好呢?

所以,我决定把现在 mini-vlook​ 主题拆分成 mini-vlook​ 主题和 mini-vlook-addin​ 插件两个项目(插件不依赖主题,拆分是为了解耦),并添加最近从其他插件和主题中学习到一些“新点子”到这次改进中。

写这个系列的原因,也是希望有人可以像我魔改 Zhang Light 主题一样,把我的主题改成更加符合自己脾气的主题。当然,如果也可以分享出来让社区的兄弟姐妹们参考,那也是极好的。

先画饼——啊呸,先放路线图,让各位看官们解解馋:

[!Tip]+ 提示信息:

下面的内容有些是现在有的,有些是有但是有 BUG,有些可能会被废弃,有些是要新增的功能,至于每个功能是做什么的,等开发到的时候再介绍吧。

  • mini-vlook

    • 整体布局(siyuan)

      • 顶部: 主菜单、同步、前进、后退、插件按钮、标题名、年付订阅、功能特性、插件、命令面板、全局搜索、外观切换、最小化、最大化、关闭
      • 左侧: 文档树、大纲、收集箱、书签、标签、插件面板
      • 右侧:关系图、全局关系图、反向链接
      • 底部:隐藏/停靠面板、同步提示信息、字符数/字数、帮助按钮
      • 其他窗口处理:设置页面、数据历史、闪卡、右键菜单、Tip 快捷菜单、下拉菜单、功能菜单 /​、模板、检索、PDF 标注
    • 内容块渲染:

      • 容器样式:段落、标题、列表块、引述块(引用块)、表格、行内代码块、数学公式块、嵌入块 {{SQL}}​、HTML 块、超级块、挂件、分隔线、IFrame、视频、音频、脑图、流程图、时序图、甘特图、类图、用户游历图、GIt 图、实体关系图、图表、五线谱、Graphviz、Flowchart、PlantUML
      • 文本样式:块引用、超链接、图片、下划线、粗体、斜体、删除线、高亮(标记)、上标、下标、行内代码、键盘、标签、行级公式、备注、前景颜色、背景颜色、虚拟引用
    • 额外增加的功能

      • 封面和封底theme=tm1...tm7

      • 自动编号f=bt

      • 文字竖排f=sp

      • 列表转表格f=bg

      • 列表转看板f=kb

      • 列表转看板(c)f=kbw

      • 分割线 + 列表转看板1-4个分割线

        • f=bc​ 启用旧版渲染模式,用 1、2、3 个分割线,分别渲染为 表格、看板和脑图
      • 列表转导图f=map

      • card 视图card card.img-top card.list

      • 链接前小图片

      • 多级标签渲染增强需要 JavaScript**RD

      • 显示 custom-f 属性

      • OneNote 左侧树状列表

      • 透明现代化的底部Dock

      • 封面和封底

      • 多主题切换需要 JavaScript**RD

    • 行内代码扩展(需要 JavaScript 辅助)【VLOOK13 语法】

      • 微章f=wz
      • 微章f=chk-wz
      • 注音f=pg
      • 刮刮卡f=rb
      • 彩虹引用f=bqcolor
      • 复选框f=chk扩展
      • 计数任务f=todo扩展
      • 下拉选择f=cx扩展
      • 分页引用f=bqtab扩展
      • 命令f=bqtab扩展
      • 列表仿 workflowy 注释f=ae扩展:
  • mini-vlook-addin

    • mini-vlook 主题设置按钮

    • 色号_~色号~_​ 【斜体 + 下标】

    • 标签* 内容 1 *​ 【斜体 + 行内代码】

    • 微章*标题 内容 1 内容2*_~色号~_​ 【斜体 + 行内代码】

      • 支持变量格式突出显示: {{变量}}%变量%${变量}#{变量}var(变量)​;
    • 进度条**==进度数值==**​ (0-100,可溢出)【粗体 + 高亮】

    • 面包屑*===面包屑内容=*​ 支持的分隔符: >/\▶︎​ 【斜体 + 高亮】

    • 注音拼音*^yin^*​ 【斜体 + 上标】

    • 刮刮卡*提示说明**被隐藏的内容***​ 【斜体 + 粗体】

    • 分栏引用非 mini-vlook 主题-生效

    • 列表看板非 mini-vlook 主题-生效

    • GitHub Style Alert

    • 明信片

    • 封面&封底非 mini-vlook 主题-生效

    • 多主题切换非 mini-vlook 主题-生效

    • 跨行进行文本渲染

    • 导出​: markdown​、pdf​、docx

    • 表格

      • 自动编号、添加题注
    • 图片

      • 自动编号、添加题注
      • 在高分屏下自动适配显示高清的版本(2x、3x)
      • 自动适配 Dark Mode
      • 让图标的颜色与周围的元素更搭更和谐
      • 为图片添加工程风的网格背景

  • 思源笔记

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

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

    28446 引用 • 119778 回帖

相关帖子

欢迎来到这里!

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

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

推荐标签 标签

  • AWS
    11 引用 • 28 回帖 • 1 关注
  • 新人

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

    52 引用 • 228 回帖
  • Windows

    Microsoft Windows 是美国微软公司研发的一套操作系统,它问世于 1985 年,起初仅仅是 Microsoft-DOS 模拟环境,后续的系统版本由于微软不断的更新升级,不但易用,也慢慢的成为家家户户人们最喜爱的操作系统。

    232 引用 • 484 回帖 • 1 关注
  • CSDN

    CSDN (Chinese Software Developer Network) 创立于 1999 年,是中国的 IT 社区和服务平台,为中国的软件开发者和 IT 从业者提供知识传播、职业发展、软件开发等全生命周期服务,满足他们在职业发展中学习及共享知识和信息、建立职业发展社交圈、通过软件开发实现技术商业化等刚性需求。

    14 引用 • 155 回帖
  • Spark

    Spark 是 UC Berkeley AMP lab 所开源的类 Hadoop MapReduce 的通用并行框架。Spark 拥有 Hadoop MapReduce 所具有的优点;但不同于 MapReduce 的是 Job 中间输出结果可以保存在内存中,从而不再需要读写 HDFS,因此 Spark 能更好地适用于数据挖掘与机器学习等需要迭代的 MapReduce 的算法。

    74 引用 • 46 回帖 • 563 关注
  • Oracle

    Oracle(甲骨文)公司,全称甲骨文股份有限公司(甲骨文软件系统有限公司),是全球最大的企业级软件公司,总部位于美国加利福尼亚州的红木滩。1989 年正式进入中国市场。2013 年,甲骨文已超越 IBM,成为继 Microsoft 后全球第二大软件公司。

    107 引用 • 127 回帖 • 329 关注
  • uTools

    uTools 是一个极简、插件化、跨平台的现代桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。

    9 引用 • 75 回帖
  • WebSocket

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

    48 引用 • 206 回帖 • 285 关注
  • 运维

    互联网运维工作,以服务为中心,以稳定、安全、高效为三个基本点,确保公司的互联网业务能够 7×24 小时为用户提供高质量的服务。

    151 引用 • 257 回帖 • 1 关注
  • V2Ray
    1 引用 • 15 回帖 • 4 关注
  • OpenStack

    OpenStack 是一个云操作系统,通过数据中心可控制大型的计算、存储、网络等资源池。所有的管理通过前端界面管理员就可以完成,同样也可以通过 Web 接口让最终用户部署资源。

    10 引用 • 8 关注
  • Vim

    Vim 是类 UNIX 系统文本编辑器 Vi 的加强版本,加入了更多特性来帮助编辑源代码。Vim 的部分增强功能包括文件比较(vimdiff)、语法高亮、全面的帮助系统、本地脚本(Vimscript)和便于选择的可视化模式。

    29 引用 • 66 回帖
  • abitmean

    有点意思就行了

    44 关注
  • Notion

    Notion - The all-in-one workspace for your notes, tasks, wikis, and databases.

    10 引用 • 80 回帖 • 1 关注
  • jsoup

    jsoup 是一款 Java 的 HTML 解析器,可直接解析某个 URL 地址、HTML 文本内容。它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 jQuery 的操作方法来取出和操作数据。

    6 引用 • 1 回帖 • 516 关注
  • SpaceVim

    SpaceVim 是一个社区驱动的模块化 vim/neovim 配置集合,以模块的方式组织管理插件以
    及相关配置,为不同的语言开发量身定制了相关的开发模块,该模块提供代码自动补全,
    语法检查、格式化、调试、REPL 等特性。用户仅需载入相关语言的模块即可得到一个开箱
    即用的 Vim-IDE。

    3 引用 • 31 回帖 • 120 关注
  • TensorFlow

    TensorFlow 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。

    20 引用 • 19 回帖
  • Office

    Office 现已更名为 Microsoft 365. Microsoft 365 将高级 Office 应用(如 Word、Excel 和 PowerPoint)与 1 TB 的 OneDrive 云存储空间、高级安全性等结合在一起,可帮助你在任何设备上完成操作。

    6 引用 • 35 回帖
  • Sym

    Sym 是一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)系统平台。

    下一代的社区系统,为未来而构建

    524 引用 • 4602 回帖 • 731 关注
  • Ngui

    Ngui 是一个 GUI 的排版显示引擎和跨平台的 GUI 应用程序开发框架,基于
    Node.js / OpenGL。目标是在此基础上开发 GUI 应用程序可拥有开发 WEB 应用般简单与速度同时兼顾 Native 应用程序的性能与体验。

    7 引用 • 9 回帖 • 429 关注
  • LaTeX

    LaTeX(音译“拉泰赫”)是一种基于 ΤΕΧ 的排版系统,由美国计算机学家莱斯利·兰伯特(Leslie Lamport)在 20 世纪 80 年代初期开发,利用这种格式,即使使用者没有排版和程序设计的知识也可以充分发挥由 TeX 所提供的强大功能,能在几天,甚至几小时内生成很多具有书籍质量的印刷品。对于生成复杂表格和数学公式,这一点表现得尤为突出。因此它非常适用于生成高印刷质量的科技和数学类文档。

    14 引用 • 84 回帖
  • Redis

    Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API。从 2010 年 3 月 15 日起,Redis 的开发工作由 VMware 主持。从 2013 年 5 月开始,Redis 的开发由 Pivotal 赞助。

    285 引用 • 248 回帖
  • 以太坊

    以太坊(Ethereum)并不是一个机构,而是一款能够在区块链上实现智能合约、开源的底层系统。以太坊是一个平台和一种编程语言 Solidity,使开发人员能够建立和发布下一代去中心化应用。 以太坊可以用来编程、分散、担保和交易任何事物:投票、域名、金融交易所、众筹、公司管理、合同和知识产权等等。

    34 引用 • 367 回帖 • 1 关注
  • Rust

    Rust 是一门赋予每个人构建可靠且高效软件能力的语言。Rust 由 Mozilla 开发,最早发布于 2014 年 9 月。

    60 引用 • 22 回帖 • 2 关注
  • OpenCV
    15 引用 • 36 回帖 • 1 关注
  • 千千插件

    千千块(自定义块 css 和 js)
    可以用 ai 提示词来无限创作思源笔记

    32 引用 • 69 回帖
  • Ant-Design

    Ant Design 是服务于企业级产品的设计体系,基于确定和自然的设计价值观上的模块化解决方案,让设计者和开发者专注于更好的用户体验。

    17 引用 • 23 回帖 • 10 关注