Skip to content

About

Paste clean Plain Text or Markdown from any copied HTML/RTF — macOS menu bar app (Swift) with a Go transform engine

Topics

Resources

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

choosepaste

CI OpenSSF Scorecard Release License: MIT Platform

macOS menu bar utility that transforms clipboard content before pasting. Copy text from anywhere, paste it as clean Plain Text or Markdown into any editor.

Install

make bundle
open build/ChoosePaste.app

Requires: Go 1.26+, Swift 5.9+, macOS 14+

Usage

Hotkey Action
Cmd+Opt+V Open popover with transform options
Ctrl+Opt+P Paste as plain text (direct)
Ctrl+Opt+M Paste as Markdown (direct)

Accessibility permission is required for global hotkeys.

Architecture

Swift menu bar app (SwiftUI)
  |
  |-- Global hotkey listener (CGEvent tap)
  |-- Clipboard read/write (NSPasteboard)
  |-- Cursor-anchored popover
  |
  v
Go transform engine (stdin/stdout JSON)
  |-- HTML -> Markdown (html-to-markdown library)
  |-- HTML -> Plain text (tag stripping + entity decoding)
  |-- RTF -> HTML (pre-converted by Swift) -> transform

Development

make test      # Run Go engine tests (-race)
make lint      # golangci-lint on the Go engine
make ci        # Everything CI runs for the engine: vet, lint, test, vulncheck, build
make engine    # Build Go engine (universal binary)
make app       # Build Swift app
make bundle    # Build everything + assemble .app bundle
make run       # Build and launch
make clean     # Remove build artifacts

License

MIT. Copyright 2026 Fair Bear Labs.

About

Paste clean Plain Text or Markdown from any copied HTML/RTF — macOS menu bar app (Swift) with a Go transform engine

Topics

Resources

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages