| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
Running `just test-sixel-tmux' from a tmux pane previously printed
`sessions should be nested with care, unset $TMUX to force' and exited
with code 1. Switch the recipe to a shebang body that branches at
runtime: when `$TMUX' is already set, run emacs directly in the
current pane (the test condition is already satisfied -- we're inside
tmux); otherwise spawn a fresh `tmux new-session' wrapper as before.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Sixel detection used to hard-disable the moment `$TMUX' was set. That
guard predates tmux 3.4 (released 2024-02-13), which ships native Sixel
rendering, so we were rejecting a working configuration. Drop the hard
guard, gate on a parsed `tmux -V' >= 3.4, and let users opt out via a
new custom var.
- `kitty-gfx-tmux-allow-sixel' (default t). Set to nil if your tmux
build lacks `--enable-sixel' or if you want to avoid the upstream
scroll artifact (tmux's cell buffer is not pixel-aware, so images may
persist after scrolling).
- `kitty-gfx--tmux-version' parses `tmux -V' once per session and
caches the result in `kitty-gfx--tmux-version-cache' (with an
`unset' sentinel so we can distinguish "not probed" from "no tmux").
- `kitty-gfx--tmux-sixel-supported-p' centralises the (in-tmux + opt-in
+ version >= 3.4) check.
- `kitty-gfx--sixel-detect' now uses the helper instead of
`(not in-tmux)'. Debug log gained `tmux-ver=' and `tmux-ok='.
- AGENTS.md / README.org / CHANGELOG.org: limitation reworded from
"no tmux support" to a partial entry that explains exactly what works
and what the remaining caveats are (Kitty APC passthrough is still
unimplemented; scroll artifacts are upstream).
- justfile: new `test-sixel-tmux' recipe wraps `test-sixel-image' in
`tmux new-session' for one-command interactive verification, and
the sibling `test-sixel-image' recipe was switched from a fragile
shell conditional to an elisp `when' so passing an encoder argument
no longer breaks the parse.
Refs #2.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
After rebasing onto master (which now carries the justfile from #8),
add recipes for the new configurable encoder + timeout work:
- `sixel-encoder' prints what `kitty-gfx--sixel-resolve-encoder' picks.
- `sixel-encode [ENCODER]' encodes tests/test-image.png headlessly and
reports payload size; pass an encoder name to force a specific binary
(e.g. `just sixel-encode img2sixel').
- `sixel-timeout-test' verifies the watchdog kills a `sleep 60' fake
encoder within `kitty-gfx-sixel-encoder-timeout' seconds.
- `test-sixel-image [ENCODER]' opens tests/test-image.png in Emacs with
the Sixel backend forced, for manual rendering checks in foot/Konsole/
mintty/mlterm/WezTerm.
|
|
|
Mirrors the existing LaTeX fragment integration but uses the `typst`
CLI to compile `$...$' math fragments into PNGs that are then displayed
inline through the existing kitty-graphics overlay pipeline.
- New section in kitty-graphics.el: customs (typst-command, ppi,
text-size, preamble), SHA-1 cached PNGs under /tmp/kitty-gfx-typst,
Emacs face-foreground -> typst rgb() hex conversion.
- Two autoloaded commands: `kitty-gfx-typst-preview' and
`kitty-gfx-typst-clear-preview', region-aware.
- Regex skips backslash-escaped dollars (\\$not math\\$).
- justfile with recipes: compile/lint/load + per-feature test-* and
headless typst-render / typst-show.
- tests/test-typst.typ fixture with inline, display, mixed and
edge-case fragments.
- AGENTS.md updated: test instructions, dependency note, issue marked
done.
Closes #7. Parent #5.
|