硬件

笔记本电脑:Framework 16

笔记本电脑的尺寸就是用过大的就回不去小的。而 16 寸则是够大但又能在包里塞下的极限尺寸。Framework 可维修可升级并且完全开源显然吸引了我。

而且主要是我在有空自己DIY一个斜排列的人体工学键盘。

不过我正在犹豫

Passkey

SSH 密钥明文存在 .ssh 下是非常不安全的。极其容易被盗。不要觉得这不会发生在你身上。很多专门针对开发者的恶意软件会自动扫描并上传 ~/.ssh/ 目录下的所有文件,最好使用硬件密钥。

我现在用的是微雪 RP2350 one 刷的 pico-fido2,30 块钱要什么自行车,插个转接头还能刚好插进 Framework 16 的 expansion cards 槽里

我不太推荐买 Canokey Canary,它的 type-C 接口永久了之后会接触不良。况且闭源密钥。的在欧洲就买 Nitrokey。千万不要买 Solokey 和 Onlykey,这俩都可用性很差。Onlykey 的配套软件我直接用不了.

配件

我一切都用有线的,主要是想不起来充电

kinesis-advantage-360.png - USB 无线网卡: MediaTek MT7612U,主要是这玩意支持,能够让我给我的苹果电脑朋友直接 AirDrop - 背包:Peak Design Everyday Backpack 30L。摄影师神包,隔层适合放镜头,并且刚好放得下 Framework 16。

Peak Design Everyday Backpack 30L 正面 Peak Design Everyday Backpack 30L 侧面

手表

Pebble Time 2,水墨屏,完全开源,唯一的问题是睡眠算法太古老,需要重写需要有足够多的样本数据。我主要用它监测运动心率,以及看一眼睡眠时间能减少我的睡眠焦虑。

视频制作与摄像

我拍照片和视频用的是一台机子,尼康 ZFC,主要是喜欢它的外观,觉得如果哪天和女生出游可以用得上(希望真的存在这样的场景吧)。

Nikon Z fc

软件

操作系统

NixOS-unstable,开启 flakes,使用 Agenix-rekey + Ragenix 进行密钥管理。

虽然我尽可能支持自由软件,带我大体上

我自用的一些nix打包在此。

我开启了全盘加密。电脑被盗,或者修电脑的时候数据泄漏是每个人都面临的威胁。在这一点上 Linux 用户不通过 TPM 开启全盘加密几乎是不可理喻的。

桌面环境

  • 桌面登录:tuigreet,简约好用,Geek 美学

整合环境:Noctalia Shell。

我觉得quickshell是近些年Linux桌面环境最重要的进步之一,它大大降低了定制一个桌面环境的门槛,再也不用折腾dmenu和Waybar各种东西了。

窗口管理器:Niri

我感觉一切存在的窗口管理器门类我都尝试过,最后还是觉得Niri比较好。

Office: Libre Office

Office对我的作用基本就是打开别人的word文档和Excel看一眼。所以随便一个能用的都行。

视频播放:mpv

简洁,易于自定义配置快捷键。我还安装了jellyfin-prim-mpv用来看我jellyfin上存的。

Epub阅读:Foliate

其实我还是更喜欢看实体书一些,我感觉自己基本很难读完电子书。但是有电子书很方便我先去Z-lib上下一步读几章,不至于买了烂书浪费空间。

我的工作流的核心围绕着窗口管理器,终端和Emacs。

浏览器

火狐,开垂直标签栏,插件如下

功能性

体验改进

数字健康

Emacs

Emacs是我的核心工作环境,或者说我打开电脑有几乎一半的时间都在Emacs里。

键位我暂时使用的是 meow 但或许之后也可能换到 Hel。

外观

编程

应用

Emacs默认文字会撑满buffer,读起来有点丑,olivetti能够限定宽度并居中。我摩改了一下,让脚注显示为sidebote刚好利用侧边空白,和我的博客排版一样。

mixed-pitch能够让字体好看一点。

最早开始接触Emacs是因为我需要一个笔记软件。如果一个人不知道他为什么要用Emacs,你大概率就不该使用Emacs。如果你对自定义的程度越来越高,越来越觉得各类常用的工具没法满足你,你会自己就会走向Emacs。

我首先面临的一个问题就是Markdown的扩展性不够好。

我不太能接受那种左源码右渲染的双栏预览。我需要一个编辑时就自带一定样式的视觉效果不错的,感觉这样才能让我沉浸在写作。 虽然我知道一些终端编辑器也支持内嵌一些图片和数学公式渲染啥的。但终端自身的限制:1. 不支持非等宽字体 2. 不支持变行高,所以行内的分数和更多复杂数学公式显示很不优雅。导致Neovim之类的都被我排除了。

即使是这样,Emacs和别的终端应用直接的统合体验也完全比不上Emacs。

除此之外,我使用 Typst 写作。考虑到我自己本科期间和科研完全不沾边,我自己完全不用LaTeX,而无论是课程报告还是毕业论文都只要求PDF都可以用Typst写。

其实今天Obsidian的Typst插件已经可以做到不少事情了。但对我来说仍然完全不够。先不论 Obsidian 和我自由软件的理念有点相悖。它仍然在面对定义宏啥的有点麻烦。以及插件系统本身的限制让它所能实现的功能和外界的交互非常有限,没法作为一站式工作流。

最早我尝试使用的其实是Obsidian。但在我开始尝试Obsidian的时候,它还不支持=.typ=作为文件编辑格式。

我并不是Emacs的拥趸,也不会为Emacs传教,在我看来 Elisp 是非常糟糕难以使用的语言,Emacs作为一个编辑器历史包袱过重,性能很差。我可以找出一万个 Emacs 的缺点,但目前确实找不到第二个有GUI,生态足够丰富,写扩展方便的编辑器了。

事实上,开源社区的力量也注定了Emacs赢家通吃。而大家只是尽可能在Emacs上小修小改的用的舒服一点。典型的Worse is Better.

让我入口Emacs

很多人会吐操说Emacs简直是一个操作系统。

一个软件能干任何事并不必然代表一个软件强大,但我Emacs这种能干任何事的特性能够让你以一种在同一个熟悉的context里切换工作流。

本质上,我的学习的工作几乎所有的部分都是在处理文字,因此模态编辑,大纲管理,窗口管理的逻辑全都可以共享。这事实上能够有效减少你认知切换的负担和阻力。我甚至可以说就是在配置好了Emacs之后让我记养成了某种记笔记的习惯。

而更重要的是,那种软件之间的共通性。比如我有写一个邮件的任务。当作为一个链接,它还能同时作为一个链接,同时写完了之后还可以自动把TODO完成。

Emacs能干一切事的特性恰恰带来了它那种非常强大的互操作性。邮件,笔记,GTD,编程,这所有的工作可以方便地互相串联。Emacs的本质就是一个数字化的交互性极强的工作台。

编程

笔记

好用的小工具安利

  • tealdeer:替代 man,比原生 tldr 快很多。
  • poppler-utils: PDF 转图片
  • qpdf: 快捷的 PDF 页面拼贴和剪切
  • yt-dlp: YouTube 视频下载工具,但不止于 YouTube
  • steamguard-cli:有了它就可以摆脱 Steam 手机令牌了
  • ydict: 命令行有道词典
  • localsend:目前同局域网传文件最方便的方案
  • croc:另一个局域网小工具,命令行更轻量,适合 geek 线下聚会
  • biliup: B 站命令行客户端,批量上传很有用
  • makemkv: 在蓝光 rip 的方便性上不可替代
  • mkvtoolnix: 适用于有时 makemkv 处理不了的情况,以及单视频切分和多盘拼接

服务平台

  • 游戏:我暂同购买即拥有理念,优先 GOG,GOG 不上的买 Steam.
  • 音乐:以购买为主,优先 Bandcamp,Bandcamp 没有从 Qobuz 买,流媒体听 Apple Music 国区
  • 书影音标记:[[][NeoDB]],豆瓣由于旧友邻的关注还在同步更新,其实感觉Neodb完成度也挺低的,说不定有天自己会开发一个基于AT Protocol的。