sábado, 10 de marzo de 2012

Crear un terminal simple y ligero con Ruby-Gtk2.

En este pequeño tutorial que inicia nuestra prometida serie de tutoriales de programación en Ruby. Crearemos una Terminal para uso con cualquier ambiente de escritorio que es ligera y simple, requiere la biblioteca libvte, gtk+-2.0 (>=2.22). Puedes consultar la documentación completa de Ruby-Gnome2 en el sitio oficial.

El terminal corriendo bajo XFCE-4.8 


Instalar o verificar gemas

Antes de comenzar este código debemos revisar si contamos con las gemas adecuadas para que nuestra terminal se ejecute.
Los comandos de instalación de gemas deben ser ejecutados como root.
Nota: si no tienes terminal aún entonces puedes utilizar <ALT>+<F1> u otro terminal del sistema.

Utilizando el comando:

gem list

podemos verificar que tenemos gtk2 y sus requerimientos asi como vte, ambas gemas instaladas.

Si las gemas mencionadas no aparecen hay que agregarlas de esta forma:

gem install gtk2
gem install vte

ambos comandos tardarán de acuerdo a nuestra máquina y distribución base, mientras descargan y/o compilan.
Si tu distribución cuenta con soporte de paquetes (RPM/deb) utiliza el instalador y agrega algo como:

RPM: Fedora, CentOS
yum install rubygems-vte

DEB: Debian, Ubuntu
apt-get install rubygems vte

Crear la terminal con Ruby-Gtk

Después del paso anterior abre tu editor favorito y simplemente copia el siguiente código:

#!/usr/bin/ruby
require 'vte'
w = Gtk::Window.new
t = Vte::Terminal.new
w.set_title "Ruby Terminal"
w.signal_connect("destroy") do
  Gtk.main_quit
end
t.signal_connect("child-exited") do
  Gtk.main_quit
end
w.add t
w.show_all
t.fork_command("/bin/bash")
Gtk.main

guardalo con el nombre term.rb (u otro similar).

Utilizar tu nueva terminal

Para usar tu terminal puedes hacer lo siguiente:
- agregarle el permiso de ejecución
chmod +x term.rb
- agregarla como tu aplicación favorita de terminal, mediante el menú correspondiente
- utilizar la opción "Ejecutar aplicación" de tu menú
- o de plano abrir otra terminal de tu preferencia, entrar al directorio donde guardaste el archivo term.rb y utilizar:
ruby term.rb (si no cambiaste el modo a ejecutable)
./term.rb (si agregaste el bit de ejecución)

La terminal es muy sencilla pero muy ligera, se puede utilizar como default en un ambiente xfce4.8, ni siquiera agregue xfce4-terminal y tengo acceso a la línea de comandos. Puedes hacer scroll hacia arriba y abajo a pesar de que las barras no se ven.
Más adelante agregaré el código de un visualizador de imágenes muy sencillo, creado también utilizando Ruby-Gtk2

Bye bye

No hay comentarios:

Publicar un comentario