- Try an explicit protocol override:
pixelterm --protocol kitty /path/to/media
pixelterm --protocol iterm2 /path/to/media
pixelterm --protocol sixel /path/to/media
pixelterm --protocol text /path/to/mediaautofirst checks the matched terminal hint and only tries that hint's plausible protocols insixel -> iterm2 -> kittypriority.- On a local session, if no hinted probe confirms a protocol,
autoruns the samesixel -> iterm2 -> kittyorder as a generic probe pass. If nothing confirms, it falls back to text. - In a direct SSH session (
SSH_CONNECTION,SSH_CLIENT, orSSH_TTYset, withoutTMUXorSTY),autostays conservative: it skips the generic probe pass and falls back to text unless the hinted family returns an affirmative signal. - If you already know the correct protocol, or if a remote/passthrough setup keeps
autoin text, use an explicit--protocolvalue or a terminal-specificconfig.inioverride. - If a video is already open, press
porPto switch video output modes in this order:text -> sixel -> iterm2 -> kitty -> text. - See TERMINAL_PROTOCOL_SUPPORT.md for terminal-specific notes.
- Try
--alt-screen falsefirst. - If that is not enough, try
--clear-workaround. - If one setting consistently works better, move it into
config.iniunder a terminal-specific section. config.example.iniincludes examples forWezTermandWarpTerminal.
macOS may attach quarantine metadata to downloaded binaries. Remove it and try again:
xattr -dr com.apple.quarantine /usr/local/bin/pixelterm- PDF, EPUB, and CBZ support only work in builds that include MuPDF support.
- When building from source, install MuPDF before running
make. - If book support is missing in your current build, images and videos can still work normally.
- A directory path is not a valid book file. Directories open in file manager mode, and attempts to open a directory as a book are rejected like a missing or invalid book path.
- Default config path:
$XDG_CONFIG_HOME/pixelterm/config.ini, or$HOME/.config/pixelterm/config.iniwhenXDG_CONFIG_HOMEis unset or empty. - Custom config path:
pixelterm --config /path/to/config.ini ... - A missing default config file is ignored, but a missing file passed with
--configis treated as an error. - Config loading order is:
[default]- first matching terminal-specific group from
TERM_PROGRAM,LC_TERMINAL,TERMINAL_NAME, orTERM
- CLI flags override config values because argument parsing happens after config loading.
- For CLI boolean flags such as
--preloadand--alt-screen, accepted values includetrue/false,yes/no,on/off, and1/0.
Video playback is video-only. Audio output is not part of the current feature set.
- If the path does not exist or is inaccessible, PixelTerm-C exits with an error.
- If the path itself starts with
-, use--to stop option parsing first, for example:pixelterm -- --config=gallery.txt - If you pass a directory, PixelTerm-C loads that directory and starts in file manager mode.
- If the startup path is not a directory, not a valid book file, and not a valid media file, PixelTerm-C falls back to the file's canonical parent directory and opens file manager mode there.
- If you run
pixeltermwith no path, it starts in file manager mode for the current directory.
- If the wrong item stays selected after toggling hidden files or changing preview-grid zoom, quit and reopen PixelTerm-C in the same directory to reset the view.
- If it happens again after reopening, note the directory, whether hidden files were shown, and the last few keys you pressed before reporting it.