No description
Find a file
Vesa Vänskä ebdfadc0b7
ci: run tests and build on main pushes and PRs
Tests previously ran only locally, so a regression could land on main
or in a PR unnoticed. Add a GitHub Actions workflow running the build
(tsc type-check) and Vitest suite on every push to main and every PR.
2026-05-20 13:12:25 +03:00
.github/workflows ci: run tests and build on main pushes and PRs 2026-05-20 13:12:25 +03:00
src fix: merge multiline cells and strip leftover indentation 2026-05-20 13:04:08 +03:00
.gitignore feat: Obsidian plugin to convert box-drawing tables to Markdown 2026-04-26 19:16:31 +03:00
esbuild.config.mjs feat: Obsidian plugin to convert box-drawing tables to Markdown 2026-04-26 19:16:31 +03:00
LICENSE chore: prepare 1.0.0 release 2026-04-26 19:19:16 +03:00
manifest.json chore: Add dot to the end of manifest desciption (mandatory) 2026-04-26 19:48:51 +03:00
package-lock.json chore: release 1.0.1 2026-04-26 19:40:43 +03:00
package.json chore: release 1.0.1 2026-04-26 19:40:43 +03:00
README.md docs: document release process 2026-04-26 19:34:06 +03:00
tsconfig.json feat: Obsidian plugin to convert box-drawing tables to Markdown 2026-04-26 19:16:31 +03:00

Table Beautifier

An Obsidian plugin that converts ASCII and Unicode box-drawing tables into Markdown tables.

Useful when pasting terminal output from CLI tools like Claude Code, Docker, psql, MySQL, and others that render tables with box-drawing characters.

Before

┌──────────────────┬───────────────────────┐
│       Code       │      Description      │
├──────────────────┼───────────────────────┤
│ MyClass          │ This is my class      │
├──────────────────┼───────────────────────┤
│ YourClass        │ This is your class    │
└──────────────────┴───────────────────────┘

After

Code Description
MyClass This is my class
YourClass This is your class

Usage

  1. Select the table text in the editor
  2. Right-click and choose Convert table to Markdown, or
  3. Open the command palette (Cmd+P) and run Table Beautifier: Convert table to Markdown

The context menu item only appears when the selection contains table-like characters.

Supported Formats

  • Unicode box-drawing tables (┌ ─ ┬ ┐ │ ├ ┼ ┤ └ ┴ ┘)
  • ASCII tables (+ - | =)

Features

  • Columns are padded for visual alignment
  • Values that look like code identifiers (PascalCase, snake_case, dot.notation) are wrapped in backticks

Development

npm install
npm run build
npm test

To develop with live reload, run npm run dev and symlink the plugin directory into your vault:

ln -s /path/to/obsidian-table-beautifier /path/to/vault/.obsidian/plugins/table-beautifier

Installation

Copy main.js and manifest.json into your vault's .obsidian/plugins/table-beautifier/ directory, then enable the plugin in Settings.

Releasing

  1. Bump version in manifest.json and package.json (semver, e.g. 1.0.1).

  2. Commit the bump:

    git commit -am "chore: release 1.0.1"
    
  3. Build and tag. The tag must match manifest.json version exactly — no v prefix:

    npm run build
    git tag 1.0.1
    git push origin main 1.0.1
    
  4. Create a GitHub release at the tag and attach main.js and manifest.json as individual asset files (not zipped).