What about using `io.popen`? You can popen any shell and develop a widget
for awesome which can be placed there, any keyboard interaction need to be
send throught the popen pipe, and any shell output can be read in the same
way (if you need it). I'm not an expert in awesome, in Lua the problem of
this approach is the lack of threads, so listening to popen would block the
entire main thread, but you can use coroutines to avoid this issue.
However, I think that awesome has solved in some way the thread problem,
because any windows manager needs to deal with threads. Am I correct?

Pako ZM :)
http://pakozm.hol.es

2015-01-29 19:58 GMT+01:00 Elv1313 . <[email protected]>:

> Hello,
>
> I do this on my own dev tag ( http://i.imgur.com/6asgxZ0.png ), but
> the implementation is quite different. Instead of native awesome
> widgets, I use urxvtc instances. But there is a twist, the Tyrannical
> ( https://github.com/Elv13/tyrannical ) Awesome extension "upgrade"
> awful.util.spawn to also take some parameters. So you can do
> awful.util.spawn("urxvtc -e 'someScript.sh' -cd '/path/to/folder'",
> {slave=true, tag = myDevTag, no_autofocus=true}). Please note that
> urxvt have to be compiled with startup-notification support (by
> default on most distribution but Gentoo) for this to work.
>
> Technical:
> As for running interactive shell in a textbox, it is not "impossible",
> but definitely very, very hard to implement. You are probably better
> to run a real X application and force it into that position rather
> than trying to implement full VT220 support in Lua. Technically,
> libvte (the base of the Gnome and XFCE terminal) support GObject
> introspection, so you could create a "pure" lua vte based terminal
> implementation (with some GTK+ glue code), spawn it and grab it back
> using some lua hacks. It could work, but then again, it is probably
> not a very good solution. Most solutions use an external terminal
> (such as urxvt) and position it using Lua code in rc.lua, this is
> probably the best thing to do anyway.
>
> On 29 January 2015 at 18:31, Alfredo Palhares <[email protected]>
> wrote:
> >> Hi, just started with Awesome 3.4.13-1 ( in Debian ), and Lua. I've put
> a
> >> text widget text box on my system-bar next to 'mytextclock'. How can I
> run
> >> an interactive shell (bash) in this textbox? I would like to keep the
> shell
> >> one line in height. Any thoughts appreciated - thanks, Alex.
> >
> > I would like to do this too.
> >
> > I usually have my "dev" tag with 3 terminals in a certain alignment. I
> > would like to when I switch to that a popup term would appear to switch
> > to the project directory.
> >
> > This would spawn 3 urxts on that dir.
> >
> > --
> > Regards,
> > Alfredo Palhares
> >
> > --
> > To unsubscribe, send mail to [email protected].
>
> --
> To unsubscribe, send mail to [email protected].
>

Reply via email to