On this page
Customizing Control Bar Buttons
Overview
The Control Bar is divided into two sections:
- Left (File-level): Integration with external applications and quick actions (e.g., "Open with...", "Reveal in File Explorer"). These are configurable in
Settings - Controls. - Right (Preview-level): Viewport controls (e.g., rotate, mute, zoom).
This guide focuses on extending the Left section.
Adding Controls
In Settings - Controls, you can manage built-in buttons, create custom actions, or install control plugins.
1. Custom Actions
- Click + below the actions list and select the program or script to run.
- Configure the action details on the right panel:
- Name: Display name shown in tooltips.
- Executable: Path to the target executable (
.exe). - Arguments: Command-line arguments. Use placeholders like
"${input_file}"to pass file paths. - File Formats: Target file extensions (e.g.,
png,zip) or Special Tokens (e.g.,${type_folder}). - Close preview after successful launch: Close the preview once the external program starts successfully. Seer does not wait for the program to finish.
2. Control Plugins
Control plugins supply packaged actions. They are separate from custom actions, which use a program or script you already have.
Official Control Plugins
Official control plugin packages are available in the download center. Please visit Plugin Downloads - Controls to download the .zip packages. Downloaded archives can be imported directly in Settings > Controls without extracting.
Install the Download
- In
Settings > Controls, click + below the list. - Select the downloaded
.zipdirectly, or selectplugin.jsonfrom a complete extracted package. - Review the imported action's formats and behavior in the details panel.
- Click Okay to save and use it. Cancel discards the import.
If a package provides a different capability, Seer takes you to the corresponding settings page.
Managing Actions
- Reorder: Drag and drop items in the list to rearrange button order on the Control Bar.
- Toggle: Select an action and change Enabled in its details, then save settings.
- Customize Overrides: For installed plugins, you can customize the matched file formats and CLI arguments, or reset them to default anytime.
- Built-in Buttons: Built-in actions (Open with Default Application, Reveal in File Explorer, Same-Type Navigation) can be toggled individually.
Placeholders and Special Tokens
1. Command-Line Placeholders
Seer provides built-in tokens that are dynamically resolved at runtime when launching external tools:
| Placeholder | Description | Example |
|---|---|---|
${input_file} |
Absolute path of the previewed file or folder. | C:\Users\Username\Documents\file.zip |
${7z} |
Absolute path to the bundled 7z.exe. Also accepted in the Executable field. |
C:\Program Files\Seer\plugins\7z.exe |
${seer_exe} |
Absolute path to Seer.exe. |
C:\Program Files\Seer\Seer.exe |
${seer_dir} |
Directory containing Seer.exe. |
C:\Program Files\Seer |
If a path may contain spaces, wrap the placeholder in double quotes: "${input_file}".
Writing your own control plugin? See Plugin Development & Implementation for the full placeholder and matcher-token matrix, including which placeholders each plugin capability supports.
2. File Format Special Tokens
Use these tokens in the File Formats field to match non-standard file types or folders:
| Token | Description |
|---|---|
${type_folder} |
Matches directories and folders. |
${type_file} |
Matches all files (including files without an extension). |
${type_all} |
Matches everything (both files and folders). |
${type_pdf} |
Matches PDF documents. |
${type_image} |
Matches picture files, classified like the built-in Image viewer. |
${type_media} |
Matches audio/video files, classified like the built-in Media viewer. |
${type_web} |
Matches web pages (HTML and Markdown), classified like the built-in HTML viewer. |
${type_text} |
Matches text/code files, classified like the built-in Text viewer. |
${type_none} |
Matches files that belong to none of the categories above (e.g. archives, executables). |
Note: Tokens are case-insensitive and can be combined with file extensions using spaces or commas (e.g., png jpg ${type_folder}). The ${type_*} category tokens classify files by extension using the same tables as the built-in viewers — including your custom lists from Settings - Type — so a control action's scope always agrees with what Seer previews natively. Category tokens match files only; combine them with ${type_folder} if you also need folders.
3. Configuration Example: Extract Archive with 7-Zip
To add a button that extracts archives using the bundled 7-Zip:
- Executable:
${7z}(or browse to your own7z.exe). - Arguments:
x "${input_file}" -r -y -o"C:\Output\Path\" - File Formats:
zip rar 7z tar gz
Parameter Breakdown:
* x: Extract with full paths.
* "${input_file}": Target archive file.
* -r: Recurse into subdirectories.
* -y: Assume Yes on all queries (overwrite).
* -o"...": Output directory.