[思源笔记第三方插件系统] 插件系统安装指引

本贴最后更新于 385 天前,其中的信息可能已经沧海桑田

2023/3/28 更新:以支持挂件版本安装,详见:[思源笔记第三方插件系统] v0.3.21 发布,支持“插件系统挂件版”


  1. 将如下代码插入到代码片段中(源码可以查看插件系统的 load.js)

    /* SiYuanPluginSystem */
    (function () {
        const path = require('path');
        const getCrossPlatformAppDataFolder = () => {
            let configFilePath;
            if (process.platform === "darwin") {
                configFilePath = path.join(
                    process.env.HOME,
                    "/Library/Application Support"
                );
            } else if (process.platform === "win32") {
                // Roaming包含在APPDATA中了
                configFilePath = process.env.APPDATA;
            } else if (process.platform === "linux") {
                configFilePath = process.env.HOME;
            }
            return configFilePath;
        };
        try {
            const data = require('fs').readFileSync(path.join(getCrossPlatformAppDataFolder(), '.siyuan', 'plugin.js'));
            const script = data.toString('utf8');
            console.log('local plugin system found, loading...');
            eval(script);
    
        } catch (e) {
            console.log('local plugin system not found, load online');
            return fetch('https://gitee.com/zuoez02/siyuan-plugin-system/raw/main/main.js', { cache: 'no-cache' }).then((res) => res.text()).then((sc) => {
                window.siyuanPluginScript = sc;
                eval(sc);
            });
        }
    })();
    

    image
    打开设置
    image
    选择外观 -> 代码片段 设置
    image
    如图所示添加 JS 代码,粘贴代码并开启,点击确定保存
    插件系统将自动完成安装及开启。

  2. image
    右上角出现小齿轮,代表安装完成,点击小齿轮,选择插件系统设置,即可查看当前插件系统配置
    image

  3. 打开你的工作空间目录,在 data​目录下创建 plugins 目录(通过思源菜单-> 工作空间-> 你的工作空间名称-> 打开文件位置即可直接打开)

  4. 将你下载的插件放置在 plugins 目录下,使用插件系统快捷菜单的“重载”功能,页面刷新后,在插件系统菜单的插件列表中即可看到你的插件。每个插件为一个目录,其内部必须包括 main.js​和 manifest.json​两个主要文件
    image

    image

  5. 关闭“安全模式”,在插件列表中开启插件,即可完成插件的加载。
    image
    关闭“安全模式”
    image
    开启你的第三方插件

注意 ⚠️:安全模式的作用是为了确保当开启时不加载第三方插件。由于 Electron 应用复杂的 API 设计,很难做到一个安全的插件系统,因此需要用户个人根据意愿开启或关闭安全模式。当插件系统初次安装时,安全模式为开启状态。

  • 思源笔记

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

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

    18530 引用 • 68884 回帖
1 操作
zuoez02 在 2023-03-28 12:26:09 更新了该帖

相关帖子

优质回帖

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • 提供一下版本信息和系统信息,另外打开开发者工具截图一下控制台输出吧

    1 回复
  • 其他回帖
  • 思源 2.8.2 fedora linux,从集市安装了,之后啥也没有呀。

    之前手动加入代码片段,也是啥都没有。重启五六遍了。

    截图 20230403095723.png

    1 回复
  • 503725345

    同样的。片段代码没错,也启用了,默认主题。
    重启了没看到那个小齿轮。😭

    image.png

    1 回复
  • 版本多少?打开一下开发者控制台,截图一下看看有没有 Plugin System 的输出。

    这个片段依赖外网才能下载到本地

    1 回复
  • 查看全部回帖

推荐标签 标签

  • Swagger

    Swagger 是一款非常流行的 API 开发工具,它遵循 OpenAPI Specification(这是一种通用的、和编程语言无关的 API 描述规范)。Swagger 贯穿整个 API 生命周期,如 API 的设计、编写文档、测试和部署。

    26 引用 • 35 回帖 • 11 关注
  • Thymeleaf

    Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。类似 Velocity、 FreeMarker 等,它也可以轻易的与 Spring 等 Web 框架进行集成作为 Web 应用的模板引擎。与其它模板引擎相比,Thymeleaf 最大的特点是能够直接在浏览器中打开并正确显示模板页面,而不需要启动整个 Web 应用。

    11 引用 • 19 回帖 • 315 关注
  • Lute

    Lute 是一款结构化的 Markdown 引擎,支持 Go 和 JavaScript。

    25 引用 • 191 回帖 • 18 关注
  • BND

    BND(Baidu Netdisk Downloader)是一款图形界面的百度网盘不限速下载器,支持 Windows、Linux 和 Mac,详细介绍请看这里

    107 引用 • 1281 回帖 • 19 关注
  • HHKB

    HHKB 是富士通的 Happy Hacking 系列电容键盘。电容键盘即无接点静电电容式键盘(Capacitive Keyboard)。

    5 引用 • 74 回帖 • 405 关注
  • Hadoop

    Hadoop 是由 Apache 基金会所开发的一个分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。

    82 引用 • 122 回帖 • 612 关注
  • NGINX

    NGINX 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 NGINX 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。

    311 引用 • 546 回帖 • 38 关注
  • GAE

    Google App Engine(GAE)是 Google 管理的数据中心中用于 WEB 应用程序的开发和托管的平台。2008 年 4 月 发布第一个测试版本。目前支持 Python、Java 和 Go 开发部署。全球已有数十万的开发者在其上开发了众多的应用。

    14 引用 • 42 回帖 • 682 关注
  • BookxNote

    BookxNote 是一款全新的电子书学习工具,助力您的学习与思考,让您的大脑更高效的记忆。

    笔记整理交给我,一心只读圣贤书。

    1 引用 • 1 回帖 • 3 关注
  • 电影

    这是一个不能说的秘密。

    120 引用 • 597 回帖 • 1 关注
  • GraphQL

    GraphQL 是一个用于 API 的查询语言,是一个使用基于类型系统来执行查询的服务端运行时(类型系统由你的数据定义)。GraphQL 并没有和任何特定数据库或者存储引擎绑定,而是依靠你现有的代码和数据支撑。

    4 引用 • 3 回帖 • 21 关注
  • LeetCode

    LeetCode(力扣)是一个全球极客挚爱的高质量技术成长平台,想要学习和提升专业能力从这里开始,充足技术干货等你来啃,轻松拿下 Dream Offer!

    209 引用 • 72 回帖
  • 开源

    Open Source, Open Mind, Open Sight, Open Future!

    395 引用 • 3408 回帖 • 1 关注
  • Flutter

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

    39 引用 • 92 回帖 • 8 关注
  • 创业

    你比 99% 的人都优秀么?

    82 引用 • 1398 回帖
  • 运维

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

    148 引用 • 257 回帖
  • 服务

    提供一个服务绝不仅仅是简单的把硬件和软件累加在一起,它包括了服务的可靠性、服务的标准化、以及对服务的监控、维护、技术支持等。

    41 引用 • 24 回帖 • 2 关注
  • 快应用

    快应用 是基于手机硬件平台的新型应用形态;标准是由主流手机厂商组成的快应用联盟联合制定;快应用标准的诞生将在研发接口、能力接入、开发者服务等层面建设标准平台;以平台化的生态模式对个人开发者和企业开发者全品类开放。

    15 引用 • 127 回帖 • 1 关注
  • Hprose

    Hprose 是一款先进的轻量级、跨语言、跨平台、无侵入式、高性能动态远程对象调用引擎库。它不仅简单易用,而且功能强大。你无需专门学习,只需看上几眼,就能用它轻松构建分布式应用系统。

    9 引用 • 17 回帖 • 594 关注
  • Hibernate

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

    39 引用 • 103 回帖 • 682 关注
  • Android

    Android 是一种以 Linux 为基础的开放源码操作系统,主要使用于便携设备。2005 年由 Google 收购注资,并拉拢多家制造商组成开放手机联盟开发改良,逐渐扩展到到平板电脑及其他领域上。

    332 引用 • 318 回帖 • 73 关注
  • 周末

    星期六到星期天晚,实行五天工作制后,指每周的最后两天。再过几年可能就是三天了。

    14 引用 • 297 回帖
  • Typecho

    Typecho 是一款博客程序,它在 GPLv2 许可证下发行,基于 PHP 构建,可以运行在各种平台上,支持多种数据库(MySQL、PostgreSQL、SQLite)。

    12 引用 • 60 回帖 • 468 关注
  • WiFiDog

    WiFiDog 是一套开源的无线热点认证管理工具,主要功能包括:位置相关的内容递送;用户认证和授权;集中式网络监控。

    1 引用 • 7 回帖 • 548 关注
  • Mac

    Mac 是苹果公司自 1984 年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro 等计算机。

    164 引用 • 594 回帖
  • Markdown

    Markdown 是一种轻量级标记语言,用户可使用纯文本编辑器来排版文档,最终通过 Markdown 引擎将文档转换为所需格式(比如 HTML、PDF 等)。

    163 引用 • 1450 回帖
  • Angular

    AngularAngularJS 的新版本。

    26 引用 • 66 回帖 • 510 关注