Spriteful TErminal GrAphics Protocol: Difference between revisions

No edit summary
Line 31: Line 31:


Want to indicate:
Want to indicate:
* Command (load, delete, move)
* Identifier
* Whether our graphic is entirely opaque (ala Sixel's <tt>P2=0</tt>); this can facilitate powerful optimizations in some terminals
* Whether our graphic is entirely opaque (ala Sixel's <tt>P2=0</tt>); this can facilitate powerful optimizations in some terminals
* (maybe) Geometry, x and y in pixels
* (maybe) Geometry, x and y in pixels
Line 38: Line 41:


'''FIXME extensions?'''
'''FIXME extensions?'''
===Deletes===
Erases the specified graphic, making visible any content which it had obscured.
<i>Parameters: identifier</i>
===Moves===
A move erases the graphic from its current location (see [[#Deletes]], above), and draws it at the current cursor position (as modified by the origin offset), as described in [[#Graphic placement|Placement]], below, subject to the <i>current</i> direction of text (not the direction when originally drawn). If the identifier does not exist, no action is performed.
<i>Parameters: identifier, origin offset, scrolling</i>.


==Data formats==
==Data formats==
Line 128: Line 141:
===Coexistence with other graphics protocols===
===Coexistence with other graphics protocols===
'''FIXME'''
'''FIXME'''
==Rejected elements==
* There is no native expression of palette-indexed color, nor HSV (Sixel)
* There is no filesystem-based data exchange (Kitty, iTerm)
*