kitty @ supports a new-window command, which can open new split windows and new tabs, but as far as I can tell cannot open new native system windows.
This unfortunately means that kitty @ doesn't completely replicate the functionality of the --single-instance flag, so both features must be used in tandem.
Additionally, invoking kitty with --single-instance does not return the new window's ID, so it currently isn't even possible to - for example - spawn a new system window and then send some text to it. Something like this really ought to work:
kit() { kitty @ --to $MYKITTYSOCKET "$@" }
wid=$(kit new-window --top-level)
echo 'ls -la' | kit send-text --stdin -m id:$wid
(On a related note, I think kitty @ should be able to read the socket to use from an environment variable, to avoid the need for that kit helper function!)
kitty @supports anew-windowcommand, which can open new split windows and new tabs, but as far as I can tell cannot open new native system windows.This unfortunately means that
kitty @doesn't completely replicate the functionality of the--single-instanceflag, so both features must be used in tandem.Additionally, invoking kitty with
--single-instancedoes not return the new window's ID, so it currently isn't even possible to - for example - spawn a new system window and then send some text to it. Something like this really ought to work:(On a related note, I think
kitty @should be able to read the socket to use from an environment variable, to avoid the need for thatkithelper function!)