思源作为本地图床导入材料至 SuperMemo,以网页为例

本贴最后更新于 223 天前,其中的信息可能已经东海扬尘

SuperMemo 自带的材料导入方式有两种:复制黏贴与网页导入(web import)。不过,这个不太重要,材料导入的重点并不在这里,即使是网页文件也可以使用复制黏贴,同时,由于我这篇文章 SuperMemo 基本元素与渐进阅读 | 个人踩坑经验 - 知乎 (zhihu.com)提到的网页导入会自带 reference 的原因,我几乎不会使用这种方式来导入材料。

  我认为 SuperMemo 导入图文的重点如下:

  1. 对于文字,我们需要快速的从原材料选取所需要的部分,以及去除它的样式。
  2. 对于图片,保证其不受文件路径影响正常显示。

  对于新手,在不确定结果的情况下,尽量将处理相关的操作放在软件外面,在 SuperMemo 里进行一些设计之外的操作,基本是多只香炉多只鬼,很容易出问题。

  我这边就不做什么系统的梳理,罗列分析目前的各种方法有什么利弊了,反正到最后也是为了推荐我目前在使用的方法。

image.png

用思源配合导入网页

  这个方法的核心思路就是先把网页导入到思源笔记,再从思源笔记导入到 SuperMemo。

  对于文字,使用剪藏扩展 webclipper,使用智能提取可以将主流网页的主要内容提取到思源。即使,扩展不支持智能提取,我们也可以使用手动提取的方式来选取自己想要的内容。同时,保存到思源的内容已经是不带原格式的(思源的文档原先采用的是 md 格式,现在采用的.sy 文件是 json)。这就将选取内容与去除格式的压力转移给了外部。

image.png

Web Clipper - Chrome 应用商店 (google.com)

  对于图片,如若我们直接复制网页到 html,里面的图片文件是 img 标签的形式,这会带来一些问题:1.如果设备没有联网,图片也就无法显示。2.网络都是虚拟的,天知道这些网页链接什么就失效了,你把握不住。

  如果想要通过下载图片到本地来解决这个问题,又会遇到一堆七七八八图片绝对相对路径的问题。

  而思源在运行的时候会打开本地端口 6808,你可以通过 http://127.0.0.1:6806 来访问自己的笔记,最重要的是所有的本地资源文件是通过 http://127.0.0.1:6806/assets/* 来访问的,当你从思源导入材料,其中的图片是类似 <img src="http://127.0.0.1:6806/assets/*.png"> 形式的 img 标签,真正做到了只管理链接,不管理图片本体,也大大减少了图片在 SuperMemo 中出问题的可能性,也减小了 SuperMemo 集合的备份压力。

image.png

思源的图片资源链接 ↑

image.png

在 SuperMemo 中的显示效果 ↑

image.png

SuperMemo 中实际保存的信息 ↑

  如果你不了解 html 相关的知识,你可以理解为通过思源导入的图片在 SuperMemo 的卡片中只是一行代码,这行代码的意思是,这边应该显示一张图片,图片在 src=后面的地址里,这个地址里的图片是由思源本地提供的。

  这就是我为什么在第一篇文章说,我会在 reference 专门设置一个 link 指向对应的思源笔记,同时,保留一个原材料在思源里,也方便我其他相关的笔记对其进行引用,一定程度上能解决所谓的碎片化问题。

  在从思源导入材料到 SuperMemo 之前,我们需要做一点点准备:

  1. 去思源的设置里打开显示网络角标的选项

    image.png

    image.png

  复制网络图片的时候,思源默认是不下载本地的,打开这个选项后,如果是没有下载到本地的网络图片,左上角会有一个标识。

  1. 确定要将图片下载到本地,点击左上角的 更多-网络图片转换为资源文件

image.png

  将网络图片下载到本地后,我们就可以导入到 SuperMemo 里了,要用到下面这个动作:

SY 文章->SM - by Spade7 - 动作信息 - Quicker (getquicker.net)

  具体操作为:

  1. 如果有需要的话,在 SuperMemo 设置好 concept
  2. 在思源打开想要导入到 SuperMemo 的文章
  3. 运行动作,会进入到这篇文章的预览模式
  4. 用鼠标选中想要导入的部分,因为这个模式没有全选操作,不能用 ctr+a,所以,如果要导入全文,我一般用鼠标在开头点一下,按键盘上的 end 键跳到最下面的位置,按住 shift 再点一下末尾就可以全选文章
  5. 选好要导入的部分后,按 ctrl+c,会跳到 SuperMemo 新建文章再跳回思源

  这个本地图床的思路是由 @dammy 老铁提出的,动作也是他制作出来的,极大提升了 SuperMemo 材料导入的体验,解决了图片导入的痛点,在这里向他表示感谢。

将思源作为本地图床

  如果只是想在自己写卡的时候以上面的形式插入自选的图片,单纯把思源作为本地图床也是可以实现的,需要专门建立一个文档,里面什么也不要写,只放自己需要插入的图片。具体操作,参考下面这个视频:

  

  需要用到这个动作:

  插入图片到 sm(网页已更新教程) - 动作信息 - Quicker (getquicker.net)

  图床的视频教程与动作由 sm 群友 @bluebair 提供,向他表示感谢。

  在 SuperMemo 内部如果有清除格式的需求,可以使用撑起 SuperMemo-Quicker 动作半边天的 a 佬的动作

  终极格式清除 - 动作信息 - Quicker (getquicker.net)

  • 思源笔记

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

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

    22340 引用 • 89396 回帖 • 1 关注

相关帖子

欢迎来到这里!

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

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

  • 其他回帖
  • Spade7

    有的,这篇文章的第二个就是你这种方法 SuperMemo 的 epub 导入方案介绍及发展历程 - 知乎 (zhihu.com),正是因为要保证路径完全一致,才不想使用这种方式,比如,之前放在 E 盘,换的新设备却可能没有 E 盘。

  • flowers

    楼主厉害。我也想到了一个方法,既然是因为端口被占用导致的本地化图片时端口不对,那我们可以在用动作添加图片及文章进 SuperMemo 中时用端口检查命令在 cmd 中检查一下,如果端口没有被占用,此时思源应该还是使用的默认端口(没看源码,存疑),如果端口被占用,则直接结束占用该端口的进程。

    以下是检查端口的命令(gpt 生成的):

    在 Windows 中,你可以使用 netstat 命令来查看一个端口是否被占用。以下是具体的步骤:

    1. 打开命令提示符(Command Prompt)。你可以在开始菜单中搜索"cmd"来找到它。
    2. 在命令提示符中,输入以下命令并按回车键:
    netstat -ano | findstr :6806
    

    这个命令会显示所有使用该 6806 端口的进程。如果没有任何输出,那么这个端口就没有被占用。

    如果你看到了输出,那么你可以通过最后一列的 PID(进程 ID)来找出哪个进程正在使用这个端口。你可以在任务管理器(Task Manager)的"详细信息"(Details)标签下,通过 PID 来找到对应的进程。

    2 回复
  • Spade7

    更改的话,用 vscode 打开更上一级的文件夹,然后批量修改:

    用正则匹配 http:\/\/[0-9.]+:(.*?)\/assets 替换为 http://127.0.0.1:6806/assets

    1 回复
  • 查看全部回帖

推荐标签 标签

  • jsoup

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

    6 引用 • 1 回帖 • 477 关注
  • 面试

    面试造航母,上班拧螺丝。多面试,少加班。

    325 引用 • 1395 回帖
  • Hadoop

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

    86 引用 • 122 回帖 • 625 关注
  • Lute

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

    25 引用 • 191 回帖 • 16 关注
  • 心情

    心是产生任何想法的源泉,心本体会陷入到对自己本体不能理解的状态中,因为心能产生任何想法,不能分出对错,不能分出自己。

    59 引用 • 369 回帖
  • SVN

    SVN 是 Subversion 的简称,是一个开放源代码的版本控制系统,相较于 RCS、CVS,它采用了分支管理系统,它的设计目标就是取代 CVS。

    29 引用 • 98 回帖 • 680 关注
  • SSL

    SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS 与 SSL 在传输层对网络连接进行加密。

    70 引用 • 193 回帖 • 431 关注
  • Ubuntu

    Ubuntu(友帮拓、优般图、乌班图)是一个以桌面应用为主的 Linux 操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词,意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观,类似华人社会的“仁爱”思想。Ubuntu 的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。

    125 引用 • 169 回帖 • 1 关注
  • Postman

    Postman 是一款简单好用的 HTTP API 调试工具。

    4 引用 • 3 回帖 • 2 关注
  • 游戏

    沉迷游戏伤身,强撸灰飞烟灭。

    176 引用 • 815 回帖
  • 禅道

    禅道是一款国产的开源项目管理软件,她的核心管理思想基于敏捷方法 scrum,内置了产品管理和项目管理,同时又根据国内研发现状补充了测试管理、计划管理、发布管理、文档管理、事务管理等功能,在一个软件中就可以将软件研发中的需求、任务、bug、用例、计划、发布等要素有序的跟踪管理起来,完整地覆盖了项目管理的核心流程。

    6 引用 • 15 回帖 • 113 关注
  • Ant-Design

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

    17 引用 • 23 回帖
  • Maven

    Maven 是基于项目对象模型(POM)、通过一小段描述信息来管理项目的构建、报告和文档的软件项目管理工具。

    186 引用 • 318 回帖 • 303 关注
  • 百度

    百度(Nasdaq:BIDU)是全球最大的中文搜索引擎、最大的中文网站。2000 年 1 月由李彦宏创立于北京中关村,致力于向人们提供“简单,可依赖”的信息获取方式。“百度”二字源于中国宋朝词人辛弃疾的《青玉案·元夕》词句“众里寻他千百度”,象征着百度对中文信息检索技术的执著追求。

    63 引用 • 785 回帖 • 175 关注
  • 创业

    你比 99% 的人都优秀么?

    84 引用 • 1399 回帖
  • Vditor

    Vditor 是一款浏览器端的 Markdown 编辑器,支持所见即所得、即时渲染(类似 Typora)和分屏预览模式。它使用 TypeScript 实现,支持原生 JavaScript、Vue、React 和 Angular。

    351 引用 • 1814 回帖
  • 程序员

    程序员是从事程序开发、程序维护的专业人员。

    567 引用 • 3532 回帖
  • 资讯

    资讯是用户因为及时地获得它并利用它而能够在相对短的时间内给自己带来价值的信息,资讯有时效性和地域性。

    55 引用 • 85 回帖 • 2 关注
  • Node.js

    Node.js 是一个基于 Chrome JavaScript 运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞 I/O 模型而得以轻量和高效。

    139 引用 • 269 回帖 • 43 关注
  • 开源中国

    开源中国是目前中国最大的开源技术社区。传播开源的理念,推广开源项目,为 IT 开发者提供了一个发现、使用、并交流开源技术的平台。目前开源中国社区已收录超过两万款开源软件。

    7 引用 • 86 回帖
  • Firefox

    Mozilla Firefox 中文俗称“火狐”(正式缩写为 Fx 或 fx,非正式缩写为 FF),是一个开源的网页浏览器,使用 Gecko 排版引擎,支持多种操作系统,如 Windows、OSX 及 Linux 等。

    8 引用 • 30 回帖 • 407 关注
  • Wide

    Wide 是一款基于 Web 的 Go 语言 IDE。通过浏览器就可以进行 Go 开发,并有代码自动完成、查看表达式、编译反馈、Lint、实时结果输出等功能。

    欢迎访问我们运维的实例: https://wide.b3log.org

    30 引用 • 218 回帖 • 628 关注
  • 负能量

    上帝为你关上了一扇门,然后就去睡觉了....努力不一定能成功,但不努力一定很轻松 (° ー °〃)

    88 引用 • 1235 回帖 • 411 关注
  • Rust

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

    58 引用 • 22 回帖
  • 深度学习

    深度学习(Deep Learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。

    53 引用 • 40 回帖 • 2 关注
  • 学习

    “梦想从学习开始,事业从实践起步” —— 习近平

    169 引用 • 506 回帖
  • WebClipper

    Web Clipper 是一款浏览器剪藏扩展,它可以帮助你把网页内容剪藏到本地。

    3 引用 • 9 回帖