Skip to content

Open With

Open With is a flyout in the context menu: hover it and you get the programs that can open this file, one click away. The upper half is what the system knows about, the lower half is what you pinned there yourself. This page covers how to read the flyout and how to choose what gets pinned.

Windows, macOS and Linux all have this flyout. Where the candidates come from differs, and so do the actions at the end of it — see What differs per system.

Reading the flyout

Right-click a file and hover Open With. The flyout has four segments, top to bottom:

SegmentWhat is in it
Default programWhatever this file type is currently associated with, marked default at the end of the row
System recommendationsThe other programs the association table knows about, with no separator above them
Your pinned programsBelow the separator: the ones you pinned in Settings, in the order you put them
The actions at the endChoose another app… opens the Windows dialog and is Windows-only; Manage Open With… goes to the settings page and is on all three systems

Every row carries the program's icon on the left, which so far only Windows can draw. When an icon is slow to arrive its slot stays empty and fills in afterwards, with the text staying where it is.

The programs are looked up the moment you hover the flyout, so the first hover can take a beat. Each file type is looked up once per run, and hovering it again is instant.

When there is nothing to list

SituationWhat the flyout shows
The selected files are different typesThe upper two segments go away, replaced by a dimmed Selected files are of different types; the lower half is unaffected
Nothing is registered for this typeThe upper two segments go away, replaced by a dimmed No registered program
Nothing pinned yetThe lower half reads a dimmed No pinned programs yet
The target is a folderOpen With does not appear at all

Those dimmed lines are explanations, not entries you can click.

Note

To change the default association, use Choose another app… (Windows). Windows does not let a program change a file type's default association behind your back, so this flyout has no "always use this". The system dialog has an Always use this app checkbox; that is where defaults get changed. macOS and Linux have no such entry — change defaults in Finder's Get Info, or in the system's own default-applications settings.

Pinning your own programs

Pinning puts a program in the lower half of the flyout, in an order you set, independent of what the association table does. The settings page is in the Input group and is called Open With; Manage Open With… at the end of the flyout goes to the same page and preselects the extension you just right-clicked.

  1. Open Settings and click Open With in the Input group.
  2. On the Applies to row, choose which files these pins cover: All files, or click + Extension and type one (the box's example reads e.g. .psd).
  3. Click + Add a program and pick one from the list. The box above it filters by program name.
  4. Reorder with the / at the end of each row, remove one with ×.

While nothing is pinned the page reads No pinned programs yet. Once pinned, a program shows up in the lower half of the right-click "Open With" flyout — in the order you choose, not the one the system decides.

A program pinned both under one extension and under All files appears once, in the position the extension-level pin gives it. If it also turns up in the system recommendations, the only row you get is the one you pinned.

Tip

Extension pins sit above global pins. So the program you pinned specifically for .psd comes before the ones pinned for every file. To change the order within one layer, use the / at the end of each row.

Flyout options

The Flyout options section at the bottom of the page controls how long the upper half gets:

SettingWhat it does
Show programs the system recommendsTurn it off and the flyout keeps only the default program and your pins
Show at most3, 5 (default), 8 or All. The number includes the default program's row

Programs past the limit are not lost: on Windows they are still reachable through the Choose another app… dialog, and on the other two systems raising the limit one step brings them back.

Pinned programs live in config.ini in your settings folder, on the openwith_pin lines, which the bottom of the page says as well.

What differs per system

Reading the flyout and everything about pinning work the same on all three. What differs is where the upper half comes from and how many actions sit at the end:

SystemWhere the recommendations come fromActions at the endProgram icons
WindowsThe system's file type association tableChoose another app… and Manage Open With…Yes
macOSThe system's launch services — the same list Finder's Open With usesManage Open With… onlyNot yet; the slot stays empty and the row keeps its height
LinuxThe freedesktop MIME database plus the .desktop entries programs installManage Open With… onlyNot yet

Choose another app… is Windows-only because the other two systems have no equivalent system dialog a program can call up — an entry that does nothing when clicked is worse than no entry.

On Linux, programs are launched through gio launch where it is available (it ships in libglib2.0-bin); where it is not, tessoa reads the launch command out of the .desktop entry itself. Both paths work.

Where custom commands come in instead

Custom commands can also produce an "open with VSCode" entry. The line between the two:

What you wantWhich one
Open the selected files with some programOpen With. You name the program; there are no arguments to fill in
Pass arguments, limit when it appears, run a command lineCustom commands, which give you Name, Program, Arguments and Applies to

Their positions differ too: custom commands always sit at the bottom of the context menu as their own segment, while pins sit next to the system recommendations in one flyout.

User docs for tessoa