README.md (12956 bytes)
1 Spenser Truex. Free tarballs. 2 3 Tools for language learners, e-ink readers and Android, small Unix programs, 4 and Common Lisp. Writing at [recentlywritten.com](https://recentlywritten.com). 5 Support the work at [ko-fi.com/truex](https://ko-fi.com/truex). 6 7 ## More projects 8 9 - [SubRead](https://subread.space/): read along with an audiobook, in the browser. 10 Also [for Android](https://github.com/equwal/subread-android/releases/latest), 11 [for YouTube](https://github.com/equwal/subread-extension/releases/latest) 12 and [for KOReader](https://github.com/equwal/subread.koplugin). 13 - [SubRead Overlay](https://github.com/equwal/subread-overlay/releases/latest): subtitle lines over any Android media player. 14 - [SubRead Dictionary](https://github.com/equwal/subread-dictionary/releases/latest): a pop-up dictionary for Android that reads Yomitan dictionaries. 15 - [SubRead Anki](https://github.com/equwal/subread-anki): one tap makes an Anki card from any Android app. 16 - [Subrep](https://github.com/equwal/subrep-android/releases/latest): live captions of the sound of your phone. 17 - [Book Simulator](https://booksimulator.com/): a reading room for Aozora Bunko and Project Gutenberg books. 18 - [honjimaku.com](https://honjimaku.com/): subtitles for Japanese audiobooks. 19 - [sbm Sync](https://sbmsync.com/): your bookmarks, the same on every device, 20 with [sbm](https://github.com/equwal/sbm) for dmenu, 21 [sbm for Android](https://github.com/equwal/sbm-android/releases/latest) 22 and the [sbm add-on](https://github.com/equwal/sbm-extension/releases/latest) for Firefox and Chrome. 23 - [Rebind](https://github.com/equwal/rebind/releases): remap the hardware buttons of e-ink readers and Android, 24 with [Ink Recents](https://github.com/equwal/ink-recents/releases/latest), 25 [Ink Dim](https://github.com/equwal/ink-dim/releases/latest) 26 and [Ink Update](https://github.com/equwal/ink-update/releases/latest). 27 - [dickt.store](https://dickt.store/): language-learning tools, flashcards and web toys. 28 - [hentaibun.online](https://hentaibun.online/): learn kanbun and kobun. 29 - [Recently Written](https://recentlywritten.com/): the blog, and a list of [all projects](https://recentlywritten.com/projects.html). 30 31 ## Sites 32 33 * [subread.space](https://subread.space) - Line up an audiobook with its ebook. Get read-along subtitles, EPUB 3 read-along books, and subtitled video. Free in the browser. 34 * [honjimaku.com](https://honjimaku.com) - A library of Japanese subtitles for audiobooks, and Subrep live captions by share link. 35 * [sbm.subread.space](https://sbm.subread.space) - sbm Sync: one plain bookmark file, the same on every device. Free, AGPL. 36 * [hentaibun.online](https://hentaibun.online) - Reading lists and tools to learn kanbun and kobun. 37 * [recentlywritten.com](https://recentlywritten.com) - Writing on Unix, Lisp, Nix, Esperanto, and language learning. ([equwal.com](https://equwal.com) goes here.) 38 * [ko-fi.com/truex](https://ko-fi.com/truex) - Support. 39 40 ## SubRead 41 42 Read along with audiobooks, and mine the words. 43 44 * [subread.space](https://github.com/equwal/subread.space) - Read an `.srt` one line at a time with the space bar. Works with Yomitan, furigana, and pitch accent markup. 45 * [subplz-web](https://github.com/equwal/subplz-web) - The aligner behind subread.space. The subtitle text comes from your book, not from a transcript. 46 * [subread-android](https://github.com/equwal/subread-android) - SubRead on Android. Times an audiobook against its ebook on the device. 47 * [subread-extension](https://github.com/equwal/subread-extension) - Show your own `.srt` over a YouTube video, in time. Chrome and Firefox. 48 * [subread-overlay](https://github.com/equwal/subread-overlay) - Show `.srt` lines over any Android media player. Tap a word to look it up. 49 * [subread-dictionary](https://github.com/equwal/subread-dictionary) - Pop-up dictionary for Android. Reads Yomitan dictionaries, with local audio. 50 * [subread.koplugin](https://github.com/equwal/subread.koplugin) - KOReader plugin. The book follows the narration, from an `.srt` made by subread.space. 51 * [subrep-android](https://github.com/equwal/subrep-android) - Live captions of the phone's sound, made on the phone by Whisper, shared by link. 52 * [desktop-subtitle-replay](https://github.com/equwal/desktop-subtitle-replay) - Live subtitles for anything on your screen. Replay a sentence and mine it into Anki. 53 * [honjimaku](https://github.com/equwal/honjimaku) - The honjimaku.com server. Fork of [jimaku](https://github.com/Rapptz/jimaku). 54 * [kikiyomi](https://github.com/equwal/kikiyomi) - Audiobook player for Japanese learners, in the browser. Fork of [kikiyomi](https://github.com/rtr46/kikiyomi). 55 * [Hoshi-Reader-Android](https://github.com/equwal/Hoshi-Reader-Android) - Fork with a `subread` branch: audiobook read-along in the Hoshi Reader EPUB reader. 56 * [chimahon](https://github.com/equwal/chimahon) - Fork with a `readalong` branch for the Mihon immersion reader. 57 * [dickt.store](https://github.com/equwal/dickt.store) - Bring-your-own-key Yomitan dictionary converter. 58 * [vibeslop-dickt](https://github.com/equwal/vibeslop-dickt) - Make your own Yomitan dictionary in a few minutes. 59 60 ## Rebind suite 61 62 Hardware buttons for e-ink readers and Android 12+. 63 64 * [rebind](https://github.com/equwal/rebind) - Remap volume keys, Power, page-turn buttons, and the Viwoods AI key. Tap, double tap, hold, and combinations. Free beta APK. 65 * [assistkey](https://github.com/equwal/assistkey) - Key remapper for the Viwoods AiPaper Reader: AI key, volume keys, and Power. 66 * [awesome-rebind](https://github.com/equwal/awesome-rebind) - Extensions and companion apps for Rebind. 67 * [ink-recents](https://github.com/equwal/ink-recents) - Recent-apps switcher for e-ink. No animation. Swipe up to close. 68 * [ink-dim](https://github.com/equwal/ink-dim) - Set the Viwoods frontlight below the lowest system level. 69 * [ink-update](https://github.com/equwal/ink-update) - Tells you when Rebind, Ink Recents, or Ink Dim has a new version. 70 71 ## sbm 72 73 Fuzzy search thousands of bookmarks, on every device. 74 75 * [sbm](https://github.com/equwal/sbm) - dmenu bookmarks. Search and plumb them. 76 * [sbm-android](https://github.com/equwal/sbm-android) - sbm on Android. Share to add. 77 * [sbm-extension](https://github.com/equwal/sbm-extension) - sbm for Firefox and Chrome. 78 * [sbm-sync](https://github.com/equwal/sbm-sync) - Sync server. One small Go program, plain files, AGPL. 79 * [sbm-suckless](https://github.com/equwal/sbm-suckless) - sbm before the rewrite. Suckless style. 80 81 ## Tools for AI agents 82 83 * [ideamine](https://github.com/equwal/ideamine) - Idea inbox for Claude Code. `/idea` saves ideas at zero tokens. 84 * [deploy-handoff](https://github.com/equwal/deploy-handoff) - The agent drives the browser to the last deploy, billing, or pull request step. You make the final click. 85 * [memstate](https://github.com/equwal/memstate) - Versioned memory for AI agents in one SQLite file. Fork; contributor to [map588/memstate](https://github.com/map588/memstate). 86 * [aintitinit](https://github.com/HACKERMEN-ORG/aintitinit) - Claude initializer. 87 * [hackermen-neovim-config-file](https://github.com/HACKERMEN-ORG/hackermen-neovim-config-file) - Minimal Neovim config with optional AI. 88 89 ## Unix and suckless 90 91 * [tmpl](https://github.com/equwal/tmpl) - Insanely simple templates. 92 * [dmenu-scripts](https://github.com/equwal/dmenu-scripts) - Ask for things with dmenu. 93 * [dsad](https://github.com/equwal/dsad) - dmenu interface for sad, the simple audio daemon. 94 * [dpatchmail](https://github.com/equwal/dpatchmail) - Patch programs from mail with dmenu. 95 * [prompt-mail](https://github.com/equwal/prompt-mail) - Mail questions and mail files with dmenu. 96 * [dmodurl](https://github.com/equwal/dmodurl) - Change URLs with dmenu. 97 * [tnot](https://github.com/equwal/tnot) - Like tmux, but not. 98 * [tiny-runlevels](https://github.com/equwal/tiny-runlevels) - Use an init system for many instances of simple programs. 99 * [ii-lchat-metapackage](https://github.com/equwal/ii-lchat-metapackage) - Get suckless IRC working. 100 * [pass-simple](https://github.com/equwal/pass-simple) - Minimal pass rewrite, with bug fixes. 101 * [sacc-ebuild](https://github.com/equwal/sacc-ebuild) - Gentoo ebuild for the sacc gopher client. 102 * [nixtoo-genux](https://github.com/equwal/nixtoo-genux) - Declarative Nix package manager setup. 103 * [xinput-persistence](https://github.com/equwal/xinput-persistence) - xinput settings that survive reconnect and boot. 104 * [encrypted-home-backups](https://github.com/equwal/encrypted-home-backups) - Automatic home backups to an encrypted partition. 105 * [alt-hack0](https://github.com/equwal/alt-hack0) and [alt-hack](https://github.com/equwal/alt-hack) - The Hack font with a normal zero, made by script. 106 * [minimak-tty-xkb](https://github.com/equwal/minimak-tty-xkb) - Minimak keyboard layout for the TTY and XKB. 107 108 ## Common Lisp and Emacs 109 110 * [font-lock-cl](https://github.com/font-lock-cl/font-lock-cl) - Better Common Lisp syntax highlighting for Emacs. On MELPA. 111 * [coleslaw](https://github.com/equwal/coleslaw) - Emacs mode for the Coleslaw static site generator. Also [coleslaw-snippets](https://github.com/equwal/coleslaw-snippets). 112 * [Forthe](https://github.com/equwal/Forthe) - Forth-like DSL. 113 * [sl](https://github.com/equwal/sl) and [defsl](https://github.com/equwal/defsl) - Dependency language for Common Lisp. 114 * [sigil](https://github.com/equwal/sigil) - Documentation preprocessor for Common Lisp. 115 * [posix-pipes](https://github.com/equwal/posix-pipes) - Portable pipes from CLOCC. 116 * [tag-gen](https://github.com/equwal/tag-gen) - Make tags for each directory. 117 * [cores](https://github.com/equwal/cores) and [clapt](https://github.com/equwal/clapt) - Save SBCL cores with libraries loaded. 118 * [asdf-registration](https://github.com/equwal/asdf-registration) - Register ASDF projects. 119 * [CSV](https://github.com/equwal/CSV) - Read CSV into Lisp lists. 120 * [gendocs](https://github.com/equwal/gendocs) - Simple document generation. 121 * [len-cmp](https://github.com/equwal/len-cmp) - Fast list length comparison. 122 * [LispBrain](https://github.com/equwal/LispBrain) - Brainfuck debugger on the Common Lisp debugger. 123 * [lisp-multithreaded-internet](https://github.com/equwal/lisp-multithreaded-internet) - Multithreaded internet for Common Lisp. 124 * [esperanto](https://github.com/equwal/esperanto) - Compress natural language in Esperanto. 125 * [librivox](https://github.com/equwal/librivox) - Automatic YouTube upload of audiobooks. 126 * [cl-yag](https://github.com/equwal/cl-yag) and [clic](https://github.com/equwal/clic) - Mirrors of Bitreich Common Lisp projects. 127 * Spacemacs layers: [timeclock](https://github.com/equwal/timeclock), [rectangle](https://github.com/equwal/rectangle), [ediff-spacemacs](https://github.com/equwal/ediff-spacemacs), [slurp](https://github.com/equwal/slurp), [quickurl](https://github.com/equwal/quickurl), [common-lisp-sly](https://github.com/equwal/common-lisp-sly). 128 129 ## Upstream contributions 130 131 * [suckless](https://suckless.org) - [slstatus](https://git.suckless.org/slstatus): "Not charging" battery status. [scroll](https://git.suckless.org/scroll): typo fix. Patches to dwm, dmenu, quark, and sacc on the mailing lists. 132 * [sad](https://git.2f30.org/sad/) (2f30) - `status volume` protocol, pause toggle, volume bug fix, simpler config macros. 133 * [SLY](https://github.com/joaotavora/sly) - REPL and debugger fixes, xref docs. 134 * [Spacemacs](https://github.com/syl20bnr/spacemacs) - Layers and bindings, cleanup of deprecated `cl` and `use-package` code. 135 * [Coleslaw](https://github.com/coleslaw-org/coleslaw) - URL generation, post extensions, versioning plugin, docs. 136 * [CLX](https://github.com/sharplispers/clx) - Composite extension docs and exports. 137 * [quickproject](https://github.com/xach/quickproject) - Restarts for existing target files. 138 * [ivy/swiper](https://github.com/abo-abo/swiper), [emacs-w3m](https://github.com/emacs-w3m/emacs-w3m), [Nameless](https://github.com/Malabarba/Nameless), [vlime](https://github.com/vlime/vlime), [Mezzano](https://github.com/froggey/Mezzano), [usocket](https://github.com/usocket/usocket), [Trucler](https://github.com/s-expressionists/Trucler), [Newport](https://github.com/Sharp-CLOCC/Newport). 139 * `make uninstall` targets: [mle](https://github.com/adsr/mle), [termbox](https://github.com/termbox/termbox), [wak](https://github.com/raygard/wak), [grabc](https://github.com/muquit/grabc), [sj](https://github.com/younix/sj), [gita](https://github.com/nosarthur/gita), [f3](https://github.com/AltraMayor/f3), [lisgd](https://github.com/PorQ-Pine/lisgd), [moreutils](https://github.com/pgdr/moreutils), [ames](https://github.com/eshrh/ames). 140 * [voidrice](https://github.com/LukeSmithxyz/voidrice), [the_silver_searcher](https://github.com/ggreer/the_silver_searcher), [github.fish](https://github.com/PatrickF1/github.fish), [asyncomplete.vim](https://github.com/prabirshrestha/asyncomplete.vim), [Akusento](https://github.com/tunamayo04/Akusento).