Comments (8)
Where do I find the terminal to test ? https://search.nixos.org/packages?channel=unstable&query=ghostty does not yield anything
from timg.
Where do I find the terminal to test ? search.nixos.org/packages?channel=unstable&query=ghostty does not yield anything
It is currently in closed beta, but you can ask @mitchellh for an invite.
But I can test for you if you'd like, does timg not check env vars for this anyway?
from timg.
Usually, timg uses a terminal query directly, the equivalent of doing the following in the shell:
echo -e "\033[>q"
Environment variables are typically avoided and only used as fallback in some cases for terminals that don't provide that query.
from timg.
I haven’t looked at the source for this project and I’m typing from mobile so I apologize for anything brief or mistaken.
@RGBCube the documented way (by Kitty) to check for graphics protocol support is to query it: https://sw.kovidgoyal.net/kitty/graphics-protocol/#querying-support-and-available-transmission-mediums I assume this project probably does this but like I said I’m on mobile and haven’t checked.
It’s also very possible Ghosttys kitty graphics protocol has bugs. We have many testers using the image protocol but there’s a lot of configurability in the protocol so it’s possible some aspects are wrong.
@hzeller i am happy to give you an invite if you’re interested but I’ll also look into this myself.
from timg.
I am not using the Kitty graphical query anymore as it turns out that that messes up other terminals. So that is why timg is using the regular terminal query to figure out the name and version of a terminal (\033[>q
)- that is typically implemented by all terminals.
For testing, yes I'd be interested for an invite and to compile ghostty
myself to see.
from timg.
I am not using the Kitty graphical query anymore as it turns out that that messes up other terminals.
Yikes, which terminals? I know Terminal.app spews garbage for DCS sequences but wasn't sure what others.
So that is why timg is using the regular terminal query to figure out the name and version of a terminal (\033[>q)- that is typically implemented by all terminals.
Ah, well this is Ghostty's result (including the control characters for the response)
^[P>|ghostty 0.1.0-main+571170c5^[\⏎
For testing, yes I'd be interested for an invite and to compile ghostty myself to see.
Sent you an invite. Please feel free to join our Discord if you'd like where you can talk to me directly if you have any issues/questions: https://discord.gg/ghostty
from timg.
Alright, added detection. Ghostty now displays images automatically in Kitty format without need to specify the -pk
option.
(I was pleased that ghostty came already with all the nix flake configuration that it was a breeze to compile!)
Simple images and grid seems to work, but animations not yet, possibly due to the flipbuffer technique that timg is using.
In animations, timg creates two IDs which are then used for the even/odd images of an animation essentially for double-buffering. First image is sent with first ID, second image with second ID, third image with first ID and so on.
However it seems that ghostty
is not updating images when it comes with an already known ID, so the animation looks like it stops after the second frame.
So to fix, if the terminal gets a Kitty image with an ID it already has seen, it should update it.
Should I file and issue @mitchellh or can you take it from there ?
from timg.
Oh thanks! I'll file an issue and CC you. I'm pretty confident that we are updating the internal state but we're not updating the GPU texture due to some caching on the ID.
from timg.
Related Issues (20)
- carbonyl love?
- Images rendered blurry in fzf preview. HOT 2
- new version not have binary file HOT 7
- No package 'libdeflate' found HOT 2
- ipv4 vs. ipv6 HOT 5
- libsixel is not available on Fedora 38 HOT 2
- Image preview in `lf` HOT 1
- Detected Crash: AddressSanitizer: heap-buffer-overflow HOT 7
- missing size parameter in iterm's protocol HOT 12
- Image viewer with scrolling HOT 3
- Detected memory leaks on timg
- Cannot display certain SVG files HOT 6
- can we convert a whole video? HOT 2
- tmux passthrough for other terminals HOT 3
- Cannot read pdf in alpine container HOT 10
- Opensllde Error HOT 5
- Sixel support in foot does not get recongnized correctly HOT 8
- How about implementing [hyperlink support](https://gist.github.com/egmontkob/eb114294efbcd5adb1944c9f3cb5feda) HOT 2
- build error in termux HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from timg.