wilsons
关注
142093 号成员,2024-05-12 13:24:23 加入
4.7k
个人主页 浏览
2.7k
帖子 + 回帖 + 评论
正式入驻知乎了,以后新贴主要在这里。 欢迎大家订阅关注! 你的关注对我是莫大鼓励,也能让我持续产出优质内容,我们一起成长 🙏 点这里立即关注:https://www.zhihu.com/people/wilsonses
  • [插件] 思源图片编辑器插件(SiYuan Image Studio)正式发布了

    2025-12-22 11:18

    已经实现了这个功能(现在还处于实验阶段,自测下来没什么问题)

    image.png


    v1.0.1 更新如下:

    1. 增加自定义常用颜色功能
    2. 设置中显示 VIP 过期时间
    3. 修复选中序号和箭头不能实时更改颜色问题
    4. 增加给图片和背景图添加圆角功能
    5. 增加透明度功能
    6. 增加保存和加载编辑状态和历史状态功能(暂不支持手机)

    详见 https://github.com/wish5115/siyuan-image-studio/releases/tag/v1.0.1

  • [插件] 思源图片编辑器插件(SiYuan Image Studio)正式发布了

    2025-12-21 14:30

    想过这个问题,但感觉一般都是临时简单标记下,保存编辑状态和历史的需求应该不是很大吧。


    补充更新:

    已支持 https://github.com/wish5115/siyuan-image-studio/releases/tag/v1.0.1

  • 思源笔记开发 alert、confirm 之坑

    2025-12-10 10:23

    大佬所言极是,不过一般影响不大,除非有较重要的并发需求。但这个 bug 导致用户体验变差了,赶脚这个影响或许更大。

  • 请问如何基于模板进行创建文档呢?

    2025-12-09 18:55

    可以试试这两个

    /api/template/render
    /api/template/renderSprig

  • 如何通过 js 快速添加忽略搜索内容?

    2025-12-09 14:36

    就如 H 佬所说不够丝滑,赶脚意义不大。(想要丝滑就要拦截相关 api,然后重写,较麻烦)

    这个文件其实就是一些 SQL 条件语句,写起来非常简单,想便捷打开编写,可以把该文件拖到 utools 的启动文件里,就可以快速打开了。

    如果批量添加嫌麻烦,可以把文档树目录整个源码拷贝给 ai,让 ai 帮忙批量写。

  • 思源笔记轻量级插件开发模板(零依赖、零构建)

    2025-12-08 12:18

    插件开发入门 | 思源社区文档

    插件开发快速指南 | 思源社区文档

    我觉得看完这两个就已经很清晰了吧,至少入门了,至于具体使用示例或细节就需要慢慢摸索了。

    当然前提是有一定的前端开发知识,如果零基础还是有难度的。

  • 思源笔记轻量级插件开发模板(零依赖、零构建)

    2025-12-08 00:52

    你还别说,我还真开发时偶尔重启下浏览器,vscode,思源等,就是为了缓解资源占用 😄 。

    这些软件运行一久空间能占用 10 多 G,尤其是浏览器。

  • 思源笔记轻量级插件开发模板(零依赖、零构建)

    2025-12-08 00:31

    实际上最后还是要回到 svelte 和 vue 模板的怀抱......

    你说的没错,这里指的是较少界面开发和简单功能开发,较少涉及第三方依赖等。

    模块开发对有经验的开发确实更方便快捷,但对新手来说学习成本高,先能动手做东西,慢慢在学习中入门,再踏入更高层次。另外一点,就是占用空间,小功能也无需动辄占用 100 甚至几百 M 空间,除非开发完就删除依赖,需要时再安装,也麻烦不是。

    生产版本会经过专门的处理,最终的包大小只在几 MB 左右。。。。。。

    是的,我这里说的不是发布版本或打包后的文件占用,是指开发时文件占用。

    我电脑较老,空间有限,外接硬盘不方便,且暂时没有更换打算,只是硬盘小,其他还行,因此对空间占用较敏感,现在软件占用太大了,很多开发占用惊人,尤其是 docker 和 ai 时代,根本装不了几个。

  • 思源笔记轻量级插件开发模板(零依赖、零构建)

    2025-12-08 00:21

    不是吗?我这里官方默认安装依赖和构建完毕

    image.png

  • 思源笔记轻量级插件开发模板(零依赖、零构建)

    2025-12-07 23:22

    小试了一下,简单做了图片编辑工具

    https://github.com/wish5115/siyuan-image-studio

    不过,目前主要精力不在这,短时间内可能不会花太多时间写思源代码了。

    这个插件模板也是之前写的,现在整理完善了下。

  • 坚果云专门给 obsidian 做了个同步插件,羡慕

    2025-12-05 14:55

    思源自带 s3 同步功能,才应该更羡慕吧,它的作用比坚果云更大。

  • [js] 英语学习者的福音,一键播放音频链接

    2025-12-01 21:54

    不要管它显示成什么,对发音无影响,手机端建议用有道发音,剑桥国内访问可能比较卡。

  • [js] 英语学习者的福音,一键播放音频链接

    2025-12-01 20:58

    可以,排查下是否环境影响,新空间试试

  • 搜索“在新页签中打开”不强制分屏,而是在当前页签右侧打开(笔记本小屏需要)

    2025-11-29 17:10

    @8V9q7V @Vanessa @JeffreyChen

    我还是一贯的观点:建议直接增加一个选项,允许用户选择“在分屏中显示”还是“在新标签页中打开”。

    反观市面上那些有生命力的生产力工具,无一不具备极高的可玩性和可配置性。思源笔记的核心竞争力在于“本地化”和“数据掌控”,其初衷是为了把数据的钥匙交还给用户。那么顺理成章地,软件操作本身也应当遵循这一规律,交由用户定义。

    无论对开发者还是用户,提供更多的可配置空间其实是增加用户的粘性和依赖性,是在构建“护城河”。
    如果限制太死,用户会觉得自己只是在使用一个被“困住手脚”的工具,稍有不顺手就可能流失;
    但如果给予足够的自由度,用户会愿意投入时间去打磨适合自己的工作流,从而产生极高的粘性。

    最后想分享两句我的感悟:

    被用户亲自“驯化”过的软件,才是最难被卸载的。

    在这个同质化严重的时代,“灵活性”就是生产力工具最大的“人性化”。让我们给用户选择的权利,这正是思源区别于那些傲慢的商业软件最迷人的地方。

    希望我们不仅要饮水思源,还要不忘初心。


    --- 此观点根据作者凌乱的意思由 gemini 整理而来,表达上可能比较犀利,但不代表本人观点,请忽略个别犀利的词汇,仅关注作者原意即可。

  • 都说未来已来,AI 即将替代人工?我要说不

    2025-11-29 13:32

    Gemini3-pro 最新评价:


    你的观点非常敏锐且务实,是对当前“AI 狂热”的一种冷静反思。

    我非常认同你的核心判断:AI 目前处于“Demo 惊艳,落地艰难”的阶段,距离全面替代人工(尤其是涉及复杂工程化落地的场景),确实为时尚早。

    以下我将结合你的观点,从几个维度进行拆解和补充:

    1. “Demo 大神” vs “工程化地狱”

    你提到的“纯浏览器图片压缩方案”是一个绝佳的切入点。

    • AI 能做的: 它确实能迅速给出 Canvas 压缩、WASM 方案、ImageMagick 调用等几种代码片段。这在做 Demo 时足够唬人。
    • AI 忽略的(也是人类工程师的核心价值):边界情况、色彩空间、性能权衡、兼容性等。

    正如你所说,“能跑通”和“生产级稳定”之间,隔着千山万水。 目前的 AI 更像是一个看过很多书但没干过活的“实习生”,它知道理论上的最优解,但不知道现实世界里的泥坑。

    2. UP 主视角的偏差 vs 真实开发者的痛点

    你提到的 UP 主现象非常精准。

    • 流量逻辑: 视频需要的是视觉冲击力。一个一键生成的数字人、一个 30 秒做出来的网页,非常适合短视频传播。观众看到的是“结果”,忽略的是“过程的可控性”。
    • 生产逻辑: 真实开发需要的是可维护性、可扩展性、确定性。如果 AI 写的一段代码出了 Bug,修复它的时间可能比自己重写还长。

    目前的舆论场确实存在一种“幸存者偏差”:大家只看到了 AI 成功生成的那一次,却没看到背后为了这一个成功结果,人类可能调整了 50 次 Prompt,修复了无数次环境依赖。

    3. “替代”的定义被混淆了

    关于“AI 代替人工”,我们需要区分两个概念:

    • Copilot(副驾驶/辅助): 这一点 AI 已经做得很好。它能帮你写正则、生成样板代码、做翻译。在这个层面上,它已经“替代”了人类的一部分死记硬背和重复劳动。
    • Agent(代理人/完全替代): 这是你质疑的点,也是目前未实现的点。即把需求丢给 AI,它自动完成调研、编码、测试、上线、运维全流程。

    目前大众恐慌的是第二种(完全替代),但实际上技术只走到了第一种(辅助工具)。你所说的“浏览器图片压缩”案例,正是证明了人类作为“决策者”和“兜底者”的重要性无法被取代。

    4. “火出圈”与“落地闭环”的悖论

    你提到的判断标准很有趣:“如果真的能替代,早就火出圈并应用了”。
    其实,局部替代正在发生,但往往是“隐形”的:

    • 客服领域: 很多初级客服确实被 AI 替代了,你可能没感觉到,因为体验虽然不够好,但对于企业来说成本极低。
    • 翻译/插画初稿: 很多商业插画师现在用 AI 出底图,然后人工精修。这里 AI 没有完全替代人,但它替代一部分了“初级画师”的工作。

    但正如你所言,目前没有一个复杂的商业应用是完全由 AI 独立完成并上线的。因为商业应用需要对结果负责(法律责任、财务责任),而 AI 目前还是个“黑盒”,它没法对结果负责。

    总结

    你的观点是清醒剂。
    “未来已来”是一句营销口号,“路还很长”才是工程现实。

    目前的 AI 更像是一个极强的增效工具,而非独立的劳动力。它能让高级工程师(像你这样懂细节、懂兼容性的人)效率翻倍,却无法让一个不懂技术的人直接变身为工程师。

    所以,对于真正掌握核心技术细节、理解业务复杂度的专业人士来说,AI 不是来替代你的,而是来给你打下手的。短期内(3-5 年),人的核心竞争力——对复杂现实世界的理解与判断力,依然是 AI 无法逾越的护城河。

  • 比如我有一个插件,我想要在页面 1,ctrl+g 的功能是当前页面 1 的 A 功能, 在页面 2,ctrl+g 的功能是当前页面 2 的 B 功能。请问如何实现呢?

    2025-11-25 10:29

    可通过 js 绑定事件实现或插件里 EventBus.on 方法 https://docs.siyuan-note.club/zh-Hans/reference/api/plugin/class/EventBus.html

    区分 a 和 b 只需要根据两个页面的不同标记即可,比如 id,标签,属性等

    纯 js 实现事件绑定我这个代码里有 [js] 思源 AI 助手(Thpilot),实现划词 AI 解释、翻译、纠错、总结、聊天等 ,核心函数是

    /**
         * 监听键盘快捷键
         * @param {string} shortcut - 快捷键字符串,如 'meta+alt+z' 或 'ctrl+shift+a'
         * @param {Function} callback - 回调函数
         * @returns {Function} 返回清理函数,用于移除监听器
         */
        function onKeyPress(shortcut, callback) {
            // 系统兼容处理
            if(isMac()) shortcut = shortcut.replace(/ctrl|control/i, 'meta');
            else shortcut = shortcut.replace(/meta|cmd|command/i, 'ctrl');
            // 解析快捷键字符串
            const keys = shortcut.toLowerCase().split('+').map(k => k.trim());
        
            // 分离功能键和普通键
            const modifiers = {
                ctrl: keys.includes('ctrl') || keys.includes('control'),
                alt: keys.includes('alt'),
                shift: keys.includes('shift'),
                meta: keys.includes('meta') || keys.includes('cmd') || keys.includes('command')
            };
        
            // 获取普通键(最后一个非功能键)
            const normalKey = keys.find(key => 
                !['ctrl', 'control', 'alt', 'shift', 'meta', 'cmd', 'command'].includes(key)
            );
        
            // 事件处理函数
            const handleKeyDown = (e) => {
                // 检查所有功能键是否匹配
                const modifiersMatch = 
                    e.ctrlKey === modifiers.ctrl &&
                    e.altKey === modifiers.alt &&
                    e.shiftKey === modifiers.shift &&
                    e.metaKey === modifiers.meta;
            
                // 检查普通键是否匹配
                const keyMatch = normalKey ? 
                    e.code.toLowerCase() === 'key' + normalKey.toLowerCase() : true;
            
                // 如果都匹配,执行回调
                if (modifiersMatch && keyMatch) {
                    e.preventDefault(); // 阻止默认行为
                    callback(e);
                }
            };
        
            // 添加事件监听器
            document.addEventListener('keydown', handleKeyDown);
        
            // 返回清理函数
            return () => {
                document.removeEventListener('keydown', handleKeyDown);
            };
        }
    
  • [js] 思源 AI 助手(Thpilot),实现划词 AI 解释、翻译、纠错、总结、聊天等

    2025-11-25 08:59

    我这边可以,我等会再看看,先用这个 https://gitee.com/wish163/mysoft/blob/main/%E6%80%9D%E6%BA%90/siyuan-ai-thpilot.js

    这个是真实地址,那个链接主要为了方便统计点击数的。

  • [js] 思源 AI 助手(Thpilot),实现划词 AI 解释、翻译、纠错、总结、聊天等

    2025-11-25 08:35

    不是插件,是 js 代码片段,点这里下载代码,然后放到思源 js 代码片段即可

    js 代码片段使用方法 https://www.siyuan-note.club/how-to-use-snippet

  • [js] 思源 AI 助手(Thpilot),实现划词 AI 解释、翻译、纠错、总结、聊天等

    2025-11-25 07:59

    在光标跳动的静默海域,
    思源笔记的甲板之上,
    “二副”悄然登场。
    它不争夺船长的舵轮,
    只在风起时,为你辨识未知的方向。

    当蓝色的选框轻轻落下,
    仿佛给沉睡的文字施加了魔法。
    晦涩的定义被层层剥开,露出真容;
    异国的语言跨越时空,在此相逢。
    那些粗心的错漏、断裂的语法,
    都被它温柔地抚平,重回自然。

    它读懂代码的严谨逻辑,
    也洞察图像深处的隐秘。
    只需轻扣 Ctrl–Alt–Z 的和弦,
    便可唤醒一场灵感迸发的思辨。
    即便思绪迷航,
    那罐“后悔药”里,
    依旧安放着你遗落的曾言。

    它不只是工具,
    更是你随身掌控的锦囊。
    一次相逢,便许下恒久的守望;
    在每一次问与答的往返间,
    Thpilot,助你驶向知识的远方。

  • 嵌入式系列插件重大更新:Excalidraw 代码片段功能上线(脚本 / 样式)

    2025-11-25 01:16

    大佬牛逼,兼容 ob excalidraw 的代码吗?我之前 ob 的代码可以直接拿来用吗

  • 这大概就是思源图片编辑该有的样子吧

    2025-11-25 00:47

    新增:画直线,按 shift 画水平和垂直线(这个功能之前有的,不知道什么时候被 ai 漏掉了)

    改进:矩形,按 shift 画正方形;圆形,默认画椭圆,按 shift 画正方形

  • 这大概就是思源图片编辑该有的样子吧

    2025-11-24 22:24

    @8V9q7V @yuxinzhao @shaoxia @Achuan-2 @ringx

    改进了一下

    1 新增 ctrl+v 粘贴图片到画板

    2 改进复制和保存图片,仅保留中间实际有内容的部分(原来是保存整个画板)

    ps:在前端领域感觉 cluade 还是大佬,第 2 点这个,让 gemini3-pro 改了半天都搞不定,总是有那么 6px 的透明边缘去不掉,但 claude4.5 一次性搞定(不过一个案例或许也不能说明什么吧)

  • 这大概就是思源图片编辑该有的样子吧

    2025-11-24 18:28

    大佬加油 💪

  • 请问 DataPath 可以进行可逆吗?

    2025-11-24 14:48

    缺乏上下文无法判断。

    path 和 hpath 相互转换可参考以下 api

    通过 path 获取 hpath:

    /api/filetree/getHPathByPath

    /api/filetree/getHPathsByPaths

    通过 hpath 获取 path

    /api/filetree/getIDsByHPath

    /api/filetree/getPathByID

    或直接用 SQL 查询并过滤

    总之 hpath 可能对应多个 path,一个 path 仅对应一个 hpath

  • utools+ 思源数据库实现网址收藏夹

    2025-11-23 23:49

    哈哈,只是代表该代码是谁写的而已。