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

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

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)

  • 思源笔记

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

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

    28441 引用 • 119746 回帖

相关帖子

欢迎来到这里!

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

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

    发现只有 jpg 格式的图片才能在 sm 中正常显示,有些网页的图片用思源保存后不是 jpg 格式,请问有办法解决吗

    1 回复
  • 其他回帖
  • 😄 很棒,在学习了解思源和 sm 的时候,我深刻感受到工具应该减轻使用者的心智负担,而不是成为一种桎梏。它是脚手架而非枷锁,思源和 sm 就是转移我学习时压力的工具,而思源又能转移 SM 本身缺陷带来的压力,这才是个人成长学习系统该有的样子。

    赞美你的经验分享,Spade7 同志。

    1 回复
  • Spade7

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

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

    1 回复
  • Spade7

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

  • 查看全部回帖

推荐标签 标签

  • 开源

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

    421 引用 • 3610 回帖
  • NetBeans

    NetBeans 是一个始于 1997 年的 Xelfi 计划,本身是捷克布拉格查理大学的数学及物理学院的学生计划。此计划延伸而成立了一家公司进而发展这个商用版本的 NetBeans IDE,直到 1999 年 Sun 买下此公司。Sun 于次年(2000 年)六月将 NetBeans IDE 开源,直到现在 NetBeans 的社群依然持续增长。

    78 引用 • 102 回帖 • 724 关注
  • Elasticsearch

    Elasticsearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful 接口。Elasticsearch 是用 Java 开发的,并作为 Apache 许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

    117 引用 • 99 回帖 • 191 关注
  • Dubbo

    Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,是 [阿里巴巴] SOA 服务化治理方案的核心框架,每天为 2,000+ 个服务提供 3,000,000,000+ 次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点。

    60 引用 • 82 回帖 • 636 关注
  • MyBatis

    MyBatis 本是 Apache 软件基金会 的一个开源项目 iBatis,2010 年这个项目由 Apache 软件基金会迁移到了 google code,并且改名为 MyBatis ,2013 年 11 月再次迁移到了 GitHub。

    174 引用 • 414 回帖 • 343 关注
  • Unity

    Unity 是由 Unity Technologies 开发的一个让开发者可以轻松创建诸如 2D、3D 多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。

    27 引用 • 7 回帖 • 94 关注
  • 人工智能

    人工智能(Artificial Intelligence)是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门技术科学。

    140 引用 • 407 回帖
  • OAuth

    OAuth 协议为用户资源的授权提供了一个安全的、开放而又简易的标准。与以往的授权方式不同之处是 oAuth 的授权不会使第三方触及到用户的帐号信息(如用户名与密码),即第三方无需使用用户的用户名与密码就可以申请获得该用户资源的授权,因此 oAuth 是安全的。oAuth 是 Open Authorization 的简写。

    36 引用 • 103 回帖 • 43 关注
  • 大数据

    大数据(big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。

    91 引用 • 113 回帖 • 1 关注
  • 叶归
    25 引用 • 100 回帖 • 37 关注
  • Spark

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

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

    Openfire 是开源的、基于可拓展通讯和表示协议 (XMPP)、采用 Java 编程语言开发的实时协作服务器。Openfire 的效率很高,单台服务器可支持上万并发用户。

    6 引用 • 7 回帖 • 133 关注
  • BookxNote

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

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

    1 引用 • 1 回帖
  • 强迫症

    强迫症(OCD)属于焦虑障碍的一种类型,是一组以强迫思维和强迫行为为主要临床表现的神经精神疾病,其特点为有意识的强迫和反强迫并存,一些毫无意义、甚至违背自己意愿的想法或冲动反反复复侵入患者的日常生活。

    15 引用 • 161 回帖 • 1 关注
  • Mac

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

    168 引用 • 598 回帖
  • 心情

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

    59 引用 • 369 回帖 • 2 关注
  • Word
    13 引用 • 41 回帖 • 1 关注
  • Solidity

    Solidity 是一种智能合约高级语言,运行在 [以太坊] 虚拟机(EVM)之上。它的语法接近于 JavaScript,是一种面向对象的语言。

    3 引用 • 18 回帖 • 456 关注
  • 小薇

    小薇是一个用 Java 写的 QQ 聊天机器人 Web 服务,可以用于社群互动。

    由于 Smart QQ 从 2019 年 1 月 1 日起停止服务,所以该项目也已经停止维护了!

    35 引用 • 468 回帖 • 768 关注
  • Gzip

    gzip (GNU zip)是 GNU 自由软件的文件压缩程序。我们在 Linux 中经常会用到后缀为 .gz 的文件,它们就是 Gzip 格式的。现今已经成为互联网上使用非常普遍的一种数据压缩格式,或者说一种文件格式。

    9 引用 • 12 回帖 • 203 关注
  • Log4j

    Log4j 是 Apache 开源的一款使用广泛的 Java 日志组件。

    20 引用 • 18 回帖 • 61 关注
  • 区块链

    区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法 。

    92 引用 • 752 回帖
  • Kotlin

    Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,由 JetBrains 设计开发并开源。Kotlin 可以编译成 Java 字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。在 Google I/O 2017 中,Google 宣布 Kotlin 成为 Android 官方开发语言。

    19 引用 • 33 回帖 • 87 关注
  • 资讯

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

    56 引用 • 85 回帖 • 1 关注
  • BAE

    百度应用引擎(Baidu App Engine)提供了 PHP、Java、Python 的执行环境,以及云存储、消息服务、云数据库等全面的云服务。它可以让开发者实现自动地部署和管理应用,并且提供动态扩容和负载均衡的运行环境,让开发者不用考虑高成本的运维工作,只需专注于业务逻辑,大大降低了开发者学习和迁移的成本。

    19 引用 • 75 回帖 • 702 关注
  • Love2D

    Love2D 是一个开源的, 跨平台的 2D 游戏引擎。使用纯 Lua 脚本来进行游戏开发。目前支持的平台有 Windows, Mac OS X, Linux, Android 和 iOS。

    14 引用 • 53 回帖 • 572 关注
  • Markdown

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

    173 引用 • 1559 回帖