Skip to content

Releases: jedijashwa/pullmark

PullMark 0.28.0-beta.2

Pre-release

Choose a tag to compare

@jedijashwa jedijashwa released this 06 Aug 15:20
  • Margin-note and review-comment bubbles in the margin rail now stay
    clear of the overlay scrollbar when the web view is narrow (sidebar
    and outline open) — first beta feedback, thanks!
  • Sideways trackpad swipes no longer rubber-band the page: documents
    never scroll horizontally by design (wide code blocks and tables
    scroll within themselves), so the page now says so.

PullMark 0.28.0-beta.1

Pre-release

Choose a tag to compare

@jedijashwa jedijashwa released this 06 Aug 12:20
  • Margin notes (beta) — leave comments on any local Markdown
    document, the way you would on a pull request. Hover a block for the
    note bubble (or select text first to quote it), write in Markdown,
    and the note is saved into the file itself as a plain HTML comment —
    <!-- note @you: like this --> — invisible to GitHub and every other
    renderer, but rendered by PullMark as a comment bubble pinned to that
    spot. Built for reviewing documents an agent wrote for you: tell the
    agent to address the notes and delete them as it goes, and watch the
    bubbles disappear live.
    • Edit and delete from each bubble; File Margin Note (Edit menu)
      for document-level notes; ⌥⌘M notes the block you're reading.
    • Open Files rows show a comment-count chip while a document still
      carries notes.
    • Notes render read-only in browsed GitHub files, never appear in
      print or exports, and View → Hide Margin Notes clears the page.
    • The format is a documented convention, not an app database:
      pullmark.app/docs/beta/margin-notes
      has the two-sentence spec and a paste-into-your-CLAUDE.md snippet
      for agents.
  • A beta channel — this release inaugurates it. Betas are signed
    and notarized like any release; get them with
    brew install --cask jedijashwa/tap/pullmark@beta (or the release
    DMG), and Settings → General → Update channel keeps you on the
    track you choose. Stable installs never see prereleases.

PullMark 0.27.0

Choose a tag to compare

@jedijashwa jedijashwa released this 06 Aug 10:50
  • Open Files, with previews — the Files section is now Open Files:
    the flat, reorderable working set of everything you've explicitly
    opened. Single-clicking a file inside a Location shows it as a
    preview — one italicized entry, always last in the section, that
    the next single-click replaces — so browsing a big tree never piles
    up rows, and the file you were just reading always has exactly one
    place to be found.
    • Keeping a file: double-click it (in the tree or on the italic
      entry), choose Keep Open from the right-click menu, or just start
      editing — authoring always pins; reading (blame, history,
      inspecting an image) never does. External opens — Finder, drag &
      drop, ⌘O, the CLI — pin as before.
    • A setting to taste: Settings → General → "Clicking files in
      Locations" — Preview First (default) or Open Fully, which keeps
      every file you click.
    • Reveal in Location on any Open Files row jumps to where the
      file lives in its tree; Close All lives on the section header;
      the preview survives relaunch, still as a preview.
    • Clicking a relative link to a file in an open Location now
      previews it instead of pinning a row.
    • Remote repos preview too, in the same place — browsing a
      GitHub repo's tree or following links inside a remote doc puts
      the same single italic entry in Open Files (book icon,
      owner/repo @ ref second line) instead of permanently growing
      the session's docs list. One preview per window, local or
      remote. Keeping a remote doc — double-click or Keep Open — files
      it with its repo under Locations; kept docs get a hover-✕, sit
      above the tree so they never drown under a big repo, and ⌘K
      opens still pin directly.
  • A real CLIpullmark --help and --version exist now, with
    errors that name the path that didn't resolve (and abort the whole
    open, so scripts fail loudly). pullmark <worktree> <file> opens
    the worktree as a Location and shows the file — made for agents
    putting a document in front of you. Everything still lands in the
    frontmost window of a running app.
  • Docs — pullmark.app grew a documentation section:
    pullmark.app/docs covers the features,
    the sidebar and every icon, all settings, the full keyboard map, the
    CLI, and troubleshooting.

PullMark 0.26.1

Choose a tag to compare

@jedijashwa jedijashwa released this 05 Aug 14:16
  • ⌘K now accepts GitHub URLs typed without the scheme —
    github.com/owner/repo and github.com/…/blob/… work the same as
    their https:// spellings.

PullMark 0.26.0

Choose a tag to compare

@jedijashwa jedijashwa released this 05 Aug 13:25
  • GitHub Markdown links open in PullMark — click a
    github.com/…/blob/… (or raw) link to a Markdown file and PullMark
    fetches and renders it in-app instead of bouncing to the browser.
    The first click asks which behavior you want; your choice becomes
    the default (Settings → General), and ⌘-click always does the other.
    The link-status pill in the corner says where a hovered link will
    open — and flips live while ⌘ is held.
    • Provenance is always visible: a bar above the content reads
      owner/repo @ ref · path, shows the exact commit the ref resolved
      to, and carries the Open on GitHub control — you never have to
      wonder whether you're reading a local file or a repo.
    • Remote docs are browsable: relative links (./sibling.md,
      ../other/doc.md) resolve against the repo at the same pinned
      commit, images load the same way, and Browse Repo Files fetches
      the repo's whole Markdown tree into the sidebar. ⌘K accepts blob
      URLs and github.com/owner/repo too.
    • PRs keep precedence: a link into a repo you have open as a
      pull request opens in the PR space — the rendered diff when the
      file is part of the PR, the PR's browsed docs at its head branch —
      and a link to any other branch opens pinned to that branch.
    • Blame and branch compare work there too: the blame gutter and
      a Compare menu (rendered diff against any other branch) come along
      from the PR machinery.
    • Private repos work with the same GitHub credentials PRs
      already use; failures say loudly whether a file is missing or
      possibly unauthorized. Nothing fetched touches disk, sessions
      restore as references only, and no link is fetched without an
      explicit click.
    • Heading anchors now match GitHub's slug rules exactly
      (underscores survive, consecutive spaces keep their hyphens), so
      #section links written for GitHub land correctly in PullMark
      and vice versa.
  • A calmer sidebar — four sections instead of six. Local folders
    and GitHub repos now share one Locations section (browsable
    roots, wherever they live — repo rows wear GitHub's book icon and
    show their ref), and Review Requests became a subgroup inside
    Pull Requests, unread badge intact.
  • Every Location says what it is — a plain folder is just a
    folder; a git checkout gains a branch chip; a checkout of a GitHub
    repo adds a small book mark; a remote repo is the book itself. The
    chip is a control: on remote repos it switches the session's branch
    in place or opens another branch as a sibling Location (⌥-pick does
    it from the same list); on local checkouts it lists the repo's
    worktrees — each opens as its own Location — and, for
    GitHub-backed folders, other branches viewable from GitHub
    (preferring a worktree when one has that branch checked out).
    PullMark never checks anything out — disk state is discovered and
    read, never mutated. Fork + upstream remotes both count as the
    repo's identity, and links to a repo you have cloned on the linked
    branch now open the local file instead of fetching.
  • Places show their README — selecting a folder, a folder in its
    tree, or a remote repo renders that directory's README (or index
    file) instead of an empty placeholder, GitHub-style.
  • The ask dialog for GitHub links grew a Remember my selection
    checkbox: checked (the default), your choice becomes the standing
    policy; unchecked, it applies once — and the unchecked state is
    itself remembered.

PullMark 0.25.0

Choose a tag to compare

@jedijashwa jedijashwa released this 04 Aug 16:17
  • A pullmark command — open files and folders from the shell:
    pullmark README.md, pullmark docs/, or bare pullmark for the
    app itself, with relative paths resolved against your working
    directory. Homebrew installs it automatically; DMG installs add it
    with one click in Settings → General → Command line.
  • Links go where they point — relative links in local documents now
    follow symlinks (including ones that lead outside the folder you
    opened — common in cloud-drive setups) and ../ paths to sibling
    folders, instead of failing silently. A link whose target genuinely
    doesn't exist says so, naming the path. Images and other resources
    the page loads by itself keep their stricter containment.

PullMark 0.24.0

Choose a tag to compare

@jedijashwa jedijashwa released this 04 Aug 13:31
  • The sidebar navigator, rebuilt
    (#32) — the
    navigation panel's interactions are now first class:
    • Folders are real places: opening a folder shows a closeable
      root with a live file tree — folders first, single-child chains
      compressed (docs/en/guide), empty directories pruned — instead
      of a flat dump of every file. Files added, renamed, or deleted on
      disk appear in the tree as they happen, and a root whose path
      disappears (branch switch, unmounted volume) dims and revives
      instead of vanishing. View as List remains per root.
    • Five honest sections: Files (documents you opened
      individually), Folders, Pull Requests — whose changed-file lists
      are now the same trees, with status icons and unresolved-comment
      badges — Review Requests, and Recents. Every row selects and
      participates in keyboard navigation.
    • Closing things is easy: hover any removable row for ✕, press
      ⌫ on a selection, or use the grown context menus — Remove,
      Reveal in Finder, Copy Path, Refresh Folder, Clear Recents — all
      also in the File menu as rebindable commands.
    • Recents tell the truth: an entry whose file has gone missing
      dims with a "last seen at" tooltip and revives automatically when
      the file returns; clicking one offers Remove from Recents instead
      of an error.
    • Session restore keeps up: relaunching restores folder roots
      with their expansion — including files added while the app was
      closed. Drag top-level rows to reorder; the order persists.
    • Plus: ⌥-click deep-expands a subtree, Space Quick Looks the
      selected file (macOS 14+), empty sections offer Open buttons, and
      ⌘K / ⇧⌘F cover everything in folder trees.

PullMark 0.23.0

Choose a tag to compare

@jedijashwa jedijashwa released this 04 Aug 11:28
  • Line numbers in rendered views — a new Appearance setting, off by
    default: each block shows its starting source line in the margin of
    rendered documents and diffs, with the block's full range on hover.
    Rendered text wraps freely, so numbering is per block — the rendered
    views' honest answer to "where is this in the file?" (the raw source
    view keeps its true per-line gutter). Diffs number by the new file;
    removed blocks keep their old-file coordinates, and side-by-side view
    numbers each column by its own side. Plays with blame: numbers sit
    nearest the text, history outside them.
  • Appearance settings — the Themes settings tab is now Appearance:
    theme cards under their own header with the custom-theme controls
    beside them, and each layout choice — theme, content width, line
    numbers — presented as selectable preview cards.

PullMark 0.22.0

Choose a tag to compare

@jedijashwa jedijashwa released this 04 Aug 10:08
  • Review conversations (#29) — reviewing now happens wherever
    you read:
    • Threads in the Result view: comment badges in the margin with
      counts, clustered per block; click to expand the conversation in
      place. Resolved conversations stay tucked away until you ask —
      "Show Resolved Conversations" lives in the View menu (rebindable)
      and at the end of the document.
    • An honest review state: one toolbar control reads "Review
      changes" or "Finish your review · N" — and N is true, because
      pending reviews live on GitHub, not in app memory. Reviews started
      on github.com appear in PullMark and vice versa; quitting loses
      nothing. "Abandon review" (with confirmation) discards server-side.
    • Verdicts that can't happen by accident: Comment / Approve /
      Request changes as an explicit selection, Comment preselected every
      time, one Submit button. On your own PR, Approve and Request
      changes are disabled with the reason inline.
    • An in-page composer replacing the sheet: it expands beneath the
      block, brings itself into view, pre-fills suggestions from the
      block's lines, narrows its range to your text selection, and keeps
      drafts when you click away. One comment bubble on a fixed margin
      rail (the margin is part of the hover zone — park your pointer
      there and scroll); suggestion editing starts inside the composer.
    • Reactions and comment management: react with GitHub's eight
      emoji on any published comment; edit or delete your own from the
      ⋯ menu. Resolved threads in diff views collapse to one line.
    • Comment counts on sidebar file rows, plus a note on the PR
      overview when comments live on files PullMark doesn't show.

PullMark 0.21.0

Choose a tag to compare

@jedijashwa jedijashwa released this 31 Jul 07:18
  • Content width — choose how far text may stretch before it wraps:
    Standard (the classic reading measure, still the default), Wide
    (longer lines, more on screen, still capped), or Full Width (the
    document gets the whole window — made for full screen). Pick in
    Settings → Themes with illustrated previews, or switch mid-read from
    View → Content Width; changes apply live to every open document and
    keep your place. Plays with every theme, the blame gutter, diffs, and
    zoom. Requested by a full-screen reader tired of the dead space.