Spokes.wiki Search About
Software ApplicationSoftware Source Code source ↗ source url updated Mon Aug 10 2026 00:00:00 GMT+0000 (Coordinated Universal Time)

textbeat

A plaintext music sequencer and MIDI shell by Grady O’Connell, in Python, MIT licensed. You write music as text in any editor, or type it live into a shell, and it drives MIDI out. There is a vim plugin for playing the buffer you are editing.

443 stars, 12 forks. Created May 2018; last pushed 24 March 2023, one open issue, not archived. The README still describes the project as “still very new” and warns that “despite number of features, you may quickly run into issues, especially with editor integration” — a caveat written years before the repository went quiet. Read the feature list as a snapshot of 2023, not a roadmap.

The notation

Music runs vertically, the tracker arrangement: “music flows vertically, with separate columns that are separated by whitespace or manually setting a column width. Each column represents a track, which defaults to separate midi channel numbers.”

What sits in the cells is the departure. Notes are scale degrees, 1–7, not letters — so the same text transposes by changing the scale, and chords are written by function (1maj, 2m). Accidentals go in front rather than behind: b7, not B♭. On top of that: & and $ for arpeggiation and strumming, T for tuplets, * for note length, . staccato, ! accent, @v volume and ~ vibrato as MIDI CC. Scales and modes are addressable by name, and there are markers, repeats and a callstack.

What it adds to the tracker argument

tracker holds that the interface is the argument: per-line typed editing makes dense parameter movement cheap, which is why the form belongs to jungle, breakcore and IDM. textbeat pushes that claim in two directions at once, and the second one is new to this wiki.

It removes the application. A classic tracker is a program with a grid in it — renoise, SunVox, the Dirtywave M8. textbeat keeps the grid as a convention about whitespace and hands editing to whatever the user already has. The vim plugin is the interface. That makes the tracker’s core gesture available inside a general text editor, with the editor’s own machinery (macros, registers, version control, search-and-replace) applying to the score for free.

It adds theory to the cell. This is the sharper difference. Trackers spell notes absolutely — a cell holds a pitch, and transposing means rewriting or applying a global offset. textbeat’s cells hold functions: degree 1 of the current scale, the ii chord. So a phrase is stored as a relationship and resolved at playback. The corpus’s existing note on trackers says the class is defined by “how you address the music” rather than by what makes the sound; textbeat addresses the music in a different vocabulary than every other tracker here, and it is the vocabulary chord synths like hichord and minichord put under buttons. Same idea, opposite ergonomics: a chord synth makes theory playable by hiding it in hardware, textbeat makes it editable by writing it as text.

It makes no sound

Squarely inside tracker‘s “not an engine” point, and further out than the examples there. Renoise hosts plugins, SunVox has a synth in it; textbeat has neither. It emits MIDI and needs something else to be audible — the README points Linux users at qsynth, Windows users at loopMIDI to reach VSTs. The routing setup is the user’s problem, which is a real adoption cost and probably part of why the editor-integration warning exists.

Recorded weaknesses

First-party throughout: everything above is the project describing itself, and nothing here has been run. No audio, no demo, no third-party review. The 443 stars measure interest, not use. “Still very new” in a README last touched in 2023 is the specific kind of claim that stops being true without anyone editing it. Planned features listed in the repo (VST integration, recording) are stated intentions with three dormant years behind them and should not be read as capabilities.

Cross-spoke note. As an MIT tool an end user installs and runs locally, this also touches foss-applications-wiki’s territory. It is paged here because the substance is sequencing and music theory; the self-hosting angle is not what the source is about.

tracker · attack-mag-5-trackers · daw · chord-synthesizer · hichord · minichord · midi-controller · synthesis