La mayor comunidad de Debian en español

3D Desktop en IceWM


Imagen de diskoppix

By diskoppix- Publicado01 Febrero 2007

INTRODUCCIÓN

3D Desktop es un programa OpenGL que te permite cambiar de escritorio virtual de una manera tridimensional,(debemos tener aceleración 3D) "alejándolos" y mostrándolos en 3 dimensiones para que,mediante el ratón o el teclado,te desplaces y seleciones uno de ellos.Por defecto lo hace en modo carrusel,aunque se pueden seleccionar otros.

El paquete para Debian se llama 3ddesktop y ocupa tan solo 75 KB, y pese a que,según leo en la descripción de APT, es un devorador de memoria y CPU,yo no he notado consumos desproporcionados y como que tampoco vamos a estar,dale que te pego,cambiando de escritorio continuamente,por el placer de verlo en acción.

El desplazamiento se realiza con las teclas direccionales y numéricas del teclado y mediante la rueda y los botones dcho. e izdo. del ratón.Para seleccionar uno de los escritorios se emplean las teclas «Enter», «Espacio» y «Escape» o bien el botón central del ratón.

PÁGINA MAN


                                                                              
 Sintaxis:      3ddesk [opciones]                                             
                                         
                                     
 En teoría,antes hay que iniciar el demonio ejecutando: «3ddeskd»,            
 pero en caso de no hacerlo se intenta iniciar automáticamente.               
                                                                              
 Opciones                                                                     
                                                                              
 --acquire[=N]                                                                 
     Inicia el demonio y adquiere una imagen de cada uno de los escritorios. 
     Opcionalmente podemos indicarle que espere N milisegundos para la cap-  
     tura.                                                                   
 --view=xxx                                                                   
      Usa los modos de visualización especificados en el fichero de configu-  
      ración «3ddesktop.conf»                                                 
 --mode=xxx                                                                   
      Selecionamos el modo de visualización.Los modos disponibles son:        
      carousel,cylinder,linear,viewmaster,priceisright,flip y random          
 --nozoom                                                                     
      Desactiva el alejamiento visual.                                        
 --changespeed N                                                              
      Cambiamos la velocidad de rotación y deslizamiento,por defecto 40.      
      Los valores| son entre 1 y 300.                                         
 --zoomspeed N                                                                
      Cambiamos la velocidad del alejamiento,por defecto 45.Los valores son   
      entre 1 y 300.                                                          
 --gotoright                                                                  
      Nos desplazamos al de la derecha.                                       
 --gotoleft                                                                   
      Nos desplazamos al de la izquierda                                      
 --gotoup                                                                     
      Nos desplazamos al superior                                             
 --gotodown                                                                   
      Nos desplazamos inferior                                                
--stop                                                                        
      Para el deemonio 3ddeskd                                                
--reload                                                                      
      Reinicia (útil para cuando se ha editado el fichero de configuración)   
--altmousebuttons                                                             
      Permite usar los botones dcho. e izqdo. para seleccionar un escritorio. 

JUNTO A ICEWM

Lo que hace interesante a esta aplicación,es que se puede manejar desde la línea comandos,de manera que podemos asociar una o varias teclas a un comando,para mayor comodidad a la hora de cambiar o mostrar los escritorios.La manera de hacerlo dependerá del gestor de ventanas que usemos,y en última instancia podemos instalar el programa xbindkeys que permite asociar teclas o botones del ratón con un comando.

En el caso de IceWm,que es el que yo uso,es tan fácil como editar su fichero keys:


 # key  "tecla/s"         comando                                     
                                                                      
  key  "Ctrl+Alt+Down"   3ddesk --mode=linear --nozoom --gotodown     
  key  "Ctrl+Alt+Up"     3ddesk --mode=linear --nozoom --gotoup       
  key  "Ctrl+Alt+Right"  3ddesk --mode=linear --nozoom --gotoright    
  key  "Ctrl+Alt+Left"   3ddesk --mode=linear --nozoom --gotoleft     

La elección de las teclas no ha sido hecha al azar.Los que usamos IceWM estamos familiarizados con estas combinaciones de teclas para cambiar entre escritorios.En realidad lo que usamos,al menos en mi caso,es la combinación «Super_L+teclas direccionales».Siendo «Superl_L» el nombre de la tecla de windows según marca la salida de «xev» (paquete xbase-clients).El soporte para esa tecla se indica en las siguientes líneas del fichero «~/.icewm/preferences» de IceWM:


#  Soporte para la tecla win                                          
#  La derecha (keycode 115,keysym  Super_L) muestra el menú           
#  La izquierda (keycode 116 ,keysym Super_R )la lista de ventanas.   
   Win95Keys=1                                                        
                                                                      
#  Hace que la tecla win sea igual a Ctrl+Alt                         
   ModSuperIsCtrlAlt=1                                                

Pero para que lo anterior funcione y sea 3ddesktop el que controle esas combinaciones de teclas y no el propio gestor de ventanas,antes hay dejar en blanco las siguientes líneas del fichero «preferences»


#  Pasar al  escritorio anterior                                      
  KeySysWorkspacePrev=""                                              
                                                                      
#  Pasar al siguiente escritorio                                      
   KeySysWorkspaceNext=""                                             
                                                                      
#  Nos vamos y/o volvemos del último escritorio                       
   KeySysWorkspaceLast=""                                             

Aparte de que tampoco es buena idea usar otro paginador de escritorios junto a 3ddesktop.Imaginad que usáis el de vuestro gestor para ir a un escritorio y una vez allí os da por abrir una ventana cualquiera,para a continuación cambiar a otro distinto,y acto seguido volver al anterior usando 3ddesktop.
Según el tiempo que haya durado esa operación,es posible que no os muestre la última ventana abierta.

El demonio realiza periódicamente y en segundo plano,capturas de pantalla de los escritorios en curso,por eso es una buena idea pasarle desde un principio la opción «--acquire»,en caso contrario sólo realizará una captura del escritorio inicial,de tal manera que los otros escritorios se mostrarán,pero sólo tras haber estado en
ellos.

El periodo de tiempo (en segundos) entre capturas puede ser especificado en su fichero de configuración mediante el parámetro «autoacquire»,aunque no es conveniente abusar del mismo.

En cualquier caso,si usamos únicamente 3ddesktop para navegar entre los distintos escritorios nunca tendremos problemas de desactualización entre las imágenes que ofrece y las de los escritorios.

Para evitarnos la molestia de tener que lanzar el demonio cada vez que iniciamos sesión,podemos hacer que arranque junto a ella.Los que usamos IceWM tenemos un par de ficheros para estos menesteres.Se trata de «~/.xsession», si entramos desde las X y «~/.xinitrc»,cuando lo hacemos desde una shell.

Para ello basta con agregar la siguiente línea a las que ya tengamos:

 ./.3ddesk &                                                          

haciendo que se ejecute ese pequeño script que hemos creado para la ocasión.Lo único que hay que tener en cuenta para la creación del script,es que el demonio debe ejecutarse estando IceWM en marcha,de manera que le he dado 3 segundos de retraso antes de que se ejecute:


 #!/bin/sh                           
                                     
 sleep 3s ; 3ddesk --acquire        

Al haber incluído la opción «--acquire» notaremos que hace un barrido por todos los escritorioshasta volver al de inicio.Es una pequeña molestia que apenas dura un par de segundos,mitigada además por el hecho de encontrarnos al inicio de sesión.

FICHERO DE CONFIGURACIÓN

El fichero de configuración se encuentra en «/etc/3ddesktop/3ddesktop.conf»,aunque podemos crearnos uno
propio en nuestro home,en el directorio «~/.3ddesktop/»

Se divide en dos partes,una con opciones generales y otra con opciones que se pasan a los distintos modos de visualización recogidos en el fichero y que se podían seleccionar desde la línea de comandos con la opción «--view».Podemos usar esas opciones para modificar o crearnos nuestros propios modos,que una vez selecionados,tendrán preferencia sobre cualquier otro comando.

Entre las opciones que se pueden añadir a estos modos predefinidos en el fichero de configuración tenemos,junto a otras,las mismas que se usaban en la línea de comandos.

# mode ------------- Puede tomar los mismos valores que se indican en la página de man.
#                    carousel: giran en un plano horizontal(usado por defecto).
#                    cylinder: giran en un plano horizontal y sin espacios de separación.
#                    linear:van desfilando horizontalmente.
#                    viewmaster:giran imitándo unas aspas de molino.
#                    priceisright:giran en un plano vertical.
#                    flip:una sola lámina girando en un plano horizontal o en diagonal.
#
# show_digit ------- Muestra el dígito o nmero de escritorio en el que nos encontramos.
# digit_size ------- Anchura (en pixeles)del dígito.
# digit_color ------ Color del dígito a elegir entre:
#                    red,green,blue,lightblue,white,gray,purple y yellow
# zoom ------------- Los valores posibles son on (el usado por defecto) y off.
# changespeed ------ Velocidad de rotación y deslizamiento.
# depth ------------ Velocidad del alejamiento.
# zoomspeed -------- Velocidad del zoom (acercamiento y alejamiento)
# gotoright -------- Nos vamos al escritorio de la derecha.
# gotoleft --------- Nos vamos al escritorio de la izquierda.
# gotoup ----------- Nos vamos al escritorio superior.
# gotodown --------- Nos vamos al escritorio inferior.
# randdelay -------- Pausa entre los cambios de modo aleatorios (random)
# linear_spacing  -- Espacio entre los escritorios cuando usamos el modo linear
# alt_mousebuttons - Los valores posibles son false y true.
# use_wireframe ---- Los valores posibles son false y true (true por defecto).

La sintaxis de un «view» es como sigue:


 view      nombre del modo                                            
 opción1   valor1                                                     
 opción2   valor2                                                     
 opción3   valor3                                                     
 ...                                                                  

De modo que para crear uno,podríamos poner lo siguiente:


 view              miview                                               
 mode              linear                                              
 zoom              off                                                
 show_digit        on                                                 
 digit_size        100                                                
 digit_color       red                                                
 alt_mousebuttons  true                                               

Y para utilizarlo tendremos que llamarlo con el comando:

 3ddesk --view=miview                                                

Si bien se puede hacer más fácil,convirtiéndolo en el usado por defecto,para lo cual tendríamos que cambiar donde pone «miview» por «default» y para llamarlo
bastaría con:


 3ddesk                                                               

Las opciones generales afectan al comportamiento del demonio o servidor,la pantalla,etc.Entre ellas se encuentran las siguientes:

# wm --------------- Indicamos el gestor de ventanas usado
# texturesize ------ Establece la resolución (128, 256, 512, 1024)
# compression  ----- Habilita la compresión de textura.
# autoacquire  
# Establece el número de segundos entre las capturas del servidor (zero deshabilita)
#
# disable_keys_in_goto 
# Al usar «goto»,selecciona de forma automática el escritorio de destino.
# Valores  posibles son false y true (usado por defecto)
#
# priority --------- Establece la prioridad del servidor (12 por defecto)
#
# default_background 
# Imagen para mostrar de fondo (en formato BMP)
#
# default_background_texturesize
# Resolución de la imagen de fondo.(128, 256, 512, 1024)
#
# screen_width ----- Anchura de la pantalla
# screen_height ---- Altura de la pantalla
#
# keybinding_{left|right|up|down|select}    
# Asocia una tecla a las siguientes acciones: dcha.,izda.,arriba,abajo,selección
#
# mousebinding_{left|right|up|down|select} 
# Asocia una botón de ratón a las acciones: dcha.,izda.,arriba,abajo,selección

Tras editar el fichero,hay que decirle al programa que lo refresque mediante la opción «--reload»


 3ddesk --reload                                                      
                                                                      

Y en el caso de que no se diera por enterado,el empleo de la opción «--stop» y un nuevo arranque corregirían el problema.


 3ddesk--stop                                                         
                                                                      
 3ddesk                                                               

Por último,os dejo unas capturas de pantalla de mi IceWM,en la que se puede ver una formación de cinco escritorios en modo carrusel.Yo suelo emplear tres,pero para la ocasión le he añadido
un par más.

3D Desktop 1

3D Desktop 2

3D Desktop 3


Autor:Francisco Javier Hurtado (diskoppix)
Esta obra está bajo una
licencia de Creative Commons

Puedes copiar,distribuir,comunicar públicamente la obra y hacer obras derivadas.
Bajo las siguientes condiciones:
-Reconocimiento -Compartir bajo la misma licencia 2.5 de Creative Commons.