With the [new release of Acire just out](https://archivedblog.jonobacon.com/2010/02/26/acire-0-3-released/) I wanted to tell you folks a fun little story of an added benefit to Acire that I never envisaged when I came up with the idea for the app.
Yesterday I got an email from someone (I will keep the identify private) saying:
> I’m trying to create an application but I can’t seem to find any way to embed a gnome-terminal into my app. I know you’re not offering support 🙂 but if you have some spare time is there any chance you can point me to the documentation for that?
This happens a lot: someone wants to do something, so they ask for help over email or on another medium such as IRC. Unfortunately, I am usually pretty busy and typically don’t have the time to answer support questions. Before Acire existed I would have at most hunted out some links or possibly just the person to to go and ask on a particular forum or mailing list.
Now Acire exists, I just fired it up, selected *Python VTE* from the cateogries combo box, clicked on the snippet, and then cut and pasted the code into the email:
#!/usr/bin/env python
# [SNIPPET_NAME: Embed a VTE terminal]
# [SNIPPET_CATEGORIES: Python VTE]
# [SNIPPET_DESCRIPTION: Embed a VTE terminal in your application]
try:
import gtk
except:
print >> sys.stderr, “You need to install the python gtk bindings”
sys.exit(1)
# import vte
try:
import vte
except:
error = gtk.MessageDialog (None, gtk.DIALOG_MODAL, gtk.MESSAGE_ERROR, gtk.BUTTONS_OK,
‘You need to install python bindings for libvte’)
error.run()
sys.exit (1)
if __name__ == ‘__main__’:
# create the terminal
v = vte.Terminal()
v.connect (“child-exited”, lambda term: gtk.main_quit())
# fork_command() will run a command, in this case it shows a prompt
v.fork_command()
# create a window and add the VTE
window = gtk.Window()
window.add(v)
window.connect(‘delete-event’, lambda window, event: gtk.main_quit())
# you need to show the VTE
window.show_all()
# Finally, run the application
gtk.main()
Job done. What made me smile about this was that Acire not only helps me, but it helped me help someone else too. Rocking. 🙂