La mayor comunidad de Debian en español

Configuración de IceWM


Imagen de diskoppix

By diskoppix- Publicado24 Julio 2006

Configuración manual de IceWM

Copyright (c) 2006 Francisco Javier Hurtado Vicente.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".

Agradecimiento: A Marko Macek, autor del manual oficial de IceWM de cuyo capítulo dedicado al comportamiento de las ventanas he realizado una traducción libre con ejemplos añadidos

  1. Introducción
  2. Comportamiento del teclado
  3. Comportamiento del ratón
  4. Configuración del menú
  5. Comportamiento de las ventanas
  6. Barra de tareas
  7. Tamaños,fuentes y colores
  8. Escritorio,ventanas y transparencias
  9. Pantallazos comentados

PRÓLOGO

La creación de este manual responde a las mismas razones que me llevaron a escribir la Recopilación de Comandos GNU/Linux. Aunque existían buenos manuales en la red,entre ellos me vienen a la memoria el de Santiago Romero (el primero con el que topé) y el de Luis Lima "Macondo" (éste cuando ya dominaba IceWM) ,ninguno de ellos cubría sistemáticamente todos los aspectos de la configuración manual de IceWM,lo cual no es de extrañar dada la extrema capacidad de configuración que posee este excelente gestor de ventanas,en el que se puede modelar cualquier detalle,por mínimo que sea.De manera que me puse a la labor a manera de recordatorio para mi propio uso.

Aunque el fichero de configuración más importante de IceWM,"preferences",viene comentado,mi pésimo dominio del inglés no me ha permitido traducir todo,de hecho apenas nada.Lo que quiere decir que la traducción de la mayoría de opciones ha estado basada en el método de prueba-error.

INTRODUCCIÓN

IceWM es un gestor de ventanas para X Window cuyas principales virtudes son su ligereza,su estabilidad y su flexibilidad.Combinado con un gestor de ficheros como "Rox-Filer","Xfe","DFM","Thunar" o cualquier otro resolveremos una de las carencias del mismo como la de no disponer de iconos en el escritorio.Tampoco tiene salvapantallas propio pero basta con instalar uno como "xscreensaver" para disponer de dicho elemento.Su código fuente y los paquetes para Slackware y los RPM se pueden descargar desde su sitio web (http://www.icewm.org).Y para los que usamos Debian,nos lo podemos descargar desde los repositorios.

IceWM en realidad es una suite compuesta de varias aplicaciones, entre las que tenemos:

icewm ----------> El binario del gestor de ventanas.
icewmbg --------> La aplicacion que controla el fondo de pantalla.
icewmtray ------> Da soporte a los Docklet objects,(esos iconos/aplicaciones de escritorio)
icewm-session --> Lanza cualquiera de los componentes cuando son necesarios.

Aparte y si hemos instalado el paquete "icewm-gnome-support", tendremos también:

icewm-menu-gnome1 -> Recoge datos del menú de Gnome y se los pasa a IceWM.
icewm-menu-gnome2 -> Recoge datos del menú de Gnome2 Y KDE y se los pasa a IceWM.

La manera en que le indicamos a X Window que se inicie con IceWM puede cambiar de una distribución a otra.En la mayoría de ellas,se suelen utilizar un par de ficheros situados en el directorio home del usuario.Se trata de ~/.xsession (si entramos mediante un gestor de pantalla:xdm,kdm,gdm) y de ~/.xinitrc si entramos mediante el comando "startx".La sintaxis en ambos ficheros es la misma, sólo hay que poner el nombre del programa/s que queremos que se inicien al logearnos,seguido del signo & para que permanezcan ejecutados en segundo plano,dejando para el final al propio icewm tal que así:

#!/bin/sh
gkrellm &                # Cada vez que iniciemos una sesión,lo hará con el GKrellM        
xscreensaver &           # el salvapantallas
icewmbg &                # queremos tener un fondo de escritorio.(ver cap. dedicado al escritorio)
exec icewm               # y por último el propio gestor de ventanas.

Si en vez de arrancar mediante «icewm» ,como en el ejemplo anterior,usáramos «icewm-session», podríamos añadir un tercer shell script a los ya citados: ~/.icewm/startup, al que el binario «icewm-session» buscaría para ejecutar al inicio de sesión.

Si no existen los ficheros mencionados,se crean y se les da permisos de ejecución.

En Debian,los ficheros de configuración de IceWM (salvo que lo hayamos
compilado) se encuentran en /etc/X11/icewm,de forma que si queremos personaliar su configuración,bastará con copiarlos a ~/.icewm ,teniendo preferencia los del propio home sobre los de etc.Son los siguientes:

menu -----------> Controla el contenido del menú de inicio.
keys -----------> Permite lanzar aplicaciones con atajos de teclado.
toolbar --------> Controla los acesos directos a programas desde la barra de tareas.
winoptions -----> Controla el comportamiento de las ventanas.
theme ----------> Contiene la ruta del tema usado.Es sobreescrito cuando se elige un nuevo tema desde el menú.
preferences ----> Controla el comportamiento general de IceWM.
startup --------> shell script que es ejecutado por icewm-session al inicio.
default.theme --> En donde se indican las preferencias(colores,fuentes.fondos,etc)de los temas.Tiene prioridad sobre "preferences"
prefoverride ---> Todas las entradas que se escriban en él,tendrán prioridad sobre las de "defaul.theme".
programs -------> Genera automaticamente las entradas de los programas instalados,gracias a herramientas como wmconfig (Redhat),"menu"(Debian),etc.
icons ----------> Directorio para los iconos.          
themes ---------> Directorio para los temas.
Nota: Para instalar un nuevo tema,una vez descomprimido y copiado en themes, podemos elegirlo desde la entrada del menú o bien indicarlo en el fichero theme de la siguiente manera: Theme="nombre_del_tema/default.theme"

El fichero "menu" posee una característica que no poseen los otros y es que no necesitamos reiniciar IceWM (Alt+Ctrl+Del) para que surtan efecto los cambios introducidos en el mismo.

Realmente es muy sencillo configurar a mano los ficheros mencionados,pero si nos queremos evitar esa tarea,siempre podemos recurrir a herramientas de configuración como:

IcePref-----------------> Hoy en día abandonado el proyecto,era muy completo.
IcePref2 ---------------> El sucesor de IcePref,está integrado en IceWM Control Panel.
IceWM Control Panel ----> Muy completo,no hay detalle de la configuración que le sea ajeno.
IceWM Control Center ---> Otra herramienta muy completa.
IceWMConf --------------> Sencillo y con menos opciones que los anteriores.
IceWO ------------------> Para configuración del fichero winoptions.
IceMC,IceME,MenuMaker --> Para configuración del menú.MenuMaker no es específico para IceWM.
IDesk ------------------> Aplicación que permite iconos en el escritorio.No es específica para IceWM
adesklets --------------> Aplicación que permite desklets en el escritorio..No es específica para IceWM
Rox-Filer,Xfe,etc ------> Gestores de ficheros que nos permitirán una navegación más cómoda por el disco.
Zufall y chbg ----------> Cambian elfondo de escritorio en intervalos predefinidos
genbg ------------------> Cambian elfondo de escritorio cada vez que arranca el servidor X.

Pero como en este documento se trata el tema de la configuración manual de IceWM ,vamos a dejar todos esos programas en la recámara...(p_-)

COMPORTAMIENTO DEL TECLADO (ficheros "keys" y "preferences")

El teclado en las X-Window no suele coincidir con el del kernel (el que utilizamos en una terminal virtual).Pero podemos hacer que coincidan añadiendo XkbDisable en la sección Keyboard del fichero de configuración de X-Window ( /ect/X11/xorg.conf) o haciendo uso del programa mk_modmap capaz de convertir el mapa de teclado del kernel en un fichero usable por xmodmap.

Si durante la instalación nos equivocamos al configurar el tipo de teclado, podemos indicarle al kernel y a las X que usen el mapa de teclado español de una forma directa, mediante las herramientas loadkeys o xmodmap respectivamente. O en forma de diálogo interactivo mediante dpkg:

kernel: dpkg-reconfigure console-data

X-Window :dpkg-reconfigure xserver-xorg

Podemos configurar el teclado para que se comporte de una manera determinada.Básicamente se trataría de averiguar el keystrong de una tecla ,mediante los programas dumpkeys (también showkey) o xev ,según se trate del kernel o las X, y asociarlo a un carácter ascii/unistrong (el nombre de las teclas también se pueden ver con los mencionados programas) retocando para ello el mapa usado por el kernel ( es.kmap.gz) o haciendo uso de la aplicación xmodmap (o su gui xkeycaps) para visualizar y editar el mapa de teclado en las X-Window.Y si disponemos de un teclado multimedia se puede recurrir a hotkeys para usar las teclas extra del mismo.

Centrándonos en IceWM,el comportamiento del teclado se define en el fichero "preferences" en las entradas que se muestran a continuación :

#
# Las opciones del fichero "preferences" suelen ser 1=activado y 0=desactivado
#
# TECLA WIN # # Soporte para la tecla win # La derecha (en mi teclado:keystrong 115,de nombre Super_L) muestra el menú, # La izquierda (en mi teclado:keystrong 116 ,de nombre Super_R )muestra la lista de ventanas # Win95Keys=1 # 0/1 # Hace que la tecla win sea igual a Ctrl+Alt # ModSuperIsCtrlAlt=1 # 0/1 # # OPCIONES PARA ALT + TAB # # Alt+Tab para cambiar de ventana # QuickSwitch=1 # 0/1 # Alt+Tab para minimizar ventanas # QuickSwitchToMinimized=0 # 0/1 # Alt+Tab para ocultar ventanas # QuickSwitchToHidden=0 # 0/1 # Alt+Tab para mostrar una lista de todas las ventanas abiertas # QuickSwitchToAllWorkspaces=0 # 0/1 # Alt+Tab para mostrar las ventanas en el escritorio actual. # QuickSwitchGroupWorkspaces=1 # 0/1 # VARIOS # # Diálogo de salida # KeySysDialog="Alt+Ctrl+Del" # Mostrar menú de la barra de tareas.La tecla Win también lo muestra. # KeySysMenu="Ctrl+Esc" # lista de ventanas ,útil si se ha ocultado alguna. # KeySysWindowList="Alt+Ctrl+Esc" # Menú de "la lista de ventanas" # KeySysWinListMenu="" # Muestra la barra de comandos.
# KeySysAddressBar="Alt+Ctrl+Space"
# Oculta/muestra el escritorio # KeySysShowDesktop="Alt+Ctrl+d" # Bloquea/desbloquea la barra de tareas # KeySysCollapseTaskBar="Alt+Ctrl+h" # VENTANAS
#
# Muchas de estas acciones se pueden controlar desde el menú contextual
# que aparece clickando con el ratón en la barra de título de la ventana # # La ventana se agranda # KeyWinRaise="Alt+F1" # La ventana se muestra en todos los escritorios # KeyWinOccupyAll="Alt+F2" # La ventana pasa a segundo plano # KeyWinLower="Alt+F3" # Cierra la ventana # KeyWinClose="Alt+F4" # Restaura la ventana # KeyWinRestore="Alt+F5" # Pasamos a la ventana anterior (cambiar de plano las ventanas abiertas) # KeyWinPrev="Alt+Shift+F6" # Pasamos a la siguiente ventana (cambiar de plano las ventanas abiertas) # KeyWinNext="Alt+F6" # Mover la ventana,nos ayudaremos de las teclas de dirección. # KeyWinMove="Alt+F7" # Redimensionar la ventana,nos ayudaremos de las teclas de dirección. # KeyWinSize="Alt+F8" # Minimizar la ventana # KeyWinMinimize="Alt+F9" # Maximizar la ventana # KeyWinMaximize="Alt+F10" # Ventana a pantalla completa # KeyWinFullscreen="Alt+F11" # Enrollar-desenrollar la ventana # KeyWinRollup="Alt+F12" # Mostrar menú de la ventana # KeyWinMenu="Alt+Space" # Maximiza la ventana verticalmente # KeyWinMaximizeVert="Alt+Shift+F10" # Maximiza la ventana verticalmente # KeyWinMaximizeHoriz="" # Menú de la ventana (mostrar-ocultar) # KeySysWinMenu="Shift+Esc" # Minimiza todas la ventanas # KeySysMinimizeAll="Alt+Shift+F9" # Oculta todas las ventanas (apareciendo en la lista de ventanas pero no en la barra) # KeySysHideAll="Alt+Shift+F11" # Ocultar la ventana (aparece en la lista de ventanas pero no en la barra) # KeyWinHide="Alt+Shift+F12" # MOVIENDO LAS VENTANAS # # Pulsando Ctrl+Alt+teclas del teclado numérico,movemos las ventanas por la pantalla # # Abajo a la izquierda: # KeyWinArrangeSW="Ctrl+Alt+KP_1" # Abajo en el centro: # KeyWinArrangeS="Ctrl+Alt+KP_2" # Abajo a la derecha: # KeyWinArrangeSE="Ctrl+Alt+KP_3" # A media altura a la zquierda: # KeyWinArrangeW="Ctrl+Alt+KP_4" # A media altura y en el centro: # KeyWinArrangeC="Ctrl+Alt+KP_5" # A media altura a la derecha: # KeyWinArrangeE="Ctrl+Alt+KP_6" # Arriba a la izquierda: # KeyWinArrangeNW="Ctrl+Alt+KP_7" # Arriba en el centro: # KeyWinArrangeN="Ctrl+Alt+KP_8" # Ariiba a la derecha: # KeyWinArrangeNE="Ctrl+Alt+KP_9" # ORGANIZANDO LAS VENTANAS # # Muchas de estas acciones se pueden controlar desde el menú contextual
# que aparece clickando con el ratón en la barra de tareas # # Coloca las ventanas verticalmente. # KeySysTileVertical="Alt+Shift+F2" # Coloca las ventanas horizontalmente. # KeySysTileHorizontal="Alt+Shift+F3" # Coloca las ventanas en cascada. # KeySysCascade="Alt+Shift+F4" # Organiza las ventanas. # KeySysArrange="Alt+Shift+F5" # # KeySysArrangeIcons="Alt+Shift+F8" # Deshacer: # KeySysUndoArrange="Alt+Shift+F7" # Mostramos el escritorio # KeySysShowDesktop="Alt+Ctrl+d" # MOVIÉNDONOS POR LOS ESCRITORIOS # # Pasar al escritorio 1 # KeySysWorkspace1="Alt+Ctrl+1" # Pasar al escritorio 2 # KeySysWorkspace2="Alt+Ctrl+2" # Pasar al escritorio 3 # KeySysWorkspace3="Alt+Ctrl+3" # Pasar al escritorio 4 # KeySysWorkspace4="Alt+Ctrl+4" # Pasar al escritorio 5 # KeySysWorkspace5="Alt+Ctrl+5" # Pasar al escritorio anterior # KeySysWorkspacePrev="Alt+Ctrl+Left" # Pasar al siguiente escritorio # KeySysWorkspaceNext="Alt+Ctrl+Right" # Nos vamos y/o volvemos del último escritorio # KeySysWorkspaceLast="Alt+Ctrl+Down" # Mueve la ventana enfocada al anterior (en cuanto a número) escritorio y la activa # KeySysWorkspacePrevTakeWin="Alt+Ctrl+Shift+Left" # Mueve la ventana enfocada al anterior escritorio y la activa # KeySysWorkspaceNextTakeWin="Alt+Ctrl+Shift+Right" # Mueve la ventana enfocada al anterior escritorio (del que venimos)y la activa # KeySysWorkspaceLastTakeWin="Alt+Ctrl+Shift+Down"

Además de todo lo anterior podemos indicarle a IceWM que lance aplicaciones desde el teclado,similar a lo que permite el programa xbindkeys, con sólo editar el fichero "keys" cuya sintaxis es como sigue:

# key  "tecla/s"     programa 

  key  "Super_L+a"   xmms  
  key  "Super_L+c"   xterm
  key  "Super_L-e"   gvim
  key  "Super_L+f"   firefox

De esta manera tendríamos un atajo de teclado para lanzar el firefox,el xmms,xterm y gvim. Si queremos usar una sóla tecla para
lanzar aplicaciones hay que tener cuidado al elegirlas ya que muchos programas utilizan las teclas de función (F1,F2,...) como atajos de
teclado.

Pero podemos hacer más cosas aparte de lanzar aplicaciones.Por ejemplo,tenemos tres teclas juntas que se usaban en DOS,pero que a
nosotros no nos sirven para nada: "Impr pant" , "Bloq Despl" y "Pausa".

Gracias a "xev" he averiguado que "Impr pant" se llama "Print" ; "Bloq Despl" "Scroll_Lock" y "Pausa"

"Pause" . Ahora sólo queda asignarles a esas teclas algunas acciones como capturar la pantalla en formato jpg,bloquearla
lanzando el salvapantallas (me pedirá contraseña para volver) y reiniciar,tal que así:

key "Print"  import -window root pantalla.jpg
key "Scroll_Lock" xscreensaver-command -lock
key "Pause" sudo shutdown -t1 -r now
key "Ctrl+KP_Enter" sudo shutdown -t1 -h now

He añadido una cuarta línea para apagar,combinando "Ctrl" y la tecla "Intro" ("KP_Enter" según "xev")
del teclado numérico.

El resultado final para el fichero "keys" sería el siguiente:

key "Ctrl+a"  xmms
key "Ctrl+c" xterm
key "Ctrl-e" gvim
key "Ctrl+f" firefox
key "Print" import -window root pantalla.jpg
key "Scroll_Lock" xscreensaver-command -lock
key "Pause" sudo shutdown -t1 -r now
key "Ctrl+KP_Enter" sudo shutdown -t1 -h now

COMPORTAMIENTO DEL RATÓN (fichero
"preferences")

Una ventana puede estar en dos estados: activa (con foco) o inactiva (sin foco).La ventana activa o enfocada es la que puede
recibir las instrucciones del teclado y normalmente para diferenciarla de las otras suele tener la barra de título de un
color más vivo.En linux es el gestor de ventanas el encargado de gestionar el tipo de foco,que puede ser alguno de los siguientes:

  • El-foco-sigue-al-ratón:la ventana bajo el cursor es la
    activa(aunque no esté en primer plano)
  • Foco-descuidado:el foco sólo cambia al entrar en una nueva
    ventana,excluyendo la ventana raiz o fondo de pantalla
  • Click-para-foco:la ventana se activa con un click de
    ratón.

Como ahora veremos el fichero "preferences" de IceWM permite una gran gama de variaciones en cuanto a políticas de
foco se refiere.Y por lo demás,IceWM viene configurado por defecto para que al clickar con el botón derecho del ratón en el escritorio nos muestre el menú
de las aplicaciones y al hacerlo en las barras de título de las ventanas y la de tareas,nos muestra sendos menús contextuales con una gama considerable
de posibles acciones sobre las ventanas y el escritorio:

# FOCO
#
# Clik de ratón para enfocar una ventana.
# Poniendo el valor a 0, se enfocaría al posar el cursor sobre ella.
#  ClickToFocus=1 # 0/1
#-La ventana se activa cuando pasa a primer plano.
#  FocusOnAppRaise=1 # 0/1
#-La ventana pasa a primer plano cuando se enfoca.

#  RaiseOnFocus=1 # 0/1
#-La ventana pasa a primer plano tras un tiempo al enfocarde.
#  AutoRaise=0 # 0/1
# Tiempo de espera para el autoraise
#  AutoRaiseDelay = 400
#-La ventana se activa con un click
#  FocusOnClickClient=1 # 0/1
#-La ventana pasa a primer plano con un click
#  RaiseOnClickClient=1 # 0/1
#-La ventana pasa a primer plano cuando su barra de títulos es clickeada.
#  RaiseOnClickTitleBar=1 # 0/1
#-La ventana pasa a primer plano cuando el botón del marco es clickeado.

#  RaiseOnClickButton=1 # 0/1
#-La ventana pasa a primer plano cuando el borde del marco es clickeado.
#  RaiseOnClickFrame=1 # 0/1
#-Pasa a segundo plano la ventana activa cuando se clickea otra vez.
#  LowerOnClickWhenRaised=0 # 0/1
#-El click que pasa a primer plano la ventana también se pasa al cliente X
#  PassFirstClickToClient=1 # 0/1
#-Cambio automático al escritorio de la nueva ventana activa.
#  FocusChangesWorkspace=1 # 0/1
#-El foco sigue al ratón

#  StrongPointerFocus=0 # 0/1
#-Activa/desactiva el retardo del foco del cursor cuando el ratón se mueve
#  DelayPointerFocus=0 # 0/1
#-Retardo al cambiar el foco del cursor en ms
#  PointerFocusDelay=200 # [0-1000]
# El cursor es movido cuando en el modo pointerfocus se enfoca con el teclado(teclas de dirección)
#  WarpPointer = 0 # 0/1
#-La última ventana en aparecer es la enfocada.
#  FocusOnMap=1 # 0/1
#-La ventanas transitorias son enfocadas tras aparecer

#  FocusOnMapTransient=1 # 0/1
#-La ventanas transitorias son enfocadas al aparecer sólo si su ventana madre lo era.
#  FocusOnMapTransientActive=1 # 0/1
#-Colormap focus follows pointer
#  PointerColormap=1 # 0/1
# Las entradas de los menús se despliegan con sólo posar el cursor en ellas.
#  MenuMouseTracking=1 # 0/1
# Ignorar la no aceptación del foco por algunas ventanas
#  IgnoreNoFocusHint = 0 # 0/1

# RATÓN

#
#   En mi sistema y según xev:
#
#   button 1= botón izq. del ratón
#   button 2= rueda del ratón pulsada
#   button 3= botón derco. del ratón
#   button 4= rueda girada hacia delante
#   button 5= rueda girada hacia atrás
#
# El cursor no gira cuando aparecen menús emergentes.
#  DontRotateMenuPointer=1 # 0/1
# Soporte para la rueda del ratón
#  UseMouseWheel=0 # 0/1
# Permitir acciones del ratón en ventanas de clientes X 

#  ClientWindowMouseActions=1 # 0/1
# Click en el escritorio para mostrar el  menú principal.
#  DesktopMenuButton=3 # [0-20]
# Click en el escritorio para mostrar el menú de la lista de ventanas
#  DesktopWinMenuButton=0 # [0-20]
# Click en el escritorio para mostrar la lista de ventanas
#  DesktopWinListButton=2 # [0-20]
# Doble click en la barra del título para maximizar la ventana

#  TitleBarMaximizeButton=1 # [0-5]
# Doble click en la barra del título para enrrollar la ventana
#  TitleBarRollupButton=2 # [0-5]
# Retraso antes de que el click del ratón sea interpretado como un arrastre
#  ClickMotionDelay=200 # [0-2000]
# Tiempo em ms para reconocer un boble click.
#  MultiClickTime=400 # [0-5000]
# Combinación de tecla y ratón para mover la ventana
#  MouseWinMove="Alt+Pointer_Button1"
# Combinación de tecla y ratón para redimensionar la ventana

#  MouseWinSize="Alt+Pointer_Button3"
# Permite el cambio de escritorio posicionando el cursor en los bordes de la pantalla.
#  EdgeSwitch=0 # 0/1
# Cambio de escritorio al posar el cursor en los bordes izq. y decho.
#  HorizontalEdgeSwitch=0 # 0/1
# Cambio de escritorio al posar el cursor en los bordes de superior e inferior.
#  VerticalEdgeSwitch=0 # 0/1
# Cambia continuamente de escritorio al posar el cursor en los bordes.
#  ContinuousEdgeSwitch=0 # 0/1

CONFIGURACIÓN MANUAL DEL MENÚ
(ficheros "menu" y "preferences")

El siguiente documento muestra cómo confeccionar manualmente un menú en IceWM a nuestra medida y según los programas que tengamos instalados.Si tenemos muchos,ésto puede hacerse pesado al principio,pero una vez que lo tengamos bastará con pequeños retoques para dar cabida a nuevos programas.Además podemos conservar las entradas de los programas que desinstalemos,ya que no se mostrarán.

El resultado final siempre será más cómodo e intuitivo que el menú que viene con IceWM pues lo que hacemos es adaptarlo a
nuestros gustos.Eso sí ,mientras hacemos pruebas no es mala idea guardar el original (el de /etc/X11/icewm/menu o
~/.icewm/menu) con otro nombre por si pasara algo.

Si queremos dejar el menú totalmente desnudo,nos iremos al fichero "preferences" y desactivaremos los siguientes elementos del menú:

# Mostrar menú de programas ,ligado al fichero programs,(ver introducción)
  ShowProgramsMenu=0
# Mostrar menú de temas

  ShowThemesMenu=0
# Mostrar la entrada (ítem) "Ayuda" en el menú.
  ShowHelp=
# Mostrar el ítem "Ventanas" en el menú.
  ShowWindowList=0
# Mostrar el ítem "Acerca de" en el menú.

  ShowAbout=0

# Mostrar menú "salir" ,para apagar directamente.
  ShowLogoutMenu=0 
# Mostrar submenú "salir" ,se nos mostrarán las opciones de apagar,reiniciar,salir de las X ,etc 
  ShowLogoutSubMenu=0 
# Comandos a usar por el menú "Salir".Aunque se dejen en blanco el ítem aparecerá. # Comando para salir de icewm LogoutCommand="killall icewm" # Commando para cancelar salida LogoutCancelCommand="xrefresh" # Comando para apagar el sistema ShutdownCommand="sudo /sbin/halt" # Comando para reiniciar el sistema RebootCommand="sudo /sbin/reboot" # Confirmar la salida (no es necesario desactivar). ConfirmLogout=1 # Mostrar el ítem "Ejecutar" o "Usar" en el menú. ShowRun=0 # Aunque la anterior opción esté activada no se mostrará en el menú, a menos que hayamos # indicado un comando para seleccionar y ejecutar un programa (como bbrun -w,gksu o xexec) en # la siguiente línea: RunCommand="gksu"

Y ahora ya podemos empezar desde cero.La sintaxis usada en las líneas del fichero "menu" es la siguiente:

prog   firefox firefox firefox 
          |       |       |
          |       |       V
          |       |    nombre del ejecutable (a veces la ruta)
          |       V      
          |   nombre_del_icono (a veces la ruta)            
          V     
     nombre_visible_en_el_menú (a veces entrecomillado)

Hay que rellenar de contenido los tres campos,de lo contrario no se mostrará la entrada.En caso de no querer que aparezca
un icono en el menú,basta rellenarlo con un simple guión (-),aunque en este manual he empleado la palabra
sinicono para tal menester.

La sintaxis es la misma que la usada por el fichero "toolbar".Sin embargo en éste,además de
la palabra clave "prog",se pueden incluir algunas otras como las siguientes:

  • "restart" Usada para arrancar un gestor de ventanas diferente y cuya sintaxis es:
    restart wmaker  -  wmaker
              |     |    |
              |     |    V
              |     |  nombre del ejecutable (a veces la ruta)
              |     V      
              | nombre_del_icono (en este caso no aparece el icono)            
              V     
     nombre_visible_en_el_menú (a veces entrecomillado)
  • "menufile" Usada para mostrar el menú contenido en un fichero.Por defecto IceWM emplea esta
    entrada en una sola ocasión,mostrando el contenido del fichero "toolbar",pero podemos
    crear otro distinto simplemente añadiendole las entradas "prog" correspondientes y ubicándolo en el
    directorio de IceWM.

    menufile Toolbar folder toolbar
               |       |       |
               |       |       V
               |       |  nombre del fichero
               |       V      
               |  palabra clave empleada para crear las entradas de submenús
               V     
     nombre_visible_en_el_menú (a veces entrecomillado)
  • "menuprog" Usada para incluir los menús de KDE y Gnome (ambos basados en «ficheros desktop»,
    un estándar de la freedesktop.org) a través de
    «icewm-menu-gnome2»,tal y como se señala en la introducción.IceWM ya incluye por defecto las dos
    entradas en su fichero «menu»:

    menuprog  Gnome folder icewm-menu-gnome2 --list /usr/share/gnome/vfolders
    menuprog  KDE folder icewm-menu-gnome2 --list /usr/share/applnk
    

IceWM mira los nombres de iconos en unas rutas determinadas,pero se pueden añadir otras en el fichero
"preferences":

#  Rutas de búsqueda de iconos (separadas por dos puntos)
IconPath="/usr/share/icons:/usr/share/pixmaps"

Como veremos más adelante a veces no es tan sencillo y tendremos que indicar las rutas completas
o añadir algunos parámetros extra.Pasemos ahora a ver el resultado de nuestra primera línea
«prog firefox firefox firefox»:

               .--------------.
|@firefox |
'--------------'

No queda mal,pero no es cuestión de hacer una entrada por cada ejecutable,(aunque ésta la podemos
dejar si queremos tener un acceso rápido al firefox).Es más cómodo agrupar las aplicaciones por
categorías,como hacen todos los menús del mundo.Para eso necesitamos una entrada diferente a
"prog":

menu Editores folder { 
prog Abiword abiword abiword
prog Nano sinicono xterm -e nano
}
  • Con la primera línea abrimos una entrada en el menú llamada
    Editores.
  • Con la segunda incluimos una entrada en el menú
    Editores con el nombre Abiword.
  • Con la tercera incluimos una entrada en el menú
    Editores con el nombre Nano.
  • Con la cuarta cerramos el menú Editores con el
    corchete }

Si se trata de un programa que debe correr en una consola,como un script que hayamos hecho o como en este caso,nano,hay que
pasarle,siempre en último lugar,la opción -e a la consola.

Si el script en cuestión lo tenemos en nuestro home (quien dice un script dice un programa que hayamos instalado como usuario en
nuestra "home") tendríamos que indicar la ruta al ejecutable.En caso contrario IceWM lo buscará inútilmente en los directorios
habituales: /usr/bin,usr/local/bin,etc

Y como una imagen vale más que mil palabras ,aquí tenéis el resultado:

               .--------------.
|@firefox |
| |----------.
| Editores >| Abiword |
'--------------| |
| Nano |
'----------'

Esto se puede complicar todo lo que uno quiera,así por ejemplo se pueden crear menús dentro de otros menús sucesivamente.

Por ejemplo ,supongamos que quiero crear una entrada de nombre Redes en el menú ,que a su vez contenga varias entradas como:

  • Herramientas
  • En línea
  • Descargas
  • Navegadores

La sintaxis sería ésta:

menu Redes folder {           Abrimos Redes --------------. 
menu Herramientas folder { Abrimos Herramientas ---. |
prog | |
} Cerramos Herramientas <-' |
menu "En línea" folder { Abrimos En línea -------. |
prog | |
} Cerramos En línea <-----' |
menu Descargas folder { Abrimos Descargas ------. |
prog | |
} Cerramos Descargas <----' |
menu Navegadores folder { Abrimos Navegadores ----. |
prog | |
} Cerramos Navegadores <--' |
} Cerramos Redes <------------'

En el caso de la entrada "En línea" ,al tener más de una palabra,tenemos que entrecomillar el nombre que se mostrará en el menú.Y éste es el resultado:

               .--------------.
|@firefox |
| Editores >|_______________
| Redes >| Herramientas >|
'--------------| En línea >|
| Descargas >|____
| Navegadores >| |
'--------------------'

No aparece ningún programa para ejecutar porque hemos dejado la entrada prog vacía.Queremos ir paso a paso.Vamos a introducir tres navegadores en el submenú Navegadores de la siguiente manera:

menu Navegadores folder {
prog Firefox firefox firefox
prog eLinks elinks xterm -e elinks
prog "links2 gráfico" links2 links2 -g
prog "Links2 texto" links2 xterm -e links2
}

Y este es el resultado:

               .--------------.
|@firefox |
| Editores >|-------------.
| Redes >| Herramientas>|
'--------------| En línea >|
| Descargas >|---------------.
| Navegadores >|@Firefox |
'--------------| Elinks |
|@Links2 gráfico |
|@Links2 texto |
'----------------'

La razón por la que no muestra el icono de elinks o anteriormente el de abiword es porque en las rutas en las que busca,(recordemos que según el fichero "preferences" eran /usr/share/icons y /usr/share/pixmaps) no encuentra iconos con esos nombres.Si ese detalle nos quita el sueño, podemos hacer dos cosas:

1-Añadimos una ruta al fichero "preferences" en donde sepamos que si se encuentran iconos con ese nombre

2-Indicamos la ruta al icono: prog eLinks ~/.iconos/elinks.png xterm -e elinks

  Igualmente hay que indicar la ruta completa cuando el formato del icono no sea 
".xpm",incluso aunque se encuentre en los directorios mencionados,ya que IceWM
lo que busca por defecto son iconos en ese formato.Aunque si se ha compilado con
las librerías Imlib podrá soportar todos los formatos incluídos en las mismas.

-Además a los programas se le pueden pasar los parámetros y opciones que admitan.Así podríamos querer que al ejecutar los
navegadores elinks y links2 ,lo hagan abriendo una página web determinada:

prog Links2 links2 xterm -e links2 ./.links2/inicio.html

O que nano nos muestre el texto en color amarillo y que tenga unas medidas y posición en la pantalla y un tipo de letra
determinadas,para lo cual tendríamos que pasarle esa opción a xterm:

prog Nano sinicono xterm -geometry 85x30+200+180 -fg yellow \
-fn -misc-fixed-medium-r-normal-*-20-*-*-*-*-*-iso8859-* -e nano

Aunque ese comportamiento de xterm (o cualquier otra aplicación
X) es mejor dejarlo indicado en los ficheros ~/.Xresources o ~/.Xdedaults.De esa manera siempre se comportará así,se abra desde el menú o desde cualquier otro sitio (teclado,barra de tareas,etc)

Cuando se va a utilizar un emulador de terminal (xterm,Eterm,etc) con comodines hay que entrecomillar el contenido:

prog  xwininfo sinicono xterm -e "xwininfo > xwininfo.txt"

Pudiéndose sustituir algunas veces "xterm -e" por "- /bin/sh -c" ,en cuyo caso no es necesario rellenar el campo del icono:

prog  xprop /bin/sh -c "xprop > xprop.txt"

Ya que estamos con xterm,puede ocurrir que desde el menúlancemos una terminal para que ejecute un comando y apenas nos dé tiempo a verlo porque al terminar su ejecución se cierra la terminal.Hay varias soluciones.Una es la que ya hemos visto,redirigiendo la salida a un fichero;otra es aprovechar las opciones de refresco (si las tiene) del propio comando y también podemos hacer uso del comando watch para sacarnos del apuro o de una tubería que mande la salida al comando

less:

prog Tiempo sinicono xterm -fg blue -e  watch weather -i leba -fv

prog Tiempo sinicono xterm -fg blue -e "weather -i leba -fv | less"

Cualquiera de estas entradas (que por cierto,podrían venir muy bien junto a las anteriores en un menú llamado Utilidades) nos permiten consultar el pronóstico del tiempo sin que se cierre xterm.

-Si queremos ejecutar un programa que necesita privilegios de root,tendremos que ejecutarlo por mediación de algún otro como gksu o su-to-root:

prog Synaptic synaptic gksu synaptic

prog Synaptic synaptic su-to-root -X -c synaptic

-En nuestro menú de ejemplo lo dejaremos como acceso rápido junto al firefox.Y además vamos a poner un separador,en forma de línea horizontal,entre las entradas rápidas del menú y el resto,para ello usamos la entrada separator:

prog  Synaptic synaptic gksu synaptic
prog firefox firefox firefox

separator

menu Editores folder {
prog Abiword abiword abiword
prog Nano sinicono xterm -e nano
}

menu Redes folder {
...

Resultado:

               .--------------.
|@Synaptic |
|@Firefox |
|--------------|
| Editores >|
| Redes >|
'--------------'

-Supongamos que queremos acceder a nuestras particiones y dispositivos desde el menú.Pues podríamos crear una entrada que se llamase Montaje y en la cual haríamos uso del explorador de ficheros que usemos (rox-filer en el ejemplo):

menu montaje folder {
prog Lector sinico rox-filer /media/cdrom1
prog Grabadora sinico rox-filer /media/cdrom0
prog floppy sinico rox-filer /media/floppy0
prog "Datos (hda6)" sinico rox-filer /mnt/datos
}

Resultado:

               .--------------.
|@Synaptic |
|@Firefox |
|--------------|
| Editores >|
| Redes >|----------------.
| Montaje >| Lector |
'--------------| Grabadora |
| Floppy |
| Datos (hda6) |
'----------------'

-Si se trata de lanzar un programa que podemos ejecutar mediante sudo (como shutdown para apagar o reiniciar),habrá que indicarlo.Vamos a crear una entrada en el menú de nombre Salir para verlo mejor:

menu Salir folder {
prog "Salir de IceWM" sinicono killall icewm
prog Reiniciar sinicono sudo shutdown -t1 -r now
prog Apagar sinicono sudo shutdown -t1 -h now
}

Resultado:

               .--------------.
|@Synaptic |
|@Firefox |
|--------------|
| Editores >|
| Redes >|
| Montaje >|----------------.
| Salir >| Salir de IceWM |
'--------------| Reiniciar |
| Apagar |
'----------------'

Podemos poner una herramienta de búsqueda como "searchmonkey" en nuestro menú, a la que accederemos de forma directa:

separator
prog Buscar... searchmonkey searchmonkey

Y para rematar editamos el fichero "preferences" y activamos
el ítem "Ejecutar" e indicamos el programa que más nos guste para tal menester (gksu,bbrun,xexec,etc), en este caso "bbrun".

ShowRun=1
RunCommand="bbrun -w"

-Ahora ya podemos poner el valor 1 en la línea ShowThemesMenu= del fichero "preferences" de manera que podremos ver los temas disponibles y cambiarlo a placer. (sí,ya sé lo que os estáis preguntando...):-P

Veamos cómo ha quedado el engendro:

               .--------------.
|@Synaptic |
|@Firefox |
|--------------|
| Editores >|
| Redes >|
| Montaje >|
| Salir >|
|--------------|
| Buscar... >|
|--------------|
| Ejecutar... >|
|--------------|----------------.
| Temas >| A >|
'--------------| B >|
| citylights |
| fury |
| G >|
| I >|
| jupp |
| kubical |
| linthered |
| M >|
| N >|
|----------------|
| Default |
'----------------'

Y aquí su correspondiente fichero "menu":

prog   Synaptic /usr/share/pixmaps/synaptic.png gksu synaptic
prog Firefox firefox firefox

separator

menu Editores folder {
prog Abiword abiword abiword
prog Nano sinicono xterm -e nano
}

menu Redes folder {
menu Herramientas folder {
prog
}
menu "En línea" folder {
prog
}
menu Descargas folder {
prog
}
menu Navegadores folder {
prog Firefox firefox firefox
prog eLinks elinks xterm -e elinks
prog "links2 gráfico" links2 links2 -g
prog "Links2 texto" links2 xterm -e links2
}
}

menu montaje folder {
prog Lector sinico rox-filer /media/cdrom1
prog Grabadora sinico rox-filer /media/cdrom0
prog floppy sinico rox-filer /media/floppy0
prog Datos sinico rox-filer /mnt/datos
}

menu Salir folder {
prog "Salir de IceWM" sinicono killall icewm
prog Reiniciar sinicono sudo shutdown -t1 -r now
prog Apagar sinicono sudo shutdown -t1 -h now
}
separator
prog Buscar... searchmonkey searchmonkey

El resto ya es cosa de la imaginación de cada uno ,pero lo dicho hasta ahora, creo que basta para hacerse una idea de cómo funciona el menú de IceWM.Podeis ver lo que puede dar de sí en las capturas
mostradas más abajo.

-Si lo que queremos es cambiar las fuentes y colores del menú,podemos hacerlo recurriendo una vez más al fichero "preferences". Aunque hay que tener presente que los temas especifican sus fuentes y colores en su propio fichero

"preferences" o bien en uno llamado "default.theme".No importa,las lineas a buscar son las mismas en todos los casos:

#-Tipo de fuente del menú
#  MenuFontName="-*-sans-bold-r-*-*-*-100-*-*-*-*-*-*"
#-Tipo de fuente xft del menú
#  MenuFontNameXft="sans-serif:size=10:bold"
#-Color de fondo de los menús emergentes:

#  ColorNormalMenu="rgb:C0/C0/C0"
#-Color del texto de los ítems del menú:
#  ColorNormalMenuItemText="rgb:00/00/00"
#-Fondo del ítem seleccionado,(hay que dejar vacío para forzar la transparencia):
#  ColorActiveMenuItem="rgb:A0/A0/A0"
#-Color del texto de los ítems seleccionados del menú:
#  ColorActiveMenuItemText="rgb:00/00/00"
#-Color del texto de los ítems no activos del menú:

#  ColorDisabledMenuItemText="rgb:80/80/80"
#-Sombra de los ítems normales del menú:
#  ColorDisabledMenuItemShadow=""

Nota1:Ver capítulo 7-Tamaños,fuentes y colores.

Nota2:Para elegir una fuente nos podemos ayudar del programa xfontsel

El comportamiento del ratón con respecto al menú admite dos opciones:que los menús se abran al clickar sobre ellos o bien que lo hagan al posar el cursor sobre los mismos ,indicándolo con los valores 0 y 1 respectivamente en la siguiente línea:

#  MenuMouseTracking=1 # 0/1 

Nota:Ver el capítulo 3 dedicado al ratón.

Por último hay que mencionar un detalle que diferencia a este fichero del resto.Y es que no necesitamos reiniciar IceWM para que surtan efecto los cambios en el mismo.Pero incluso ésto se puede cambiar desde el omnipresente "preferences":

# Recarga automática del fichero menu
#  AutoReloadMenus=1 # 0/1

< id="aviso">

Actualización,abril 2007:

En las últimas versiones de IceWM,se ha añadido al menú una nueva entrada de nombre «Settings» en el que se ha incluído el antiguo ítem «Temas» y otro de nueva creación «Focus», que nos permite seleccionar el comportamiento del foco.

Entre otras mejoras,también se ha realizado una actualización de la traducción al español por Eulogio Serradilla.Como resultado de la misma ya podemos ver los tooltips de la barra de tareas mostrando la información en castellano.

Las cambios producidos en las distintas versiones podéis seguirlos en el siguiente enlace: http://www.icewm.org/changes.php

COMPORTAMIENTO DE LAS VENTANAS
(fichero "winoptions")

El fichero "winoptions" es usado para definir el comportamiento de las ventanas de las distintas aplicaciones.

Las líneas de este fichero deben tener alguno de los siguientes formatos:

window_name.opción: argumento 
window_class.opción: argumento
window_role.opción: argumento
window_class.window_name.opción: argumento
window_class.window_role.opción: argumento
window_name.window_role.opción: argumento
window_class.window_name.window_role.opción: argumento

Los valores window_class, window_name y window_role se pueden averiguar haciendo uso de la utilidad xprop

Usando el comando:

# xprop | grep WM_CLASS  

Nos daría (al clickar en una ventana) una salida como ésta :

WM_CLASS(STRING) = "name", "class"

En donde el primer valor sería el window_name y el segundo el window_class

Es posible que una window_class o window_name contenga el carácter punto (.).El mismo que usa IceWM para separar los distintos valores.Para anularlo hay que preceder al punto de una barra
invertida (\). Por ejemplo,supongamos (es un suponer) que el window_class y window_name de amule fuesen a.mule y A.mule,entonces su sintaxis sería:

a\.Mule.A\.mule.tray: Exclusive 
-------|-------|----|----------
| | | |
| | | argumento
| | opción
| wm_name
wm_class

Las opciones (y sus argumentos) que pueden ser configuradas para las ventanas son:

icon   ----------- El nombre del icono.
workspace ------- Escritorio por defecto para la ventana(ojo porque se empieza a contar desde cero)
geometry --------- Define la geometría para la ventana.Su sintaxis es axh+x+y.

layer --------- Capa por defecto para la ventana.
| Argumentos:
| Desktop ------ La ventana hace de fondo de escritorio.Debe haber solamente una ventana en esta capa.
| Below -------- Debajo
| Normal ------- Es la que viene por defecto para las ventanas.
| OnTop -------- Arriba
| Dock --------- Fija en primer plano.
| AboveDock ---- Sobre fija en primer plano.
| Menu --------- Sobre fija en primer plano.
'----------------

tray ------------- Opciones por defecto para el tray(bandeja de la barra de tareas).
| Argumentos:
| Ignore -------- No añade un icono.
| Minimized ----- Añade un icono,eliminando el botón de la barra de tareas cuando se minimiza la ventana.
| Exclusive ----- Añade un icono,sin crear un botón de la ventana en la barra de tareas.
'--------------

Los argumentos de las siguientes opciones varían entre 0 (desactiva) y 1 (activa),mostrándose el comportamiento por defecto.

allWorkspaces:0 ------ Activada,la ventana será visible en todos los escritorios
ignoreWinList:0 ------ Activada,la ventana no aparecerá en el paginador (lista de ventanas)
ignoreTaskBar:0 ------ Activada,la ventana no aparecerá en la barra de tareas
ignoreQuickSwitch:0 -- Activada,la ventana no será accesible usando la opción QuickSwitch (Alt+Tab)
fullKeys:0 ----------- Activada,IceWM dejará más combinaciones de teclado (Alt+F?) a la aplicación
fMove:1 -------------- Desactivada,la ventana no será movible.
fResize:1 ------------ Desactivada,la ventana no podrá cambiar su tamaño.
fClose:1 ------------- Desactivada,la ventana no podrá ser cerrada.
fMinimize:1 ---------- Desactivada,la ventana no podrá minimizarse.
fMaximize:1 ---------- Desactivada,la ventana no podrá maximizarse.
fHide:1 -------------- Desactivada,la ventana no podrá ocultarse.
fRollup:1 ------------ Desactivada,la ventana no será shadable.
dTitleBar:1 ---------- Desactivada,la ventana no tendrá una barra de título.
dSysMenu:1 ----------- Desactivada,la ventana no tendrá un menú del sistema.
dBorder:1 ------------ Desactivada,la ventana no tendrá borde.
dResize:1 ------------ Desactivada,el borde de la ventana no podrá cambiar de tamaño.
dClose:1 ------------- Desactivada,la ventana no tendrá botón de cierre.
dMinimize:1 ---------- Desactivada,la ventana no tendrá botón para minimizar.
dMaximize:1 ---------- Desactivada,la ventana no tendrá botón para maximizar.
noFocusOnAppRaise ---- Activada,la ventana no pasará a primer plano aunque esté enfocada(ctiva)
ignoreNoFocusHint ---- Activada,IceWM la enfocará aunque no esté en primer plano.
doNotCover:0 --------- Activada,la ventana ocupará en exclusiva una zona de la pantalla.
forcedClose:0 -------- Activada y si la aplicación no tiene registrado WM_DELETE_WINDOW (ver xprop),no se pedirá confirmación al cerrar.

Ejemplo 1:

Tenemos configurado IceWM de manera que nos arranca GKrellM al inicio de la sesión,pero queremos que su ventana tenga un comportamiento especial,como que aparezca en todas los escritorios,que no aparezca en la barra de tareas y que si abrimos una ventana de otro programa ,la del firefox por ejemplo,la del GKrellM quede oculta por debajo.

Como primer paso hacemos uso de xprop buscando los valores WM_CLASS:

# xprop | grep WM_CLASS 

Al clickar sobre GKrellM nos dará una salida como ésta:

WM_CLASS(STRING) = "gkrellm", "Gkrellm"

Ahora ya sabemos que podemos usar o gkrellm o bien Gkrellm

gkrellm.allWorkspaces:1   # Aparece en todos los escritorios
gkrellm.ignoreTaskBar:1 # No aparecerá en la barra de tareas
gkrellm.layer: Below # No aparecerá siempre en primer plano
gkrellm.tray: ignore # No aparecerá un icono en el tray.

Nota:Paradójicamente el programa elegido para el ejemplo1,permite
desde su propio menú de configuración algunas de estas opciones.

Ejemplo 2:

Con el amule por ejemplo y en esta ocasión lo que queremos es que no muestre el botón de la ventana en la barra de tareas para que deje el espacio a otros botones(a fin de cuentas el amule siempre va a estar ejecutándose),sólo el icono en el tray:

La salida de xprop es ésta:

WM_CLASS(STRING) = "aMule", "aMule"

Por tanto:

aMule.tray: Exclusive 

Ejemplo 3:

Somos muy tiquismiquis y queremos que los editores se abran sólo
en el escritorio 2:

abiword.workspace:1
gvim.workspace:1
leafpad.workspace:1

BARRA DE TAREAS (ficheros "toolbar" y
"preferences")

El fichero "toolbar" se usa para poner accesos directos a programas en forma de botones. La sintaxis es la misma que para el fichero "menu" salvo que,tal y como se ha dicho,se trata de crear botones de programas,de manera que todas las entradas son para programas aislados sin agruparse en menús o submenús:

prog   firefox firefox firefox
| | |
| | V
| | comando (a veces la ruta)
| V
| nombre_del_icono (a veces la ruta)
V
nombre_visible_en_el_tooltip (a veces entrecomillado)


Nota:Un tooltip es la ventana que aparece al posar el puntero del ratón sobre el icono

Con indicar el nombre del icono ya basta,pues IceWM busca el de tamaño adecuado según la ubicación del mismo.Y en el caso de que le indicáramos la ruta y el icono sea muy grande,también se encarga de redimensionarlo.

Un ejemplo:

prog xkill xkill xkill
prog xterm xterm xterm
prog home /home/paco/.icewm/icons/home.png rox-filer
prog alsamixer /home/paco/.icewm/icons/mixer.jpg xterm -geometry 70x20 -e alsamixer

Todo lo dicho para el fichero "menu" es aplicable al "toolbar",salvo quizá, la aparicíon en la barra del nombre del programa si no rellenamos ese campo o si poniéndolo IceWM,no lo encuentra(en "menu" simplemente no se mostraría nada).De manera que vamos a pasar a ver las entradas del fichero "preferences" que le afectan de una u otra manera.Aunque en esta ocasión voy a excluir todo lo referente a
fuentes y colores.Dado mi nivel de inglés básico lo más probable es que haya errores,en cuyo caso las culpas ya sabéis...para el Babel
Fish.

Las opciones suelen ser: 1=activado,0=desactivado ,y aunque en el fichero "original" vengan comentadas todas las entradas,en ellas viene reflejada la configuración por defecto de IceWM.Para mayor claridad las he agrupado según se trate de un elemento u otro.

##################
# BARRA
##################

#-Mostrar la barra de tareas # ShowTaskBar=1 # 0/1 #-Barra de tareas en la parte superior de la pantalla # TaskBarAtTop=0 # 0/1 #-Usar barra de doble altura # TaskBarDoubleHeight=0 # 0/1 #-Ocultar la barra de tareas tras las ventanas abiertas # TaskBarKeepBelow=0 # 0/1 #-Auto-ocultar la barra de tareas cuando no esté activa (bajo el cursor) # TaskBarAutoHide=1 # 0/1 #-Retraso antes de que la barra de tareas se uculte automáticamente. # AutoHideDelay=300 # [0-5000] #-Mostrar un botón para ocultar la barra de tareas # TaskBarShowCollapseButton=1 # 0/1 # Mostrar el nombre del escritorio en curso mientras se cambia de uno a otro # ShowWorkspaceStatus=1 # 0/1 # Tiempo que es mostrada la ventana que avisa del cambio de escritorio. # WorkspaceStatusTime=2500 # [0-2500] ################## # BOTONES ################## #-Mostrar menú inicio # TaskBarShowStartMenu=1 # 0/1 #-Mostrar menú de lista de ventanas # TaskBarShowWindowListMenu=1 # 0/1 #-Mostrar "ver escritorio" en la barra # TaskBarShowShowDesktopButton=1 # 0/1 #-Número de escritorios que se muestran en la barra # WorkspaceNames=" 1 ", " 2 " , " 3 " #-Mostrar botones de los distintos escritorios # TaskBarShowWorkspaces=1 # 0/1 #-Ubicar el paginador de escritorios en la izquierda # TaskBarWorkspacesLeft=1 # 0/1 ################## # COMANDOS ################## #-Ejecutar los comandos de la barra de tareas(reloj,CPU,etc) de un solo click # TaskBarLaunchOnSingleClick=1 # 0/1 #-Tiempo en segundos que una aplicación de la barra tardará en lanzarse tras activarse # FocusRequestFlashTime=0 # [0-86400] #-Permite la barra de direcciones/comandos en la barra. #-Se abre con "Ctrl+Alt+Barra espaciadora" o "icono win+Barra espaciadora" # EnableAddressBar=1 # 0/1 #-Muestra la barra de direcciones/comandos # ShowAddressBar=1 # 0/1 #-Comando a ejecutar en la entrada de la Barra de direcciones/comandos # AddressBarCommand="" ################## # TOOLTIPS ################## #-Retraso antes de que las tooltip se muestren. # ToolTipDelay=1000 # [0-5000] #-Tiempo antes de que los tooltip se cierren (0 significa nunca) # ToolTipTime=0 # [0-60000] ################## # VENTANAS ################## #-Mostrar ventanas en la barra # TaskBarShowWindows=1 # 0/1 #-Mostrar ventanas en barra de todos los escritorios # TaskBarShowAllWindows=0 # 0/1 #-Mostrar ventanas en tray # TaskBarShowTray=1 # 0/1 #-Mostrar ventanas en tray de todos los escritorios # TrayShowAllWindows=1 # 0/1 #-Mostrar iconos de ventanas en la barra de tareas # TaskBarShowWindowIcons=1 # 0/1 ################## # BUZÓN ################## #-Mostrar buzón # TaskBarShowMailboxStatus=0 # 0/1 #-Señal sonora cuando llegue un nuevo correo # TaskBarMailboxStatusBeepOnNewMail=0 # 0/1 #-Contar los mensajes del buzón # TaskBarMailboxStatusCountMessages=0 # 0/1 #-Ruta del buzón # MailBoxPath="" #-Commando a ejecutar con el monitor de correo # MailCommand="x-terminal-emulator -name mutt -title Mutt -e mutt" #-Comprobar la llegada de nuevos mensajes cada x segundos # MailCheckDelay=30 # [0-86400] #-Valores WM_CLASS (window_name y window_class)de la ventana del programa que se ejecuta sobre el buzón #-(es el que viene por defecto y se trata de "xterm -e mutt") # MailClassHint="mutt.XTerm" #-Comando a ejecutar cuando llega nuevo correo # NewMailCommand="" ################## # MONITOR DE CPU ################## #-Mostrar monitor CPU # TaskBarShowCPUStatus=1 # 0/1 #-Anchura del monitor CPU # TaskBarCPUSamples=20 # [2-1000] #-Tasa de refresco del monitor CPU en ms. # TaskBarCPUDelay=500 # [10-3600000] #-Comando que se ejecuta en CPU status # CPUStatusCommand=" Eterm -O --shade 35% --scrollbar off --buttonbar off -x \ # -F -misc-fixed-medium-r-normal-*-20-*-*-*-*-*-iso8859-* -f yellow -g 77x25+500+490 \ # -n top -title Procesos -e top -u paco" #-Valores WM_CLASS (name y class) de la ventana del programa que se ejecuta sobre la CPU #-(es el que viene por defecto y se trata de "xterm -e top") # CPUStatusClassHint="top.XTerm" ################## # MONITOR DE RED ################## #-Mostrar monitor de red # TaskBarShowNetStatus=1 # 0/1 #-Anchura del monitor de red # TaskBarNetSamples=20 # [2-1000] #-Tasa de refresco del monitor de red en ms. # TaskBarNetDelay=500 # [10-3600000] #-Comando que se ejecuta sobre el monitor de red # NetStatusCommand="Eterm -O --shade 35% --scrollbar off --buttonbar off -x \ # -F -misc-fixed-medium-r-normal-*-20-*-*-*-*-*-iso8859-* -f cyan -g 100x35+300+0 \ # -n red -title 'Network Status' -e netstat -t -p -c 100" #-Valores WM_CLASS (name y class) de la ventana del programa que se ejecuta sobre el monitor de red #-(es el que viene por defecto y se trata de "xterm -e netstat") # NetStatusClassHint="netstat.XTerm" #-Dispositivo de red mostrado # NetworkStatusDevice="eth0" ################## # APM Y RELOJ ################## #-Los monitores del reloj y APM muestran su contenido en formato LCD # TaskBarClockLeds=1 # 0/1 #-Mostrar monitor APM # TaskBarShowAPMStatus=0 # 0/1 #-Mostrar monitor APM en formato-tiempo # TaskBarShowAPMTime=0 # 0/1 #-Mostrar reloj en la barra # TaskBarShowClock=1 # 0/1 #-Comando a ejecutar sobre el reloj # ClockCommand="/usr/bin/xarclock -g 140x140+1100+800 -hd red -bg black -fg white -north -title Clock" #-Valores WM_CLASS (name y class)de la ventana del programa que se ejecuta sobre el reloj #-(es el que viene por defecto y se trata de "xterm -e xclock") # ClockClassHint="icewm.XClock" #-Formato del tiempo en el reloj (para más información ver "man strftime") # TimeFormat="%X" #-Formato alternativo para mostrar la hora # TimeFormatAlt="" #-Formato de tiempo del tooltip del reloj. # DateFormat="%A %d de %B"

TAMAÑOS,FUENTES Y COLORES (ficheros
"default.theme" y "preferences")

Las siguientes entradas,aunque vienen en el fichero "preferences" suelen ser las utilizadas por los temas (no necesariamente todas) en su fichero "default.theme".En ellas se especifica hasta el último detalle relativo al aspecto de IceWM como tamaños,fuentes,colores y otras cuestiones.Son muchas y no las voy a indicar todas,pero sí las suficientes como para poder hacerle un buen lavado de cara a nuestro gestor de ventanas favorito.A tener en cuenta que los colores se expresan en notación RGB y que para seleccionar una fuente nos podemos ayudar de xfontsel.

Las lineas que se refieren a las fuentes muestran dos entradas idénticas salvo que una de ellas añade la coletilla Xft para referirse a este tipo de fuentes que utilizan la librería FreeType. Por ejemplo,para especificar el tipo de fuente usada por el menú tenemos las entradas:

  MenuFontName=""
MenuFontNameXft=""

En donde el tipo de fuente debe ir entrecomillado.

Una vez sabido ésto y por comodidad vamos a mostrar una sola entrada.

Nota:Ver final del capítulo 4-Configuración del menú

#TAMAÑOS
#
# Altura de la barra de título de las ventanas (20 por defecto,valores entre 0 y 128)
# TitleBarHeight=20 # [0-128]
# Tamaño del borde horizontal de las ventanas (6 por defecto)
# BorderSizeX=6 # [0-128]
# Tamaño del borde vertical de las ventanas (6 por defecto)
# BorderSizeY=6 # [0-128]
# Anchura de la esquina de las ventanas 

# CornerSizeX=40 # [0-64]
# Altura de la esquina de las ventanas 
# CornerSizeY=26 # [0-64]
# Anchura de la barra de desplazamiento
# ScrollBarX=16 # [0-64]
# Altura de la barra de desplazamiento (botón)
# ScrollBarY=16 # [0-64]
# Tamaño de los iconos del menú
# MenuIconSize=16 # [8-128]
# Tamaño de los iconos pequeños (barra de tareas)

# SmallIconSize=16 # [8-128]
# Tamaño de los iconos medianos
# LargeIconSize=32 # [8-128]
# Tamaño de los iconos grandes
# HugeIconSize=48 # [8-128]
#
# FUENTES
#
# Tipo de fuente del menú:
# MenuFontName="-*-sans-bold-r-*-*-*-100-*-*-*-*-*-*"
# Tipo de fuente de la barra de tareas:

# NormalTaskBarFontName="-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
# Tipo de fuente para las ventanas activas en la barra de tareas:
# ActiveTaskBarFontName="-*-sans-bold-r-*-*-*-120-*-*-*-*-*-*"
# Botón normal 
# NormalButtonFontName="-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
# Botón activo
# ActiveButtonFontName="-*-sans-bold-r-*-*-*-120-*-*-*-*-*-*"
# Tipo de fuente de los tooltip (ventana emergente al paso del cursor):
# ToolTipFontName="-*-sans-medium-r-*-*-*-120-*-*-*-*-*-*"
# Tipo de fuente del reloj:

# ClockFontName="-*-monospace-medium-r-*-*-*-140-*-*-*-*-*-*"
# Tipo de fuente del monitor APM:
# ApmFontName="-*-monospace-medium-r-*-*-*-140-*-*-*-*-*-*"
#
# COLORES
#
# Color de fondo de la barra de título de las ventanas normales:
#  ColorNormalTitleBar="rgb:80/80/80"
# Color del texto de la barra de título de las ventanas normales:
#  ColorNormalTitleBarText="rgb:00/00/00"
# Color de fondo de la barra de título de las ventanas activas:

#  ColorActiveTitleBar="rgb:00/00/A0"
# Color del texto de la barra de título de las ventanas activas:
#  ColorActiveTitleBarText="rgb:FF/FF/FF"
# Color de fondo de las ventanas de diálogo
#  ColorDialog="rgb:C0/C0/C0"
# Color del borde las ventanas inactivas
#  ColorNormalBorder="rgb:C0/C0/C0"
# Color del borde la las ventanas activas
#  ColorActiveBorder="rgb:C0/C0/C0"
# Color de fondo de los botones normales

#  ColorNormalButton="rgb:C0/C0/C0"
# Color del texto de los botones normales
#  ColorNormalButtonText="rgb:00/00/00"
# Color de fondo de la barra de tareas
#  ColorDefaultTaskBar="rgb:C0/C0/C0"
# Color de fondo para los botones de las ventanas normales en la barra:
#  ColorNormalTaskBarApp="rgb:C0/C0/C0"
# Color del texto para los botones de las ventanas normales en la barra:
#  ColorNormalTaskBarAppText="rgb:00/00/00"
# Color de fondo para los botones de las ventanas activas en la barra:
#  ColorActiveTaskBarApp="rgb:E0/E0/E0"
# Color del texto para los botones de las ventanas activas en la barra:

#  ColorActiveTaskBarAppText="rgb:00/00/00"
# Color de fondo del reloj no LCD,hay que dejar este campo vacío para forzar la transparencia.
#  ColorClock="rgb:00/00/00"
# Color de fondo del monitor no LCD
#  ColorClockText="rgb:00/FF/00"
# Color de fondo del monitor APM ,(dejar en blanco para forzar tranparencia)
#  ColorApm="rgb:00/00/00"
# Color del texto del monitor APM 
#  ColorApmText="rgb:00/FF/00"
# Color de la carga del usuario en el monitor de CPU 
#  ColorCPUStatusUser="rgb:F4/F6/2C"
# Color de la carga del sistema en el monitor de CPU 

#  ColorCPUStatusSystem="rgb:FF/00/00"
# Color de fondo de los cuadros de texto(ej. the addressbar)
#  ColorInput="rgb:FF/FF/FF"
# Color del texto de los cuadros de texto (ej. the addressbar)
#  ColorInputText="rgb:00/00/00"
# Color de fondo del texto selecionado en un cuadro
#  ColorInputSelection="rgb:80/80/80"
# Color del texto selecionado en un cuadro
#  ColorInputSelectionText="rgb:00/00/00"
# Color de fondo de los menús emergentes
#  ColorNormalMenu="rgb:C0/C0/C0"
# Color del texto de los ítems del menú.

#  ColorNormalMenuItemText="rgb:00/00/00"
# Color de fondo de los ítems seleccionados del menú,hay que dejar en blanco para forzar la transparencia.
#  ColorActiveMenuItem="rgb:A0/A0/A0"
# Color del texto de los ítems seleccionados del menú.
#  ColorActiveMenuItemText="rgb:00/00/00"
#
# VARIOS
#
# Rodear la bandeja con un borde plástico

# TrayDrawBevel=1 
# Distancia entre los iconos y el texto
# QuickSwitchSeparatorSize=6 # [0-64]
# Posicionamos el título de la ventana.Valores entre 0 y 100,con 50 estaría centrado.
# TitleBarJustify=0 # [0-100]

ESCRITORIO,VENTANAS Y TRANSPARENCIAS

**Escritorio**

La imagen de fondo del escritorio junto a sus características se indica en las siguientes entradas
del fichero "preferences", en la parte dedicada a las preferencias de icewmbg:

# Preferencias de icewmbg:
#
# Imagen del fondo
  DesktopBackgroundImage="ruta_a_la_imagen"
#
# Fondo centrado
  DesktopBackgroundCenter=0 # 0/1
#
# Fondo escalado a pantalla completa
  DesktopBackgroundScaled=1 # 0/1
#
# Color del fondo de escritorio (en hexadecimal)
  DesktopBackgroundColor="#000000"

Pero para que esto funcione hay que ejecutar el ya mencionado icewmbg,que es el encargado de gestionar el fondo del escritorio, antes que icewm. O bien ejecutar

icewm-session,el cual se encarga de iniciar tanto IceWM como sus componentes,entre ellos icewmbg, a medida que son requeridos.Quedando de esta manera los ficheros "xinitrc" y "xsession":

#!/bin/sh                             
icewmbg &           
exec icewm 

o bien:

   
#!/bin/sh
exec icewm-session

Puede ocurrir sin embargo que los temas tengan su propio fondo ubicado en sus directorios homónimos e indicado en una entrada similar a la anterior pero en el fichero "default.theme" que es el que marca las preferencias
del tema.

Si el tema está siendo usado ,ese fichero (que suele contener además del fondo,indicaciones sobre tamaños,fuentes y colores) tendrá , al menos en lo que a esos aspectos se refiere,prioridad sobre el "preferences". En este caso simplemente hay que buscar las anteriores entradas en los

"default.theme" y modificarlas a voluntad.

Hay otra manera y es crear un fichero de nombre "prefoverride". Todas las entradas que se escriban en él,invalidarán las preferencias de los temas.

Hay que tener también en cuenta que si usamos un programa ajeno a IceWM (por ejemplo la aplicación Wallpaper incluida en el gestor de ficheros Rox-Filer) para establecer el fondo,el sistema cargará primero uno y luego otro ,según lo hayamos indicado en el script.Para evitar la carga innecesaria de dos procesos que hacen lo mismo podemos comentar o eliminar la linea de uno de ellos en los scripts de inicio.En este caso la de icewmbg,pues queremos disponer de iconos:

#!/bin/sh
gkrellm & # Cada vez que iniciemos una sesión,lo hará con el GKrellM xscreensaver & # el salvapantallas rox-filer -p miescritorio & # queremos tener un fondo con iconos gestionado por Rox-Filer. # icewmbg # no queremos que icewmbg gestione el fondo del escritorio. exec icewm # y por último el propio gestor de ventanas.

Con la entrada "rox-filer -p miescritorio" tendríamos un escritorio ,cuyo fichero
de configuración estaría en: ~/.config/rox.sourceforge.net/ROX-Filer/miescritorio.
Mientras que con la entrada "rox-filer -b mibarra" dispondríamos de una barra de tareas,cuyo fichero
de configuración estaría en: ~/.config/rox.sourceforge.net/ROX-Filer/mibarra.Para ver
todas las posibilidades de ROX,no ya como gestor de ficheros,sino también como un escritorio completo,
podeis visitar su sitio web: http://rox.sourceforge.net

Asimismo existen otras aplicaciones como idesk y adesklets,que nos permiten disponer de iconos en el escritorio,simplemente invocándolas desde los scripts de inicio:

#!/bin/sh
gkrellm  &
xscreensaver &
adesklets  &

exec icewm                

Independientemente de quien gestione el fondo del escritorio,podemos hacer que en el mismo se muestren unos botones que se corresponderían con cada una de las ventanas minimizadas.Para ello hay que activar la siguiente entrada en el fichero «preferences»:

MinimizeToDesktop=1

**Ventanas**

Podemos hacer que las ventanas de las terminales gráficas (o cualquier otra aplicación) se muestren sin bordes ni barra de títulos,dando como resultado,en combinación con las tranparencias,ventanas espectaculares . Recordemos los argumentos del fichero "winoptions" que hacían mención a este comportamiento:

dTitleBar:0 ---- Para no mostrar barra de título.
dBorder:0 ------ Para no mostrar bordes.

A veces,como en el caso de Eterm (ver Cap.sig.),basta con
indicar esa opción en su propio fichero de recursos.

Este comportamiento lo podríamos extender a todas las ventanas,para que no muestren bordes ni barra de títulos o los muestren con un tamaño determinado.Las lineas que marcan estos valores se encuentran ubicadas en "preferences" o "default.theme":

#Altura de la barra de título

# TitleBarHeight=20 
#Tamaño del borde horizontal
# BorderSizeX=5 
#Tamaño del borde horizontal
# BorderSizeY=5 
#Anchura de la esquina
# CornerSizeX=40 
#Altura de la esquina
# CornerSizeY=26 

Marcar todo a 0 no mostraría las ventanas de los clientes X sin los bordes ni barra de título añadidas por IceWM,que para eso es el gestor de ventanas,pero...se paga un precio:

  • Al no tener bordes no podemos usarlos para redimensonar la ventana con el ratón.
  • Al no tener barra de título no podríamos redimensionar o cerrar desde sus botones,

    no podríamos mover la ventana colocando el cursor en la barra,ni
    podríamos acceder

    al menú que se muestra al clickar con el ratón en la barra.

Aunque para todo eso existen alternativas:

  • Accediendo al menú de la ventana clickando con el ratón dcho.
    sobre su botón en la barra de tareas.
  • Desde el teclado,ayudándonos de las teclas de dirección para
    mover o redimensionar y de "enter" para dar por finalizada la
    labor:

    • Alt+f7 ----------- activamos el movimiento de la
      ventana
    • Alt+f8 ----------- activamos el redimensionado de la
      ventana
  • Combinando el teclado con el ratón:
    • Alt+ratón_dcho. -- para mover
    • Alt+ratón-izq. --- para redimensionar

Otras entradas de interés (en el fichero «preferences»)que también afectan a las ventanas pueden ser:

# Limitar tamaño de la ventana en la pantalla
#  LimitSize=1 # 0/1
# Limitar posicion de la ventana en la pantalla
#  LimitPosition=1 # 0/1
#  Incluir los bordes horizontales de los marcos cuando se maximiza 
#  ConsiderHBorder=0 # 0/1
#  Incluir los bordes verticales de los marcos cuando se maximiza 
#  ConsiderVBorder=0 # 0/1
# la ventana maximizada puede ser redimensionada

#  SizeMaximized=0 # 0/1
# Permitir cambiar una ventana a fullscreen
#  AllowFullscreen=1 # 0/1
# Mostrar coordenadas de la posición de la ventana mientras se desplaza o redimensiona
#  ShowMoveSizeStatus=1 # 0/1
# Mostrar mini-iconos en el escritorio para las ventanas minimizadas
#  MinimizeToDesktop=0 # 0/1
# La ventana es movida al arrastrarse sin mostrar estela
#  OpaqueMove=1 # 0/1
# La ventana es redimensonada al arrastrarse sin mostrar estela
#  OpaqueResize=1 # 0/1
# La ventana debe ser ubicada manualmente por el usuario.

#  ManualPlacement=0 # 0/1
# Mostrar ventanas emergentes al pasar el cursor
#  ShowPopupsAbovePointer=0 # 0/1

**Transparencias**

En el caso de que estemos usando simultánemamente icewmbg junto a otro programa para gestionar los fondos,con la mala suerte de que sean distintos,las transparencias no tendrán efecto.Lo que suelen hacer los programas con la posibilidad de ser transparentes es usar el fondo cargado como su propio fondo,no es una transparencia real sino simulada(1).Y si hay varios fondos cargados,utilizan el del gestor de ventanas.

Para simular la tranparencia en los programas que permitan dicha opción no tendremos más remedio que cargar el mismo fondo desde el gestor de ventanas (IceWM) y el de ficheros (Rox-Filer) o lo más lógico ,dejar que sólo uno de ellos lo gestione.Aunque también nos puede gustar que las ventanas muestren su propio fondo,en cuyo caso podemos cargar el de IceWM y el de algún otro programa que corra por encima,sabiendo que las ventanas mostrarán el de IceWM; o bien recurrir otra vez al fichero "preferences":

# Preferencias de icewmbg:
#
# Soporte para terminales semitransparentes como aterm,Eterm,etc

   SupportSemitransparency=1 # 0/1

# Tinte para  para las ventanas semi-transparentes
#  DesktopTransparencyColor=""

# Imagen de fondo para las ventanas semi-transparentes (para el caso de que lo queramos distinto)
#  DesktopTransparencyImage=""

A continuación se muestran algunas opciones estéticas de
distintas terminales gráficas:

Opciones de aterm:

-geometry axh+x+y - Geometría(recurso:geometry)(2),(3) 
-fn fuente -------- Tipo de fuente normal(recurso:font)
-fb fuente -------- Tipo de fuente negrita (recurso:boldFont)
-fg color --------- Color del texto (recurso:foreground)
-bg color --------- Color del fondo (recurso:backgroun)
-pixmap: imagen --- Indica la imagen de fondo y opcionalmente su geometría tras un "punto y coma"
entrecomillado para que el shell no lo interprete: -pixmap: imagen ";"axh+x+y
(recurso:backgroundPixmap)
-bw nº ------------ Anchura del borde de la ventana,siendo 0=sin borde (recurso:borderWidth)(4) -sb|+sb ----------- Activa/desactiva el scrollbar (recurso:scrollBar) -tr|+tr ----------- Activa/desactiva el modo transparente(recurso:transparent) -sh --------------- grado de luz en la transparencia,valores entre 0 (opaca)y 100(recurso:shading) -tint color ------- Color de la transparencia.(recurso:tinting) -title texto ------ Especifica el nombre que aparecerá en la barra de título de su ventana. -n texto ---------- Nombre que mostrará el icono de la ventana.(recurso:iconName) -e ---------------- Ejecuta un comando o script.(debe ser la última opción)(5)

Opciones de xterm:

-geometry axh+x+y - Geometría (recurso:geometry) 
-fn fuente -------- Tipo de fuente normal(recurso:font)
-fb fuente -------- Tipo de fuente negrita (recurso:boldFont )
-fg color --------- Color del texto (recurso:foreground)
-bg color --------- Color del fondo (recurso:background)
-bw nº ------------ Anchura en pixels del borde de la ventana.(recurso:borderWidth)
-tb|+tb ----------- Activa/desactiva el mostrar una barra de título en la ventana.(recurso:toolBar)
-sb|+sb ----------- Activa/desactiva el scrollbar (recurso:scrollBar)
-bc|+bc ----------- Activa/desactiva parpadeo del cursor(recurso:cursorBlink)
-title título ----- Especifica el nombre que aparecerá en la barra de título de su ventana.
-n texto ---------- Nombre que mostrará el icono de la ventana.(recurso:iconName)
-e ---------------- Ejecuta un comando o script.(debe ser la última opción)

Opciones de Eterm:

-g axh+x+y -------- Geometría de la ventana.(en formato axh+x+y)
-F fuente --------- Tipo de fuente.
-f color ---------- Color del texto.
-b color ---------- Color del fondo.
-P imagen --------- Indica la imagen de fondo y opcionalmente su geometría tras una arroba:
-P imagen @ axh+x+y
-x ---------------- Sin bordes.
--buttonbar off --- Sin barra de menú.
--scrollbar off --- Sin barra deslizadora.
-O ---------------- Transparente.
--shade 35% ------- Porcentaje del sombreado del fondo transparente.
-T texto ---------- Especifica el nombre que aparecerá en la barra de título de su ventana.
--icon-name texto - Nombre que mostrará el icono de la ventana.
-n texto ---------- Equivale a los dos anteriores.
-e ---------------- Ejecuta un comando o script.(debe ser la última opción)
Notas a pie 

(1) Con el nuevo servidor "Xgl" junto a nuevos gestores de composición como "compiz",las
tranparencias serán reales.

(2) La geometría en los clientes X se indica en formato axh+x+y ,en donde axh representa
el tamaño (a=anchura, h=altura) y +x+y las coordenadas de pantalla.Ambas medidas en pixels.

(3) Los recursos (propiedades estéticas) de algunos clientes X (Eterm,que usa las librerías
Imlib,no las Xlib,tiene sus propios ficheros de recursos:user.cfg y/o theme.cfg) pueden especi-
ficarse en el fichero "~/.Xdefaults",cuya sintaxis suele ser "programa*recurso:valor":
aterm*transparent: true

(4) Este recurso se encuentra condicionado a que el gestor de ventanas tenga activados los bordes.

(5) La opción -e de xterm y aterm también define el nombre del icono y título de la ventana
si dichas opciones no están ya especificadas.

PANTALLAZOS COMENTADOS


pantallazo1

Esta captura muestra un fondo con la espiral de Debian,pero fijaos que GKrellM(6), Eterm y los desklets (meteorológico y barra de iconos) muestran un fondo distinto en el
que también aparece la espiral(7);una ventana del Rox-Filer,sin barra de título ni bordes, mostrando el
directorio raíz y decorada con el tema GTK "Aero"(8) y el menú contextual que aparece al clickar en la barra de tareas,ambos decorados con el tema de IceWM "black-versus-white"


pantallazo2

Esta otra muestra tres tranparencias:GKrellM (tema "invisible"),gdeskcal (tema "august") y elinks corriendo sobre aterm, unos iconos "lila" en la esquina superior izquierda;Mplayer en la esquina inferior derecha con el tema "CornerMP-aqua"; el menú de inicio de IceWM,junto a la barra de tareas,con un diseño proporcionado por el tema "Linthered". Todo ello sobre un fondo oceánico gestionado por Rox-Filer.


pantallazo3

En esta se ve,como en la anterior a GKrellM (tema "Dune"),gdeskcal (tema "LCD") y el navegador elinks corriendo sobre aterm y con el texto en amarillo visitando esta página; unos iconos en la parte inferior, xmms (piel "myway") y el menú (tema bluecrux).Tanto los iconos como el fondo están gestionados por Rox-Filer.



pantallazo4

En esta última se pueden ver dos barras de tareas,la de abajo con una barra de comandos corresponde a IceWM (tema Asuka) y la de arriba a Rox-Filer (tema GTK "DaVinci").El tema Asuka de IceWM se deja notar también en xterm mientras que xeyes y el reloj aparecen sin los bordes ni barra de título. GKrellM y XMMS están decorados con el tema GTK2 "Aero" y gdeskcal con el tema o skin "august".

Notas a pie

(6) GKrellM muestra imágenes de la fase lunar y del meteosat en tiempo real,gracias al plugin GKrellKam. (7) Ésto ocurre porque tengo un fondo cargado por IceWM (el que muestran las tranparencias) y otro por. Rox-Filer. En esta ocasión ha quedado bonito pero no siempre ocurre así. (8) Para cambiar los temas de las aplicaciones GTK he usado los binarios switch (GTK) y switch2 (GTK2).
Ambos vienen en el paquete "gtk-theme-switch"

Imagen de macondo
Enviado por macondo el 24 Julio, 2006 - 15:35.

¡Excelente! te felicito, buen trabajo. :)

Imagen de diskoppix
Enviado por diskoppix el 24 Julio, 2006 - 15:50.

Respuesta a ¡Excelente! te felicito, buen trabajo.

Gracias macondo ,viniendo de ti,es un halago.

Relacionado con Configuración de IceWM



Buscador

Búsqueda avanzada

Inicio de sesión

Encuesta

¿Que haces cuando tienes un problema?
Utilizo google hasta para encontrar la hora
70%
Leo los manuales hasta hartarme
8%
Utilizo esDebian que para algo está
15%
Esto con windows no pasaba
3%
Formateo
0%
Mirar en las listas de correo y bug tracker
0%
Ninguna de las anteriores
5%
Total de votos: 66

En línea

En este momento hay 5 usuarios y 22 invitados en línea.