Extract readable text from two-column PDFs

paper-notes · Claude · branch feat/pdf · claude-opus-5 · cwd /home/user/code/paper-notes · id 86b8651c-cb11-bd66-b6ad-d1694ead7fec · 2026-08-20 23:36 · 2 msgs · 20 tools · 1 min read · updated 2 weeks ago

Column-aware extraction replaced a naive reader that interleaved lines.

tools: Read, Edit, Bash
← paper-notes Download .md
cd /home/user/code/paper-notes && claude --resume 86b8651c-cb11-bd66-b6ad-d1694ead7fecResume works while the transcript is within Claude Code's retention window (~30 days).
Tool calls
Read Read: 7 calls (43.8%) 7 Bash Bash: 6 calls (37.5%) 6 Edit Edit: 3 calls (18.8%) 3
Token usage16.8K total
Input14.2K
Cache creation0
Cache read0
Output2.6K
Cache hit ratio0%· cold cache

Column-aware extraction replaced a naive reader that interleaved lines.

Conversation

Turn 1 — User

Extracted text from two-column papers is interleaved nonsense.

Turn 2 — Assistant

The reader walked the page in raw order. It now detects column boundaries from text block positions and reads each column through before moving on.

Single-column pages take the same path and are unaffected, since one detected column is just the page.

Turn 3 — User

Does it handle a paper that switches layout mid-document?

Turn 4 — Assistant

Yes — detection runs per page rather than once per document, so a single-column abstract followed by two-column body works.

Subjects

  • [[Markdown]]
  • [[Data Import]]
  • [[Python]]

Keyboard shortcuts

⌘K / Ctrl+KOpen command palette
/Focus search
g hGo to home
g pGo to projects
g sGo to sessions
j / kNext / prev row (tables)
?Show this help
EscClose dialogs

Structured queries

Mix key:value filters with free text in the palette:

type:sessionOnly session pages
project:llm-wikiFilter by project name (substring)
model:claudeFilter by model name (substring)
date:>2026-03-01Sessions after a date
date:<2026-04-01Sessions before a date
tags:rustPages mentioning a tag/topic
sort:dateSort results by date (newest first)

Example: type:session project:llm-wiki date:>2026-04 sort:date