Coding on Paper
Coding on Paper / 纸上编程
About three months ago, I bought the Onyx BOOX 25.3” Mira Pro Color, an e-ink monitor for desktop use. I’ve used it as my primary monitor since, and I’ve had a lot of questions about it. This is my experience report, from the perspective of a working, still mostly typing, programmer. This is not a sponsored post, and it is not a product review. I wrote a very similar post about the Daylight DC-1 last year. 大约三个月前,我购买了文石(Onyx BOOX)25.3 英寸的 Mira Pro Color,这是一款用于桌面办公的电子墨水屏显示器。从那以后,它一直是我主要使用的显示器,我也收到了很多关于它的询问。这是一份基于我个人视角的体验报告,我是一名仍在从事编程工作、且大部分时间都在敲代码的程序员。本文并非赞助内容,也不是产品评测。去年我曾写过一篇关于 Daylight DC-1 的类似文章。
Neovim in the morning sunlight. As explained in last year’s post, the reason I persist with these monitors is because it makes me energetic and happy. Sunlight, direct or indirect, helps me stay clear and focused during my workday. I find spaces illuminated by natural light beautiful and inspiring. 晨光下的 Neovim。正如去年文章中所述,我坚持使用这些显示器的原因在于它们能让我感到精力充沛且快乐。无论是直接还是间接的阳光,都能帮助我在工作日保持清醒和专注。我发现被自然光照亮的办公空间既美观又充满灵感。
I’m not going to recommend that you buy one of these devices. They’re expensive, about $2000, and the experience is quite different from LCD. Even if this looks cool, it seems to me very possible that most people would not like it in practice. With that said, I am happy with it, and I’ll probably keep investing in these tools as they get even better with time. 我并不打算建议你去购买这类设备。它们很昂贵,大约需要 2000 美元,而且使用体验与液晶显示器(LCD)截然不同。即使它看起来很酷,但在实际使用中,大多数人很可能并不会喜欢它。话虽如此,我对它感到满意,并且随着这些工具在未来变得越来越好,我可能会继续投资它们。
Spending a workday in the garden. Using the Mira Pro as a primary monitor is a continuation of the experiments with my e-ink tablets and Termux as coding environments. But now, with far fewer compromises. I’m running my regular NixOS environment on my work laptop. No SSH and tmux needed, no Android terminal emulator to customize. 在花园里度过工作日。将 Mira Pro 作为主显示器,是我之前尝试将电子墨水屏平板电脑和 Termux 作为编程环境的延续。但现在,我所做的妥协要少得多。我直接在工作笔记本电脑上运行常规的 NixOS 环境,无需 SSH 和 tmux,也不必再折腾 Android 终端模拟器。
What I have done, though, is spent quite some time on making my system more suited for this monitor. The Mira Pro does not work well with dark themes. In fact, it only works well with high contrast light themes. Luckily, I’m bent towards minimalism, so I already used near-monochrome themes, relying more on typographic syntax highlighting rather than coloring. I now have custom themes for Neovim, Zed, and Ghostty with a few vivid colors for things like selection, comments, and constants. Otherwise it’s largely black on white. 不过,我确实花了不少时间来调整系统,使其更适合这款显示器。Mira Pro 对深色主题的支持并不好,事实上,它只在对比度高的浅色主题下表现良好。幸运的是,我偏向极简主义,所以原本就在使用近乎单色的主题,更多地依赖排版语法高亮而非色彩。现在,我为 Neovim、Zed 和 Ghostty 定制了主题,仅在选中内容、注释和常量等地方保留了少量鲜艳的颜色,其余部分基本都是黑白显示。
It’s trickier with other applications. In Firefox, I’ve started using the high contrast setting. That works pretty much like an inverse of DarkReader. I now run Spotify in the browser in order to avoid its dark theme. The monitor has a clunky menu system with which you can change rendering modes; things like contrast and speed. I found an open-source reverse-engineered NodeJS package that I use with Hyprland keybindings to easily change rendering modes and manually refresh. No need for the built-in menu. 其他应用程序的处理则更棘手。在 Firefox 中,我开始使用高对比度设置,它的效果几乎就像是 DarkReader 的反转版。为了避开 Spotify 的深色主题,我现在直接在浏览器中运行它。这款显示器的菜单系统比较笨重,用于更改对比度和刷新速度等渲染模式。我找到一个开源的逆向工程 NodeJS 包,配合 Hyprland 的快捷键,可以轻松切换渲染模式并手动刷新,无需再使用内置菜单。
In practice I use two modes: Reading: This mode renders colors most vividly and text sharply, but typing with it is agony. I use it when reading text documents, web pages, or code diffs. Writing: This is by far the most commonly used mode, which compromises colors and sharpness for way better latency. I use this for everything in the terminal, chat, general web browsing, and probably most other things not covered by the reading mode. 在实际使用中,我主要用两种模式: 阅读模式:该模式色彩最鲜艳,文字最清晰,但用它打字简直是折磨。我只在阅读文档、网页或代码差异(diff)时使用它。 书写模式:这是我目前使用频率最高的模式,它牺牲了部分色彩和清晰度,换取了更好的延迟表现。我在终端操作、聊天、日常网页浏览以及阅读模式之外的大多数场景下都使用它。
See the following photos for a close-up comparison: Reading mode, where colored regions are pretty smooth and text looks sharp. Writing mode, where colored regions (light gray, red, green) are grainy and text is a bit blurry. 请参考以下照片进行对比: 阅读模式:彩色区域非常平滑,文字看起来很锐利。 书写模式:彩色区域(浅灰、红、绿)有颗粒感,文字略显模糊。
What about latency? Here’s the two short clips of me typing with the reading and writing modes: Reading mode, with horrible latency for typing. Writing mode, with some but acceptable latency. 关于延迟如何?以下是我在两种模式下打字的短视频片段: 阅读模式:打字延迟极高。 书写模式:存在一定延迟,但在可接受范围内。
Ghosting? In my writing mode it’s minimal. It really doesn’t bother me. 关于残影?在书写模式下,残影非常轻微,完全不会困扰我。
About the color panel: I don’t like it very much to be honest. It was the only version of the Mira Pro available from the Swedish retailer at the time, so I went with it. I think I would’ve been happier with a monochrome panel, because the coloring technology makes it considerably darker. Here’s a comparison between the Palma 2 Pro (using a similar but smaller Kaleido color panel) and my old Tab Ultra (with a monochrome panel): 关于彩色面板:老实说,我不太喜欢它。当时瑞典零售商只有这一款 Mira Pro 可选,所以我只能买它。我想如果用的是单色面板我会更开心,因为彩色显示技术会让屏幕整体亮度变暗。以下是 Palma 2 Pro(使用类似但更小的 Kaleido 彩色面板)与我旧款 Tab Ultra(单色面板)的对比:
Color vs Monochrome e-ink panels without backlight. Unless the room has great diffuse lighting, natural or otherwise, the color panel does require some backlight. In direct sunlight or outdoors it works without. I might spend more time optimizing the lighting in my office to make this work during the winter months. 在没有背光的情况下,彩色与单色电子墨水屏的对比。除非房间有极好的漫射光(自然光或其他光源),否则彩色面板确实需要开启背光。在直射阳光下或户外,它则无需背光。我可能需要花更多时间优化办公室的照明,以便在冬季也能正常使用。
So, what’s to make of it? Personally, I enjoy using this monitor a lot, even if it’s not perfect. Should you buy an expensive 25” e-ink monitor? I cannot say. But if you do, let me know how it works out. My custom themes and keybindings can be found here. 总结一下,我的看法是什么?就我个人而言,我很享受使用这款显示器,尽管它并不完美。你是否应该购买一台昂贵的 25 英寸电子墨水屏显示器?我无法给出建议。但如果你买了,欢迎告诉我你的使用体验。我的自定义主题和快捷键配置可以在这里找到。