It's an over-the-top animation of a terminal cursor moving from position to position, helps notice where it moved to. I thought it'll be something about mouse cursor animations. I could see myself using this if a) I was using more TUI apps and b) it'd be toned down quite a bit.
The fire is perfect for the demo, and for screencasts maybe.
throwanem · 5h ago
Strong second.
echelon · 9h ago
I never knew this was a thing.
This is so fucking cool. I'm going to add this right away.
tombh · 9h ago
The home page has GIFs of both a simpler smear-fade cursor and a wilder manga-slash cursor https://tattoy.sh
Rendello · 9h ago
Reminds me of the old Compiz plugin that would make your windows burst into flames on closing.
andrepd · 9h ago
Compiz effects was truly the killer feature for Linux for 12 year old me :)
Rendello · 2h ago
14 year-old me set up Linux Mint with this LSD Conky display for my grandmother. I said something like "Well technically it's LSD but it looks cool so don't worry about it".
Looks very nice and fun, and potentially very useful. I was going to say I'd prefer a gradient effect to emulate motion blur, but stepping through the video I see you've already implemented something like that.
However, when making large moves, it seems a bit disorienting and the gradient effect seems very subtle in the video. Perhaps make the effect depend on distance, like actual motion blur would?
I was also thinking about having a color shift when moving up vs moving down, not sure about that one but certainly something I'd play with.
kingforaday · 8h ago
I applaud this effort and think it is amazing graphically for a tty, but serious question: does anyone use this as their daily driver?
tombh · 8h ago
I'm the creator of Tattoy, so thanks. A significant part of the motivation for the project is that it's fun, like a "toy", as the name suggests. I do use it everyday, but only for one serious usecase, to allow my Twitch chatters to visually interact with my terminal by sending emotes to it. I'm not personally into the animated cursors, they were just easy to implement because I'd already built out support for Ghostty's background shaders.
But, if you want a truly serious usecase, then my pipe dream is that Tattoy becomes the "XWayland" for an entirely new protocol for terminals that explores moving on from ANSI codes, the terminfo database and so on. I wrote a blog post about this idea: https://tattoy.sh/news/an-end-to-terminal-ansi-codes
VTimofeenko · 3h ago
As in the cursor trailing to new position? I use it, albeit on a different emulator.
Greatly helps when demoing something from my terminal and having multiple splits open.
I assumed this meant mouse cursors, so I was confused why the pointer didn’t move in the same video. Would have been better just to turn it off for the recording.
ionwake · 8h ago
I installed it with homebrew but I dont see this shader tracer, I even see the blue pixel top right. Ive read the docs but it doesnt seem to explain if I need to do anything further which means it must be my already customised iterm which is the issue. Ill see if I can sort it.
tombh · 8h ago
The creator here, sounds like I need to improve the docs. Did you set `enabled = true` in the `[animated_cursors]` section of the config? If so, then this could be bug, and I'd be very grateful for a report in the repo's issues: https://github.com/tattoy-org/tattoy
Vlasar · 57m ago
Sorry if I’m missing something, but isn’t the homebrew version outdated?
ionwake · 8h ago
tbh im not sure what Im doing wrong, I already have a highly customised iterm window and have spent a hour with chatgpt trying to troubleshoot this to no avail... must just be my setup for some reason. I will let you know if I figure it out - thanks
isoprophlex · 10h ago
Barely useable, pfff. Needs at least two out of three of
- airhorn and/or light saber sound effects,
- a sixel-based rendering of lens flares, or
- a fluid dynamics engine to simulate rippling of characters around the path along which the cursor moves
(Joke, looks very cool even though i'd probably find it too distracting)
Nevermark · 10h ago
> - airhorn and/or light saber sound effects,
I will take the light saber sounds.
With stereo-spacial transformation, so the sounds "direction" and "distance" match my own physical dynamic orientation relative to the cursor's motion on the screen.
And, the ability to open a small window, which gives me the cursor's visual point-of-view, as it zooms through the graphics on the screen.
Also, each traversed character should get "hot" as the curser goes over it, indicated with a stable glow for a quarter of a second, followed by an exponential fade over another second.
I think we can all agree that when in flow, functional distractions need to work harder, be more immersive, to be effective.
iTerm2 has a basic animated cursor that I like, just a frame or two long, and fairly subtle. It would be nice if it expanded to support this type of animation, I do wish it were a bit more visible (though not, perhaps, the EDM show presented)
renewiltord · 10h ago
This is pretty cool. Helps trace where the cursor is going. I prefer the Ghostty style now that I see it, but nonetheless cool UI feature.
getflourish · 8h ago
Inspiring. So cool, yet useful.
o11c · 8h ago
Honestly, just `:set cursorcolumn` is far more useful. Less distractions at the moment of change, but still visible if you alt-tab back.
It's an over-the-top animation of a terminal cursor moving from position to position, helps notice where it moved to. I thought it'll be something about mouse cursor animations. I could see myself using this if a) I was using more TUI apps and b) it'd be toned down quite a bit.
https://neovide.dev/features.html#animated-cursor
I wish more terminals implemented something similar.
This is so fucking cool. I'm going to add this right away.
https://github.com/matmutant/LSD-Conky
However, when making large moves, it seems a bit disorienting and the gradient effect seems very subtle in the video. Perhaps make the effect depend on distance, like actual motion blur would?
I was also thinking about having a color shift when moving up vs moving down, not sure about that one but certainly something I'd play with.
But, if you want a truly serious usecase, then my pipe dream is that Tattoy becomes the "XWayland" for an entirely new protocol for terminals that explores moving on from ANSI codes, the terminfo database and so on. I wrote a blog post about this idea: https://tattoy.sh/news/an-end-to-terminal-ansi-codes
Greatly helps when demoing something from my terminal and having multiple splits open.
I wasn't able to get this working. MacOS, homebrew, added [animated_cursor] to the tattoy.toml and the glsl file.
I'd very much appreciate a bug report. It looks like maybe Tattoy isn't connecting to the GPU on Mac: https://github.com/tattoy-org/tattoy/issues/129
- airhorn and/or light saber sound effects,
- a sixel-based rendering of lens flares, or
- a fluid dynamics engine to simulate rippling of characters around the path along which the cursor moves
(Joke, looks very cool even though i'd probably find it too distracting)
I will take the light saber sounds.
With stereo-spacial transformation, so the sounds "direction" and "distance" match my own physical dynamic orientation relative to the cursor's motion on the screen.
And, the ability to open a small window, which gives me the cursor's visual point-of-view, as it zooms through the graphics on the screen.
Also, each traversed character should get "hot" as the curser goes over it, indicated with a stable glow for a quarter of a second, followed by an exponential fade over another second.
I think we can all agree that when in flow, functional distractions need to work harder, be more immersive, to be effective.
https://ash-k.itch.io/textreme