如何制作一款简单的 chrome 插件

短短几年时间,Chrome 作为一款在主流桌面操作系统(Windows,Mac)不内置的第三方浏览器,短短几年时间击败了所有竞争对手,以压倒性优势 67% 的市场份额稳居桌面端浏览器头把交椅。虽然近年来对其隐私方面顾虑层出不穷,一些 power user 也会试图寻找替代品(Brave,Duckduckgo 之类),但对于绝大多数网民来说还是浏览器的默认选择。

在前端技术越来强大的今天,普通 desktop 用户很多客户端操作都能被网页版替代。拥有庞大的潜在客户群,javascript 上手难度低,浏览器作为运行环境无需担心与系统交互与测试,有 chrome store 管理分发,安装过程也比客户端简单很多,chrome extension(插件)就成了一个对开发者和使用者都轻量、便捷的实用平台。

与此同时,chrome 插件的使用门槛也比让看到代码就头大的用户自己安装油猴 script 低很多,就像跟人安利 app 直接甩 play store 链接肯定比让人下载 apk 容易一样。还有同步的便利(我收到过好几次“为什么不写成油猴 script”的评论……代码就开源在那里,不想走 chrome store 且会用 script 的自然可以去用 script 嘛,反之 store 用户又不能从油猴 script 里轻易变出一个能同步的插件)。

这是拖后了半个月的作业六月 patreon 博客票选胜出的命题(说实话我完全没想到会有这么多人想看开发相关,论我的读者到底有多少码农)。欢迎金主们去七月的投票选出接下来的命题:

  • 我的信息摄取探索 2.0
  • 老年码农合理摸鱼经验总结
  • 非程序员掌握了也很有用的小 hack
  • 美国码农前半段职业发展道路(career ladder)

其实我不知道为什么大家会选这个主题,因为 Chrome 官方的 Developer Guide 写的还蛮清楚的,也给了现成的例子可以抄。不过既然金主们投了,我就来试图给平时不那么经常写程序,但是对自己开发插件有点兴趣的朋友们 TLDR 一下,用我写过的一个简单插件做为例子手把手走一遍开发简单 chrome 插件的过程。

Continue Reading

长毛象主页“只看原创嘟文”Chrome Extension

我把前两天做的能快速在长毛象主页“只看原创嘟文”的小代码转成一个 Chrome extension 啦。Google 居然一天就审核通过了!点击这里安装 chrome 插件

使用方法:

  1. 进入 mastodon 主页(1.1.0 版本新增)或者别人在别人实例上的主页(URL 例如: douchi.space/@mtfront 这种格式的,一般点别人用户名/头像两次可以打开的那个)
  2. 点本 extension 打开界面,然后点 Hide/Show 按钮
  3. 如果对方转嘟过多,你可能需要手动载入更多嘟文再点本按钮,因为是前端 hack 只能 filter 已经载入的嘟嘟。

v1.1.0 版本已添加 timeline filter 更新,Chrome store 审核通过后会自动更新。

timeline filter 的话因为动态载入和所用 class 不大一样需要稍微修改而且不能取消 hide(除非刷新页面),所以我昨天犹豫了一下没加这个功能,大家想要的话可以跟我说。油猴插件同理。

以 Google 审核的尿性 估计还要一周左右才会上架,想要尝鲜的话可以直接下载代码安装.

不用 git 的话直接下载这个 zip 然后解压缩.

load unpacked extension 方法.

想更无缝/在 Chrome 账户上多器材同步的话就等 chrome store 上架版本吧,到时候我会再来吆喝一声的。

批量给头像添加彩虹滤镜

为了(并没有用地)抗议所有微信 LGBT 公众号被封杀,我顺手写了个批量处理彩虹头像的简单 python script:

https://github.com/mfcndw/rainbowup

可以单个转换或者整个文件夹生成彩虹滤镜头像,不用下 app 或者找 bot 转了。

(当然,如果并不需要批量,或者电脑上没装 python 的话,应该用不到,还是直接找 bot 方便)

效果:


如果您觉得本文对您有帮助,想支持我的博客创作,或者有特定的内容想要看到,或者干脆就想单独聊五毛钱,欢迎点击下面按钮成为我的金主:

Become a Patron!

墙内赞助通道:爱发电

Kindle Notes 轻松导出导入 Notion —— 我的第一个 chrome extension

经过一周多的审核,我的第一个 chrome extension 终于上线啦!完全免费、开源,不收集任何用户信息,导出 csv 文件可导入 Notion 或任何可导入 csv 的笔记系统。跟 readwise 说再见。

点此到 Chrome extension store 下载

Screen Shot 2021-04-08 at 1 04 09 AM

与我之前的微信读书导出工具类似。不过微信读书那个工具需要会用命令行和装 Python,本工具只要有 chrome 就能用。

版权归作者所有,任何形式转载请联系作者。
作者:椒盐豆豉(来自豆瓣)
来源:https://www.douban.com/note/800152192/

(注:由于没有美区之外的 Kindle 账号我无法测试 i18n,本插件暂时只支持美区 Kindle 账号,如果有人愿意测试的话欢迎提交 pull request)

Continue Reading

微信读书笔记导入 Notion 工具

因为最近开始做读书笔记剪报 channel,因此需要一些排序、过滤功能,以前偷懒直接纯文本粘贴的微信读书笔记就不好使了。索性写了个 script,点此下载点此 sponsor。

注意:本 script 仅在 MacOS 上测试过,Windows 不知道有没有问题,就算有我猜轻微改一下能用,如果有试了的朋友欢迎告诉我。

Notion 最终效果:

NameHighlightNoteNo.
章节名你的高亮/划线你的笔记/想法用来排序的序号

变成在 notion 的表格之后后续可以导出、自己加新 field 排序、filter 等,配合其他工具使用参见之前这篇中的效果:读书笔记 workflow

如何使用

  1. 用 git clone 下载基本代码到你的 Mac 上
  2. 进入微信读书->笔记,点击“导出”
  3. 点击底部的“复制到剪切板”
  4. 把剪贴板内容粘贴进一个 txt 文件
  5. 在 Mac terminal 里 weread.py [txt 文件地址]来运行本工具,生成一个 csv 文件
  6. 在 Notion 里创建一个数据库
  7. 点击数据库右上角的’…’,选择’Merge with CSV’
  8. 等待导入结束并刷新 Notion 页面
  9. 再次点击’…’ -> ‘Sort’, 对’No.’ field 添加一个 Ascending sort
  10. 如果笔记很少的话 Notion 可能会把你的笔记变成单选类型。点击数据库表头的’Note’部分将 property type 改成’Text’即可
  11. 去掉无用的 Notion 默认生成的列,如 ‘Tags’

如果您觉得本文对您有帮助,想支持我的博客创作,或者有特定的内容想要看到,或者干脆就想单独聊五毛钱,欢迎点击下面按钮成为我的金主:

Become a Patron!

墙内赞助通道:爱发电