OpenTab is an open, text-based, computer-friendly format for guitar tablature.
It is designed to treat tablature as structured musical data, not ASCII art, while remaining readable and writable by humans.
Existing options all fall short in different ways:
- ✅ Easy for humans
- ❌ Ambiguous timing
- ❌ Impossible to parse reliably
- ❌ Loses musical intent
- ✅ Very expressive
- ❌ Proprietary and binary
- ❌ Hard to diff, version, or extend
- ❌ Tied to specific software
- ✅ Open standard
- ❌ Notation-first, not tab-first
- ❌ Verbose and hard to author by hand
- ❌ Guitar techniques are second-class
OpenTab exists to fill this gap.
- 🎯 Explicit timing — no spacing-based inference
- 🧠 Semantic model — notes, chords, techniques as data
- 📄 Plain text — UTF-8, git-friendly, diffable
- 🔌 Extensible — forward-compatible annotations
- 🧑💻 Developer-friendly — parsers, schemas, tooling
- 🎸 Musician-friendly — compact, readable DSL
OpenTab is:
- A canonical source format
- Suitable for version control
- Convertible to MIDI, MusicXML, ASCII tab
OpenTab is not:
- A visual engraving/layout format
- A replacement for notation software
- A full notation editor
- An attempt to encode “ASCII tab with metadata”
Interchange notes:
- MusicXML export is lossy; some tab-specific details do not map cleanly.
- Guitar Pro (
.gp*) import is best effort and may require cleanup.
m1: | q (6:3) q (5:5) q (4:5) q (3:3) |
m2: | e (3:2h4) (2:3) q [ (4:2) (3:2) (2:3) ] q r |
- Open any
.otabsample in samples/ with your editor of choice. - Read the specification in spec/opentab-spec-v0.1.md.
- Explore the VS Code extension source in editors/vscode/.
- Import ASCII tabs (best effort):
opentab import ascii <file.txt> -o out.otab. - Visit the docs site: OpenTab docs.
- Specification: spec/opentab-spec-v0.1.md
- Documentation site: https://homeputers.com/opentab/
- VS Code extension: editors/vscode/
- Samples: samples/
opentab/
├── spec/ # Versioned specifications
├── samples/ # Example .otab files
├── tools/ # Parsers, formatters, converters
├── editors/ # Editor integrations (VS Code, etc.)
├── docs/ # Documentation website
└── README.md
icon128x128.png is used for the VS Code extension icon and the docs favicon.
- Spec: v0.1 (draft)
- Reference implementations: planned
- VS Code support: planned
MIT — see LICENSE
