article_image

来自 UNTAG 团队的第 17 期会员内容。会员内容会在每周一更新。

本期内容目录:

  • 分布式 RSS 服务,可订阅微信公众号
  • 下载网页阅读器中的 PDF|PDF Toolbox
  • Todoist 批量导出任务
  • 批量导出苹果 Books 高亮批注(移动端 & 桌面端)
  • 对照翻译更新,支持 XHTML 文件
  • 如何找回清爽的公交路线服务(实时公交)
  • Snipaste 贴图功能的妙用
  • macOS Dock 栏的位置
  • 用得最频繁的文字编辑快捷键

分布式 RSS 服务,可订阅微信公众号

作者:@沨沄极客

本周 Slack 的付费会员频道有朋友提到,WeRSS 目前处于失效状态,希望找一个新的微信公众号订阅方法。

所以我推荐了一款名为 Feeddd 的分布式订阅服务,能够抓取微信公众号的文章标题和链接,形成 RSS。

所谓分布式,就是每个参与者利用一台 Android 手机和 Hamibot 应用,安装 Feeddd 提供的“公众号文章更新”脚本。就可以无需人工干预,自动生成 RSS。

🔗 “公众号文章更新”脚本

🔗 参与方法

如果你手头没有 Android 手机,也可以直接在大家共享的公开订阅源中,直接获取别人做好的 RSS 链接。目前这个列表已经有 7800 多页的公众号订阅源了。

🔗 订阅源分享

这样的方式有利有弊,最大的优点就是可以绕过微信公众号严厉的反爬措施,极大降低了服务提供者的压力。

但缺点也很明显,由于抓取哪些订阅源也是靠贡献者决定的,而手机一旦关机或者后台被杀,这个源也就应声停止。因此冷门小众的账号注定年久失修,或者压根没有人做源,这时候就需要自己贡献了。另外,这种方式生成出来的订阅源只有“标题”和“链接”。

下载网页阅读器中的 PDF|PDF Toolbox

@Minja

  • Shortcuts 动作下载
  • GitHub 第一时间更新

最近收到一些机构发来的邮件,让我打开链接认领文书的 PDF 版本。一路顺风顺水,直到最后一步发现:没有 PDF 下载按钮。再三确认链接地址是 .pdf 结尾,应当能够直接下载(一般在浏览器中选择当前链接,按下 ‌⌥Option-回车 就能下载原始文件);连续换了几款浏览器后,情况依旧,我不禁捶胸顿足——并不是我的打开方式不对,而是这个 PDF 本身就使用了网站的专用 PDF 阅读器,而没有调用浏览器自带的阅读器,自然无法直接下载。

读者们可能在某些文档分享网站上遇到过类似情况,分明可以浏览整个 PDF,但就是没有下载选项。若说是版权保护措施,我也无意评价;但像我所遇到的那种网站,原本就要求我下载,却不提供按钮,这就不太周到。面对这种“能看不能下载”的 PDF,我设计了一个简单的 Shortcuts 动作,只需三步即可下载 PDF:

  • 选中网页上的 PDF(一般它们都会被渲染为图片),复制;
  • 运行 Shortcuts,等待其读取剪贴板中的图片,随后选择需要的页面;
  • 等待 Shortcuts 合成最终的 PDF。

凡是能够复制图片的网页,此 Shortcuts 均可从中制作 PDF。很多微信公众号喜欢用截图形式分享 PDF 文件,你也可以全选页面后快速获得 PDF,免得一张一张保存图片。不过,部分网页会把两页甚至三页 PDF 组合成一张长图,不适合直接制成 PDF。如何处理这些页面,涉及比较动脑筋的计算,我将在以后的文章中深入。

Todoist 批量导出任务

作者:@Hum

批量导出任务为文本文档,可以方便我们批量处理同类型任务。这适合那些“既不重要也不紧急”的任务积累到一定程度时批量处理。

而合格的信息管理工具——笔记、任务、文件等——都有提供批量导入导出功能的义务。但是从商业角度考量,我们不难理解这样的事实——这些工具都热衷于导入其它产品的数据,但对导出自己产品的数据并不太感冒。

Todoist 原先也是有导出的功能的,但是现在已经化在了付费功能里的“备份”中。掏钱买会员了你都可能还要找一下怎么弄。

目前,不用黑科技,批量导出 Todoist 的官方方法还有一个——导出到 Google Sheet。方法如下:

  • 在 Todoist 的设置里找到“关联应用”
  • 在“关联应用”中选择“浏览”
  • 在“浏览”里找到“Export to Google Sheets”
  • 安装“Export to Google Sheets”
  • ⭐️ 选择你要导出的项目,在界面的右上角,找到 ‧‧‧ (就是一般表示“更多”的那个菜单按钮)
  • 你就可以看到“Export to Google Sheets”这个选项

接下来选择它,关联账户,即可批量导出到 Google Sheet。

实验下来,效果理想。内容包括:截止日期、任务优先级、创建日期、描述、版块和任务接收人。

批量导出苹果 Books 高亮批注(移动端 & 桌面端)

作者:@Hum

@Minja 在他的《Anki 进阶手册》里介绍了批量导出 Kindle、Calibre、DEVONthink 里书籍的摘抄,偏偏没写苹果原生 Books 的。我在此补这个缺。

桌面端:全选 + 复制

桌面端批量导出高亮和批注,最容易。直接选中高亮文本区,快捷键全选后复制即可:

移动端:拖拽 + 批量替换文本

iOS 端就稍微麻烦一点,没有直接获取所有内容的办法。但是也不麻烦:

  • 在 Books 里选择你要导出高亮批注的书
  • 打开高亮批注那一栏
  • 长按其中一条,随后点选所有高亮批注
  • 将内容拖拽到 Drafts

这样就导出结束了。但是 iOS 上有一点和 macOS 不同,它的版权设计较强,每一条复制后的高亮批注后面都有一坨后缀(详见视频):

如果你希望去除这一坨版权后缀,可以用编辑器的查找替换功能。在 iOS 上,以 Drafts 为例,你可以在它的高级查找功能里将版权信息后缀替换为空白:

  • 使用内置的查找动作 Find
  • 点按放大镜
  • 选择 Advanced Find
  • 把版权信息复制进去
  • 选择 Replace All,完成清洗

对照翻译更新,支持 XHTML 文件

作者:Minja

对照翻译系列恐怕是本站最受欢迎的文章,不过我无意提供产品级的软件,而是给了一套松弛、灵活的方案。最理想的情况是,无论我本人出车祸不省人事了还是网站被黑客攻陷了,你都可以继续使用这一套对照翻译方案,最多微调一下。在文章发布之后,我本人已经不断迭代或拓展,完成了 论坛翻译和 DEVONthink RSS 翻译。

这次,我们继续拓宽对照翻译的领土,把 XHTML 文件也纳入版图。

XHTMl 文件常见于一些 EPUB 电子书,部分提供开放获取的论文站点也使用 XHTML 文件。我设计的电子书对照翻译方案本质上是处理 HTML,但最初的方案并未考虑到更严格的 XHTML 格式——因为当时我连一个活着的 XHTML 文件都没见过。在处理层层嵌套的论坛网页时,我粗粗意识到其与 XHTML 格式类似,于是抽空改进了代码,现在已经可以用于 XHTML 文件。

鉴于目前拓展文章已经非常多,我捋一下相互之间的关系,目前有计划继续推出系列文章:

  • 《一种几乎永不失效的网页中英对照翻译方案》:最基础的对照翻译方案,支持网页和 HTML/XHTML 文件,是下面所有方案的基础。
  • 《用 Safari 翻译外文电子书和文档》:对照翻译电子书,输出双语 PDF 或 Word 文档,目前该方案已经被下一项取代,毕竟你可以随时把 EPUB 转换成 PDF,但不能反过来操作。
  • 《将外文电子书翻译成双语对照版本,并在任何设备上阅读》:对照翻译电子书,输出双语 EPUB,已经取代输出 PDF 的旧方案。
  • 《在 DEVONthink 中对照翻译外文 Newsletter》:在 DEVONthink 中翻译 Newsletter。
  • 《UNTAG Premium 第九期》:适配了部分论坛页面。
  • 《UNTAG Premium 年度特辑 01》:全文翻译 DEVONthink 中的 RSS 文章(前提是你订阅的 RSS 源愿意给全文)。

Safari & Keyboard Maestro 用户可以直接下载最新的 1.3 版动作,使用其他浏览器或自动化工具的读者可以使用下方的代码(再次 Credit,函数部分是会员 Felz33 的作品,用于保持译文和原文风格样式一致):

(function () {
  function noTranslate(node) {
    if (node.nodeName.toLowerCase() === "img") {
      node.parentElement.removeChild(node);
    }
    node.setAttribute("translate", "no");
    node.setAttribute("class", node.getAttribute("class") + " notranslate");
    for (var child of node.children) {
      noTranslate(child);
    }
  }

for (var node of document.querySelectorAll("li:not(:has(p)), div:not(:has(div, p)), p, h1, h2, h3, h4")) { 
      if (node.getAttribute("translate") === "no") {
        continue;
      }
      var copy = node.cloneNode(true);
      node.parentElement.insertBefore(copy, node.nextElementSibling);
      noTranslate(node);
  }

})();

如何找回清爽的公交路线服务(实时公交)

作者:Minja

公交线路服务本是一项便民工程,查路线、搜站名、看实时位置,没有废话。曾几何时,路线服务还是清爽,甚至提供 API,我还据此折腾过 Shortcuts(快捷指令)。

惜乎近年来,各个开发商多已失去初心。现在的公交服务,不是要求使用小程序,就是强制安装 App,接着就是一系列注册、授权和广告,还有的集成在生活大杂烩类软件中,活生生成了支付宝和微信之后的第三极。

我性子慢,平时喜乘公共交通,去外地也愿意挤公交而不是把自己装在网约车的金属泡泡里,这两年眼睁睁看着好几个城市的公交服务一落千丈。

好在对付微博的老办法也可以用来对付公交服务:使用“国际版”(不过我现在已经彻底不用微博了,号都删了很久)。如前所述,公交是便民服务,因此政府往往会推出英文版本,且和中文服务分开运作,往往保持着干净清爽。我常去的几个城市——从一线城市到最偏远的几个地区———都发现了英文版公交服务,在公交站牌上扫码就能打开,直接上网页版,没有小程序、没有 App、没有注册、没有授权甚至没有广告!

这样的良心服务已经让人唏嘘,但惊喜不限于此。那些花枝招展的小程序和 App,不仅仅是破事儿多,本分也守不好,延时通常很严重:我分明看着一辆车绝尘而去,它还信誓旦旦有两站路车才到,让我慢慢等。而英文版一般又快又准,车辆位置刷新得较快,我遇到的误差最多不过一站,已经足以据此提前安排行程。

机器阅读:已开放本文前 70% 的正文,剩余内容会员可见。 标准阅读页 · Markdown