Re: [E-devel] [Terminology] Cooperative tiling between Terminology and hosted programs
Cedric Bail <[email protected]> Mon, 06 Feb 2023 16:54:11 +0000
| Newsgroups | gmane.comp.window-managers.enlightenment.devel |
|---|---|
| Message-ID | <eUJ7VzLZ4E9TlsuPRTIbxPFuk3E_ZU6gsDF-KaHo6VrrZyKAsIFVxcbZzfGWZoaVrRJdIQCVN8r1FrJFlvHXdrvizKAmoR_CgxpY4L9fWgA=@ddlm.me> |
On Thursday, February 2nd, 2023 at 2:44 PM, Boris Faure <[email protected]> wrote: > On 23-01-29 05:53, VinÃcius dos Santos Oliveira wrote: > > in my mind, Terminology tries to push the boundaries of what's possible > > with terminal emulators forward. For instance, it has support for embedding > > videos and images through custom escape sequences. It obviously expects > > programs will make use of the new Terminology features. > > > > It just occurred to me that programas could cooperate with Terminology to > > make their own custom tiling. For instance, Emacs has the eshell mode where > > Emacs acts as its own terminal emulator taking care of interpreting ANSI > > escape sequences and tiling the embedded terminal in its own window all by > > itself. > > > > What if Terminology exposed an env var such as > > TERMINOLOGY_SOCK=$XDG_RUNTIME_DIR/sock-1234.sock with a path for a UNIX > > socket so the program (such as Emacs) could open it to cooperate with > > Terminology? Emacs could open a new pty, spawn the embedded shell, and send > > a fd to the master end of the new pty back to Terminology. The message > > should include the position in the screen for the new embedded terminal. > > Now Terminology would only read from the master end so it can draw the > > contents of the embedded terminal appropriately in the new tile of the > > terminal window. Emacs would still get all the input as usual and only send > > input to the new terminal as it pleases (by writing in the master end of > > the pty). > > > > So, Terminology already decodes ANSI escape sequences and performs tiling > > of terminal windows. The idea is to let applications reuse this > > implementation to allow further embedding other interactive programs in > > their own windows. > > > > Thoughts? > > That's some interesting thoughts. Terminology already has some custom > escape codes. I would go that way to have interaction with an external > program. There's no escape codes to handle the tiling, since those > could also be used to DDOS terminology, but that's something could be > thought about. I like silly idea in my terminal :-) Maybe a first step is to allow running application in terminology. It would be possible using Wayland and Efl.Canvas.Wl to embedded one application. I wonder if it would be possible to have the terminal provide a WL_DISPLAY on a request so we can embedded an application? https://git.enlightenment.org/enlightenment/efl/src/branch/master/src/lib/efl_canvas_wl Have fun! Cedric _______________________________________________ enlightenment-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
publickey - [email protected] - 0x1869A77F.asc
(application/pgp-keys, 3 KB)
-----BEGIN PGP PUBLIC KEY BLOCK----- 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 euetbYKKxbVhw2klVROuJm9I =ydAQ -----END PGP PUBLIC KEY BLOCK-----
signature.asc
(application/pgp-signature, 855 B)
-----BEGIN PGP SIGNATURE----- Version: ProtonMail wsFzBAEBCAAnBQJj4TCfCRC+I8YOYhaWuhYhBBhpp3+bejvW8BDj+L4jxg5i Fpa6AAAYIQ/+KJ0awRlBG7Qc/BRiv893sc2tH1jU1lX2cqGtFnk1umUq+3BU cMqXi+yruwRg4+6Wmlp4UZhIwtWR1Z7UMngJGU/1ezoG5WBX92944mVFaOig Vn23LaD63Ey9eJA2WFX5LzfNQugfgL6KL1okDk+jMQjR3NdS3/yWw4BDkhXB Pp/5aDSVJ18NOg+M+Shj8iZttCmB9dca/WAzJkaSLStTA+TMVQPJA4bTwTkY I+wzvpNOYX7iPtLrnofd39TehYerJWLn422SNuuILJBa0ay1F0PwvzgsRQd8 rGxf+FcLqmyAgrmuHaB0cR1Tonk+7YjZhzSHqJAusyRp1IaId+QcsxCs4HmO 4Y8I46furbrd2udgbbee8IPL4Rz/2ohdx1CA7/OUHhJ+52cTnlqw+wZZYuEM a51X9diFp/2NTCYLvBKg6KWIcp4g/XMn2jU6Vj7iUh0PCm9rpqh58yypzTZC vNFkbyf3qftORLYrNAKZ9Ar1zR4aV2vaGF9iakoyYZIVS0mLAI8u91jBzhey kA7n39LL4f7hG31nK5q2uad7xA5564xwRJb1VV4rrZAfmThBkQUroCYp+ACm mTYc2TZ106RB/7LjQU/uIjMw31YvvzVJeIYLozOcwoDzzenlHtAKyS6s4FLy lFviFoZPB48cTM/QNk9XHbsW8F6dBX6H12I= =UR+D -----END PGP SIGNATURE-----