TENT Syntax Look Coming soon

Syntax Look

Quick Look Extension · macOS

Press Space. Read real, highlighted code.

Syntax highlighting for 130+ file types, with selectable text, line numbers, and five curated themes. One click opens the file in your default app—no IDE required, just Finder.

Built for reading code fast—before you ever open an IDE.

Coming to the Mac App Store See supported file types

$2.99 USD macOS 14+ Coming soon

Why it matters

What Syntax Look does for you

  • Press Space, read real code

    Inspect files without launching an IDE. No perceptible lag on typical source files—Quick Look stays Quick Look.

  • Native rendering, AI-ready text

    Tokenized with highlight.js, drawn to native NSTextView—not a web view. Real text selection means you can press Space, read, and copy a function straight into Claude, Cursor, or Copilot. No blank-screen crashes, full AppKit polish.

  • Themes and type you control

    Five curated themes (Light, Dark, Monokai, Solarized, Nord), live switching from inside the preview, monospace font picker limited to what’s actually installed on your Mac.

  • Minimal sandbox

    App Group entitlements only. No blanket file access, no network, no Accessibility permissions, no analytics. Your code never leaves your Mac.

See it in action

Press Space. Pick a theme.

Syntax Look Quick Look panel showing syntax-highlighted code
Press Space on any code file. Real highlighted code, native text selection — no IDE required.

Dark theme

Five curated themes — switch live from inside the preview, everything re-renders instantly.

Features

Built for real workflows

130+ file types out of the box
Syntax Look attempts a preview for any text-based file. Swift, Python, JS/TS, Rust, Go, Ruby, PHP, Java, C/C++, HTML, CSS, JSON, YAML, TOML, Markdown, and dozens of lock files, config files, and special filenames—plus anything else that’s UTF-8 text.
Native rendering, not a web view
Syntax Look tokenizes with highlight.js in JavaScriptCore, then draws to a real NSTextView. No WKWebView means no blank-screen crashes under memory pressure and full native text selection and Accessibility support.
Fast on small files, careful on big ones
Typical source files render with no perceptible lag. Files between 512 KB and 2 MB render the first 512 KB in lazy 96 KB chunks with a truncation banner so Quick Look stays responsive. Files over 2 MB show an info card only.
Smart encoding detection
Detects UTF-8 with BOM, UTF-16 LE/BE with and without BOM, CP1252, ISO-Latin-1, and ASCII. Truncation is safe around multi-byte UTF-8 boundaries—you never see half a character.
Binary-safe for ambiguous extensions
macOS can route plain `.ts` and `.mts` files to MPEG transport stream handlers. Syntax Look detects and rejects binary payloads before rendering so you get a clean fallback instead of garbled output.
Five curated themes, live switching
Light, Dark, Monokai, Solarized, and Nord. Change themes in the preview—everything re-renders instantly, no app to open.
Toggleable line numbers
Native AppKit ruler view, not a pseudo-element. Snaps on and off from the preview gear menu.
Open in your default app
One click opens the file in whatever app you’ve set as the default for that file type—your editor, IDE, or viewer. macOS already knows; no configuration required. Settings persist via an App Group so the container app and the Quick Look extension stay in sync.
Configurable typography
SF Mono, Menlo, Fira Code, JetBrains Mono, and more. The font picker only shows monospace fonts actually installed on your Mac—no silent fallbacks. Size 10–20 pt.
Minimal sandbox, maximum privacy
The Quick Look extension declares only App Group entitlements—no blanket file-system access, no network, no Accessibility permissions, no analytics. Universal binary for Apple silicon and Intel.

Supported file types

130+ file types. And if it’s text, we’ll try.

Syntax Look attempts a preview for any text-based file. Here are the languages and formats we explicitly support, grouped by purpose.
Source code
  • Swift (.swift)
  • C / C++ (.c, .h, .cpp, .cc, .cxx, .hpp, .hxx)
  • Objective-C (.m, .mm)
  • Java (.java)
  • Kotlin (.kt, .kts)
  • Groovy (.groovy, .gradle)
  • Scala (.scala)
  • Python (.py, .pyw)
  • Ruby (.rb)
  • Perl (.pl, .pm)
  • PHP (.php)
  • Lua (.lua)
  • R (.r)
  • Rust (.rs)
  • Go (.go)
  • Dart (.dart)
  • Zig (.zig)
  • C# (.cs)
  • F# (.fs)
  • VB.NET (.vb)
  • Haskell (.hs)
  • Elixir (.ex, .exs)
  • Erlang (.erl)
  • Clojure (.clj)
  • OCaml (.ml)
Web
  • JavaScript (.js, .mjs, .cjs)
  • JSX (.jsx)
  • TypeScript (.tsx, .cts)
  • HTML (.html, .htm)
  • CSS (.css)
  • SCSS (.scss)
  • Sass (.sass)
  • Less (.less)
  • Vue (.vue)
  • Svelte (.svelte)
  • Astro (.astro)
Config & data
  • JSON (.json, .jsonc, .json5)
  • YAML (.yaml, .yml)
  • TOML (.toml)
  • XML (.xml)
  • INI / config (.ini, .cfg, .conf)
  • Properties (.properties)
  • Environment (.env, .env.local, .env.production)
  • CSV / TSV (.csv, .tsv)
  • Plist (.plist)
  • Web manifest (.webmanifest)
Databases & query
  • SQL (.sql)
  • GraphQL (.graphql, .gql)
  • Prisma (.prisma)
  • Protobuf (.proto)
Docs & markup
  • Markdown (.md)
  • MDX (.mdx)
  • reStructuredText (.rst)
  • LaTeX (.tex, .latex)
DevOps & infrastructure
  • Dockerfile
  • Terraform (.tf)
  • HCL (.hcl)
  • Nix (.nix)
  • CMake (.cmake)
  • Jenkinsfile
Apple / Xcode
  • Entitlements (.entitlements)
  • Xcode config (.xcconfig)
  • Project (.pbxproj)
  • Storyboard (.storyboard)
  • XIB (.xib)
  • Strings (.strings, .stringsdict)
  • Module map (.modulemap)
  • Podspec / Gemspec
Special files
  • Makefile, GNUmakefile, CMakeLists.txt
  • Gemfile, Rakefile, Podfile, Brewfile
  • Vagrantfile, Procfile, Fastfile, Justfile
  • .gitignore, .gitattributes, .gitmodules
  • .dockerignore, .editorconfig
  • .prettierrc, .eslintrc, .babelrc, .swiftlint.yml
Lock & version files
  • package-lock.json, yarn.lock, pnpm-lock.yaml
  • Cargo.lock, go.sum, go.mod
  • Gemfile.lock, Podfile.lock, Package.resolved
  • .ruby-version, .node-version, .tool-versions
Misc
  • Diff / patch (.diff, .patch)
  • Log (.log)
  • Vim script (.vim)

Private by default

No accounts. No cloud. No tracking.

Syntax Look runs inside a sandboxed Quick Look extension with App Group entitlements only. macOS hands it the file you asked to preview, it draws the highlighted output, and that’s the entire surface area. No background work, no servers, no telemetry.

Receipts, not promises

  • The Quick Look extension declares only App Group entitlements—no network, no Accessibility, no blanket filesystem access.
  • macOS grants the extension read-only access to a single file at the moment you ask to preview it. Nothing else.
  • No account system. There’s nothing to sign into because there’s nothing on the server side.
  • Bundled tokenizer is open source: highlight.js (BSD-3-Clause), running locally in JavaScriptCore with no network access.

Before & after

The difference, at a glance

Without Syntax Look

  • Finder Quick Look for code is plain and hard to scan.
  • You have to open an IDE just to inspect a file.
  • No way to copy snippets from a preview.
  • Most Quick Look extensions ask for broad permissions to do their job.

With Syntax Look

  • Readable, highlighted code with your theme and font of choice.
  • Press Space. Read. Move on.
  • Selectable, copyable text with one click to open in your default app.
  • App Group entitlements only. Nothing to grant, nothing to leak.

FAQ

Common questions

Does this replace my editor?
No. Syntax Look is for quick inspection and triage. Read the file in Quick Look, grab the snippet you need, then click "Open in default app" when you’re ready to edit—macOS sends it to whatever editor you’ve configured as the default for that file type.
Does it support TypeScript?
Yes for text-based TypeScript files. `.tsx` and `.cts` are generally reliable. On some systems, plain `.ts` and `.mts` may be routed by macOS as MPEG transport streams—Syntax Look detects and rejects media payloads safely.
Does it work offline?
Yes. Syntax Look is fully local. No network access is ever required.
Is my code uploaded anywhere?
No. All processing happens on your Mac using a bundled highlight.js runtime in JavaScriptCore.
Does it help with AI-assisted coding?
Yes—that’s a core reason to have it. Native text selection means you can press Space on a file, read with syntax highlighting, select the function or error message you need, ⌘-C, and paste straight into Claude, Cursor, Copilot, or any LLM chat. No editor launch, no file open. Syntax Look itself doesn’t talk to any AI—it just makes the read-select-copy loop fast enough to be worth it.
Which Macs does it support?
macOS 14 Sonoma or later, on both Apple silicon and Intel Macs. Universal binary.

Get Syntax Look

Launching soon.

$2.99 USD macOS 14+

Coming to the Mac App Store

Questions? Email support@tentstudios.com