Adds an "Extract text" button to GNOME's built-in screenshot tool: drag a selection (or use the current one), click the button, and the text in that area goes straight to your clipboard. Recognition happens entirely on your machine - nothing is uploaded. Every native feature is left untouched: area, window and full-screen capture, screen recording, the pointer toggle, saving to the Screenshots folder, and the Print / Shift+Print / Alt+Print shortcuts all behave exactly as before. This extension only adds a fourth button next to Area / Screen / Window. Text recognition is delegated to a local OCR program. The companion project ships one (RapidOCR + ONNX Runtime, fully offline): https://github.com/PeppaPig-114514/WaylandOCR If your backend lives somewhere else, set its path in this extension's preferences. --- 给 GNOME 自带的截图工具加一个「提取文字」按钮:框选一块区域、点一下,里面的文字就进剪贴板,全程在本机识别,不联网。 原生功能一个都不动:区域 / 窗口 / 整屏、录屏、显示指针、保存到图片文件夹,以及 Print / Shift+Print / Alt+Print 键位全部照旧——只是工具栏上多了第四个按钮。 识别交给本机的 OCR 程序完成。配套项目自带一个(RapidOCR + ONNX Runtime,全离线):https://github.com/PeppaPig-114514/WaylandOCR 后端装在别处的话,可以在扩展的首选项里改路径。
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
EGO-A-005 manual_review
extensions should not access the clipboard directly
Direct clipboard access via `St.Clipboard.get_default()` requires reviewer scrutiny.
extension.js:439
St.Clipboard.get_default()
| Version | Status |
|---|---|
| 1.0.0 (3) | Unreviewed |
| 1.0.0 (2) | Rejected |
| 1.0.0 (1) | Rejected |
This is not the first extension to put an OCR button in GNOME's native screenshot UI — extension 10254 (Native Screenshot UI OCR Extended) did it earlier, and I want to be upfront that the UI approach is not novel. The difference is the OCR engine. That extension shells out to Tesseract with no -l flag, so it uses the default English model and has no language setting in its preferences; it also requires `sudo apt install tesseract-ocr`. This one is CJK-first and fully rootless: it bundles RapidOCR (PP-OCR, ONNX Runtime) in a user-level venv, runs it as a resident systemd user service for low latency, needs no sudo, and the backend path is configurable in preferences for anyone who wants to plug in their own program. I also picked up a bug report from that extension's source: adding a 4th child to the _typeButtonContainer homogeneous row can make the row stretch after suspend/screen-off. It is documented in the README's known-issues section; I could not reproduce it here because it needs a real suspend cycle. Both extensions patch private gnome-shell internals, since there is no extension API for the screenshot UI. Every private field access is guarded so a future Shell change degrades to a message instead of crashing the shell.
This code seems to be generated by AI. Please note, we have a rule for that: - [EGO Review Guidelines: AI](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#extensions-must-not-be-ai-generated) - [Extensions Best Practices Guidelines](https://gjs.guide/extensions/review-guidelines/best-practices.html#submissions-require-maintainership)