Hello! I picked up the patch from Jochen Sprickerhof <suckl...@jochen.sprickerhof.de> that was posted on hack...@suckless.org a few years ago, allowing you to embed applications into st via Xembed. So this is the _host_ side of Xembed, very similar to what tabbed does. The thing is, you do not always want to open apps in new tabs - I personally do not use tabbed at all - but you just want it to cover your terminal window, so it behaves more like a fullscreen terminal application and does not spawn a new X11 window that may ruin your tiling layout etc.
Check out to the last 3 patches on this branch: https://github.com/rhaberkorn/st/commits/patches/ (The others are really just patches I personally use for customization.) This has been tested with SciTECO (https://github.com/rhaberkorn/sciteco), nsxiv and mpv (--wid). Zathura unfortunately does not work flawlessly. It does not refresh its window once embedded. And neither does Zathura work with tabbed. Also, st windows tend to freeze after resizing them a bit (but only while a client is embedded). I am not very experienced in Xlib programming, so perhaps somebody else could have a look. Somebody who knows tabbed better than I do. Another issue is that once an embedded app terminates, I try to remove the icon from the st window. xprop confirms that this works. But at least Awesome WM does not respect this change and continues to display the old icon. I suspect this is an Awesome WM bug. Perhaps somebody could test with another WM. I like this feature so much, I also looked into whether it would be possible to somehow hack Gtk (e.g. using LD_PRELOAD) so you can embed most Gtk applications - after all they provide GtkPlug and it also derives from GtkWindow. Unfortunately, this would not be trivial. It might be easier to patch Gtk itself. All of this should perhaps eventually be part of the Wiki once we fixed the remaining problems. Best regards, Robin