JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
Fix include path for Linux rb tree, add slots for FreeBSD tree.h and others.
[spectrwm.git] / scrotwm_es.1
1 .\" Copyright (c) 2009 Marco Peereboom <marco@peereboom.us>
2 .\" Copyright (c) 2009 Darrin Chandler <dwchandler@stilyagin.com>
3 .\"
4 .\" Permission to use, copy, modify, and distribute this software for any
5 .\" purpose with or without fee is hereby granted, provided that the above
6 .\" copyright notice and this permission notice appear in all copies.
7 .\"
8 .\" THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9 .\" WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10 .\" MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11 .\" ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12 .\" WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13 .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14 .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15 .\"
16 .Dd $Mdocdate$
17 .Dt SCROTWM 1
18 .Os
19 .Sh NOMBRE
20 .Nm scrotwm
21 .Nd es un manejador de ventanas para X11
22 .Sh SYNOPSIS
23 .Nm scrotwm
24 .Sh DESCRIPCIÓN
25 .Nm
26 es un manejador de ventanas super minimalista para X11. Intenta no superponer 
27 las ventanas para que las mismas puedan usarse de manera eficiente y para cosas mas importantes. 
28 Tiene configuraciones normales y no requiere que sepas un lenguaje de 
29 programacion para configurarlo. Esta escrito por hackers para hackers y apunta 
30 a ser pequeño, compacto y rápido. 
31 .Pp
32 Cuando
33 .Nm
34 inicia, lo primero que hace es leer el archivo de configuracion,
35 .Pa scrotwm.conf .
36 Ver 
37 .Sx ARCHIVOS DE CONFIGURACIÓN
38 .
39 .Pp
40 La siguiente anotacion se usa a través de esta pagina:
41 .Pp
42 .Bl -tag -width Ds -offset indent -compact
43 .It Cm M
44 Meta
45 .It Cm S
46 Shift
47 .It Aq Cm Name
48 Nombre de tecla
49 .It Cm M1
50 Boton 1 del mouse
51 .It Cm M3
52 Boton 3 del mouse
53 .El
54 .Pp
55 .Nm
56 es muy simple de usar.
57 La mayoria de las acciones se hacen con los mapeos (bindings) de mouse 
58 o teclado.
59 Ver la sección de
60 .Sx BINDINGS
61 para las personalizaciones y configuraciones por defecto.
62 .Sh ARCHIVOS DE CONFIGURACIÓN
63 .Nm
64 primero trata de abrir el archivo por defecto en el directorio del usuario,
65 .Pa ~/.scrotwm.conf .
66 Si ese archivo no esta disponible,
67 luego trata de abrir el archivo global de configuracion
68 .Pa /etc/scrotwm.conf .
69 .Pp
70 El formato del archivo es \*(Lttecla\*(Gt = \*(Ltconfiguracion\*(Gt.
71 Por ejemplo:
72 .Pp
73 .Dl color_focus = red
74 .Pp
75 Habilitamos o deshabilitamos la opción usando 1 o 0 respectivamente.
76 .Pp
77 El archivo soporta las siguientes palabras clave:
78 .Pp
79 .Bl -tag -width "title_class_enabledXXX" -offset indent -compact
80 .It Cm autorun
81 Inicia una aplicacion en un escritorio en particular al primer inicio.
82 Definido por el formato ws[<idx>]:aplicacion, ej. ws[2]:xterm lanza
83 xterm en el escritorio 2.
84 .It Cm color_focus
85 Color del borde de la ventana en foco.
86 .It Cm color_unfocus
87 Color del borde de la ventana fuera de foco.
88 .It Cm bar_enabled
89 Habilitar o deshabilitar la barra de estado.
90 .It Cm bar_border Ns Bq Ar x
91 Color del borde de la barra de estado en pantalla.
92 .Ar x .
93 .It Cm bar_border_width
94 Setea el grosor de la barra de estado en pixels.
95 Deshabilitado seteando 0.
96 .It Cm bar_color Ns Bq Ar x
97 Color de la ventana de la barra de estado en pantalla.
98 .Ar x .
99 .It Cm bar_font_color Ns Bq Ar x
100 Color de la fuente en la barra de estado en pantalla.
101 .Ar x .
102 .It Cm bar_font
103 Fuente de la barra de estado.
104 .It Cm bar_action
105 Scripts externos con populares agregados de información para la barra 
106 de estado, como la vida de la bateria.
107 .It Cm bar_delay
108 Frecuencia de actualización, en segundos, de los scripts de la barra de 
109 estado.
110 .It Cm bar_at_bottom
111 Puedes posicionar la statusbar en la parte inferior de la pantalla.
112 .It Cm stack_enabled
113 Habilitar o deshabilitar mostrar el algoritmo de apilamiento en la barra
114 de estado.
115 .It Cm clock_enabled
116 Habilitar o deshabilitar el reloj en la barra de estado, deshabilitado 
117 por defecto con un 0, para usar el reloj de la barra de estado 
118 (bar_action)
119 .Pa bar_action
120 script.
121 .It Cm dialog_ratio
122 Algunas aplicaciones tienen ventanas de dialogo muy pequeñas como para 
123 ser usables. Este relación (ratio) es el tamaño de la pantalla, por 
124 ejemplo 0.6 es 60% del tamaño físico de la pantalla.
125 .It Cm layout
126 Selecciona una disposicion para usar en el primer inicio.
127 Definido con el formato
128 ws[idx]:master_grow:master_add:stack_inc:layout:always_raise:stack_mode, 
129 ej.
130 ws[2]:-4:0:1:0:horizontal setea el escritorio 2 en horizontal, el stack 
131 principal y reduce 4 puntos agregando una ventana al stack, mientras
132 mantiene el comportamiento de ventanas flotantes.
133 Modos posible de stack_mode
134 .Pa vertical ,
135 .Pa horizontal
136 and
137 .Pa fullscreen .
138 .Pp
139 Ver
140 .Pa master_grow ,
141 .Pa master_shrink ,  
142 .Pa master_add ,  
143 .Pa master_del ,
144 .Pa stack_inc ,
145 .Pa stack_del ,
146 y
147 .Pa always_raise
148 para mas informacion.
149 Tenga en cuenta que las opciones de stack son complicados y tienen 
150 efectos secundarios.
151 Uno debe familiarizarse con estos comandos antes de experimentar con la
152 opcion
153 .Pa layout
154 .Pp
155 Esta opcion no necesita un reinicio.
156 .It Cm region
157 Acomodar una region personalizada, removiendo cualquier autodeteción de 
158 regiones que ocupe el espacio en la pantalla. 
159 Definiendo el formato screen[<idx>]:WIDTHxHEIGHT+X+Y,
160 e.g.\& screen[1]:800x1200+0+0.
161 .It Cm term_width
162 Setear un ancho minimo preferido para la terminal.
163 Si el valor es mayor que 0,
164 .Nm
165 intentará ajustar el tamaño de la fuente de la terminal para mantener 
166 el ancho de la terminal por encima de este número cuando la ventana 
167 cambia de tamaño.
168 Actualmente solo es soportado por
169 .Xr xterm 1
170 El binario de
171 .Xr xterm 1
172 no debe ser un setuid o setgid, que no sea el que viene por defecto en 
173 la mayoria de los sistemas.
174 Los usuarios pueden necesitar setear program[term] (ver la sección
175 .Sx PROGRAMAS
176 ) para usar una copia alternativa del binario de
177 .Xr xterm 1
178 sin el seteo del setgid.
179 .It Cm title_class_enabled
180 Habilitar o deshabilitar la clase de ventana en la barre de estado.
181 Habilitado seteando 1
182 .It Cm title_name_enabled
183 Habilitar o deshabilita el titulo de la ventana en la barra de estado.
184 Habilitado seteando 1
185 .It Cm urgent_enabled
186 Habilitar o deshabilitar el aviso de urgencia.
187 Tenga en cuenta que muchos emuladores de terminal requieren de este
188 parametro habilitado para que funcione.
189 En xterm, por ejemplo, hay que agregar la siguiente linea
190 .Pa xterm.urgentOnBell: true
191 to
192 .Pa .Xdefaults .
193 .It Cm window_name_enabled
194 Habilitar o deshabilita el nombre de la ventana en la barra de estado.
195 Habilitado seteando 1
196 .It Cm verbose_layout
197 Habilitar o deshabilita la notificacion del area principal y el
198 stack en la barra de estado.
199 Habilitado seteandolo a 1.
200 .It Cm modkey
201 Cambiar mod key.
202 Mod1 generalmente es la tecla ALT y Mod4 la tecla de windows en una PC.
203 .It Cm focus_mode
204 Usando el valor de 
205 .Pa follow_cursor 
206 puedes hacer que el manejador de ventanas
207 se enfoque en la ventana cuando el cursor pase por arriba de las mismas o
208 bien cambiando de estacion de trabajo.
209 .It Cm disable_border
210 Remueve el borde de una sola ventana cuando la barra de estado esta desactivada.
211 .It Cm border_width
212 Setea el grosor del borde de la ventana en pixels.
213 Deshabilitar todos los bordes seteandolo a 0.
214 .It Cm program Ns Bq Ar p
215 Definir una nueva accion para ejecutar un programa.
216 .Ar p .
217 Ver la sección de
218 .Sx PROGRAMAS
219 .It Cm bind Ns Bq Ar x
220 Combinación de teclas para una acción
221 .Ar x .
222 Ver la sección
223 .Sx BINDINGS
224 .It Cm quirk Ns Bq Ar c:n
225 Agregar un "quirk" (o forzados) para ventanas con clase
226 .Ar c
227 y nombre
228 .Ar n .
229 Ver la sección
230 .Sx QUIRKS
231 .El
232 .Pp
233 Los colores deben ser especificados por la especificación
234 .Xr XQueryColor 3
235 y las fuentes por la especificación
236 .Xr XQueryFont 3
237 .Sh PROGRAMAS
238 .Nm
239 te permite definir acciones personales para lanzar los programas que 
240 quieras y luego obligar a la misma con una función de acciones.
241 Ver la sección
242 .Sx BINDINGS
243 .Pp
244 Los programas por defecto se describen acá:
245 .Pp
246 .Bl -tag -width "screenshot_wind" -offset indent -compact
247 .It Cm term
248 xterm
249 .It Cm screenshot_all
250 screenshot.sh completo
251 .It Cm screenshot_wind
252 screenshot.sh por ventana
253 .It Cm lock
254 xlock
255 .It Cm initscr
256 initscreen.sh
257 .It Cm menu
258 dmenu_run \-fn $bar_font \-nb $bar_color \-nf $bar_font_color \-sb $bar_border \-sf $bar_color
259 .El
260 .Pp
261 Los programas en la configuración personal, se especifican aca:
262 .Pp
263 .Dl program[<nombre>] = <progpath> [<arg> [... <arg>]]
264 .Pp
265 .Aq nombre
266 es un identificador, no genera conflictos con ninguna accion o palabra 
267 clave,
268 .Aq progpath
269 es la ruta al programa, y
270 .Aq arg
271 es ninguno o mas de un argumento para el programa.
272 .Pp
273 Las siguientes variables de configuracion en
274 .Nm
275 (ver 
276 .Sx ARCHIVOS DE CONFIGURACIÓN
277 ),
278 y pueden ser usadas en los campos de
279 .Aq arg
280 como asi tambien sustituidas por valores al momento del inicio de un 
281 programa:
282 .Pp
283 .Bl -tag -width "$bar_font_color" -offset indent -compact
284 .It Cm $bar_border
285 .It Cm $bar_color
286 .It Cm $bar_font
287 .It Cm $bar_font_color
288 .It Cm $color_focus
289 .It Cm $color_unfocus
290 .El
291 .Pp
292 Ejemplo:
293 .Bd -literal -offset indent
294 program[ff] = /usr/local/bin/firefox http://scrotwm.com.ar/
295 bind[ff] = Mod+f # Ahora Mod+F inicia firefox
296 .Ed
297 .Pp
298 Para deshacer lo anterior:
299 .Bd -literal -offset indent
300 bind[] = Mod+f
301 program[ff] =
302 .Ed
303 .Sh BINDINGS
304 .Nm
305 provee muchas funciones (o acciones) accesibles por medio de la 
306 asignación (bindings) de teclas o el mouse.
307 .Pp
308 Las corrientes asignaciones (bindings) del mouse son:
309 .Pp
310 .Bl -tag -width "M-j, M-<TAB>XXX" -offset indent -compact
311 .It Cm M1
312 Enfoco una ventana
313 .It Cm M-M1
314 Muevo una ventana
315 .It Cm M-M3
316 Redimenciono una ventana
317 .It Cm M-S-M3
318 Redimenciono una ventana hasta que quede centrada
319 .El
320 .Pp
321 Las corrientes asignaciones (bindings) de teclas son:
322 .Pp
323 .Bl -tag -width "M-j, M-<TAB>XXX" -offset indent -compact
324 .It Cm M-S- Ns Aq Cm Return
325 term
326 .It Cm M-p
327 menu
328 .It Cm M-S-q
329 quit
330 .It Cm M-q
331 restart
332 .Nm
333 .It Cm M- Ns Aq Cm Space
334 cycle_layout
335 .It Cm M-S- Ns Aq Cm Space
336 reset_layout
337 .It Cm M-h
338 master_shrink
339 .It Cm M-l
340 master_grow
341 .It Cm M-,
342 master_add
343 .It Cm M-.
344 master_del
345 .It Cm M-S-,
346 stack_inc
347 .It Cm M-S-.
348 stack_del
349 .It Cm M- Ns Aq Cm Return
350 swap_main
351 .It Xo
352 .Cm M-j ,
353 .Cm M- Ns Aq Cm TAB
354 .Xc
355 focus_next
356 .It Xo
357 .Cm M-k ,
358 .Cm M-S- Ns Aq Cm TAB
359 .Xc
360 focus_prev
361 .It Cm M-m
362 focus_main
363 .It Cm M-S-j
364 swap_next
365 .It Cm M-S-k
366 swap_prev
367 .It Cm M-b
368 bar_toggle
369 .It Cm M-x
370 wind_del
371 .It Cm M-S-x
372 wind_kill
373 .It Cm M- Ns Aq Ar n
374 .Ns ws_ Ns Ar n
375 .It Cm M-S- Ns Aq Ar n
376 .Ns mvws_ Ns Ar n
377 .It Cm M- Ns Aq Cm Right
378 ws_next
379 .It Cm M- Ns Aq Cm Left
380 ws_prev
381 .It Cm M-a
382 ws_prior
383 .It Cm M-S- Ns Aq Cm Right
384 screen_next
385 .It Cm M-S- Ns Aq Cm Left
386 screen_prev
387 .It Cm M-s
388 screenshot_all
389 .It Cm M-S-s
390 screenshot_wind
391 .It Cm M-S-v
392 version
393 .It Cm M-t
394 float_toggle
395 .It Cm M-S Aq Cm Delete
396 lock
397 .It Cm M-S-i
398 initscr
399 .It Cm M-w                    
400 iconify
401 .It Cm M-S-w
402 uniconify
403 .It Cm M-S-r
404 always_raise
405 .It Cm M-v
406 button2
407 .It Cm M--
408 width_shrink
409 .It Cm M-=
410 width_grow
411 .It Cm M-S-
412 height_shrink
413 .It Cm M-S-=
414 height_grow
415 .It Cm M-[
416 move_left
417 .It Cm M-]
418 move_right
419 .It Cm M-S-[
420 move_up
421 .It Cm M-S-]
422 move_down
423 .El
424 .Pp
425 El nombre de las acciónes descripta a continuación:
426 .Pp
427 .Bl -tag -width "M-j, M-<TAB>XXX" -offset indent -compact
428 .It Cm term
429 Ejecutar una terminal
430 (ver
431 .Sx PROGRAMAS
432 )
433 .It Cm menu
434 Menu
435 (ver
436 .Sx PROGRAMAS
437 )
438 .It Cm quit
439 Salir
440 .Nm
441 .It Cm restart
442 Reiniciar
443 .Nm
444 .It Cm cycle_layout
445 Disposición de las ventanas
446 .It Cm reset_layout
447 Reiniciar la disposición de las ventanas
448 .It Cm master_shrink
449 Achicar la region principal
450 .It Cm master_grow
451 Agrandar la region principal
452 .It Cm master_add
453 Agregar una ventana a la region principal
454 .It Cm master_del
455 Quitar una ventana de la region principal
456 .It Cm stack_inc
457 Agregar columnas/filas a las pilas
458 .It Cm stack_del
459 Quitar columnas/filas de las pilas
460 .It Cm swap_main
461 Mover la ventana corriente a la region principal
462 .It Cm focus_next
463 Enfocar la proxima ventana en la estación de trabajo
464 .It Cm focus_prev
465 Enfocar la anterior ventana en la estación de trabajo
466 .It Cm focus_main
467 Enfocar en la ventana principal de la estación de trabajo
468 .It Cm swap_next
469 Ejecutar con la siguiente ventana en la estación de trabajo
470 .It Cm swap_prev
471 Ejecutar con la anterior ventana en la estación de trabajo
472 .It Cm bar_toggle
473 Cambiar la barra de estado en todas las estaciones de trabajo
474 .It Cm wind_del
475 Borrar la ventana corriente en la estación de trabajo
476 .It Cm wind_kill
477 Destruir la ventana corriente en la estación de trabajo
478 .It Cm ws_ Ns Ar n
479 Cambiar entre estaciones de trabajo
480 .Ar n ,
481 donde
482 .Ar n
483 es 1 por 10
484 .It Cm mvws_ Ns Ar n
485 Mover la ventana corriente a una estación de trabajo
486 .Ar n ,
487 donde
488 .Ar n
489 es 1 por 10
490 .It Cm ws_next
491 Cambiar a la proxima estación de trabajo con una ventana en ella
492 .It Cm ws_prev
493 Cambiar a la anterior estación de trabajo con una ventana en ella
494 .It Cm screen_next
495 Mover el puntero a la proxima region
496 .It Cm screen_prev
497 Mover el puntero a la anterior region
498 .It Cm screenshot_all
499 Tomar una captura de pantalla de todo la pantalla (si esta habilitado)
500 (ver
501 .Sx PROGRAMAS
502 )
503 .It Cm screenshot_wind
504 Tomar una captura de pantalla de la ventana seleccionada (si esta habilitado)
505 (ver
506 .Sx PROGRAMAS
507 )
508 .It Cm version
509 Mostrar la version en la barra de estado
510 .It Cm float_toggle
511 Mostar la ventana en foco entre las flotantes y acomodadas
512 .It Cm lock
513 Bloquear pantalla
514 (ver
515 .Sx PROGRAMAS
516 )
517 .It Cm initscr
518 Reiniciar la pantalla
519 (ver
520 .Sx PROGRAMAS
521 )
522 .It Cm iconify
523 Minimiza (unmap) la ventana en foco.
524 .It Cm uniconify
525 Maximiza (map) la ventana seleccionada por dmenu.
526 .It Cm always_raise
527 Cuando se establece las ventanas en cascada se esconden las 
528 ventanas flotantes.
529 .It Cm button2
530 Falsifica el boton del medio del mouse.
531 .It Cm width_shrink
532 Reducir el ancho de una ventana flotante.
533 .It Cm width_grow  
534 Agranda el ancho de una ventana flotante.
535 .It Cm height_shrink
536 Reducir la altura de una ventana flotante.
537 .It Cm height_grow
538 Agranda la altura de una ventana flotante.
539 .It Cm move_left
540 Mueve la ventana flotante un paso a la izquierda.
541 .It Cm move_right
542 Mueve la ventana flotante un paso a la derecha.
543 .It Cm move_up
544 Mueve la ventana flotante un paso arriba.
545 .It Cm move_down
546 Mueve la ventana flotante un paso abajo.
547 .El
548 .Pp
549 Personalizar mapeos (bindings) en el archivo de configuración:
550 .Pp
551 .Dl bind[<accion>] = <teclas>
552 .Pp
553 .Aq accion
554 una de las acciones listadas (o ninguna) y
555 .Aq teclas
556 una o mas teclas modificadas (puede ser ninguna tambien)
557 (MOD, Mod1, Shift, etc.) y una o mas teclas normales
558 (b, barra espaciadora, etc.), separadas por un "+".
559 Por ejemplo:
560 .Bd -literal -offset indent
561 bind[reset] = Mod4+q # combinación Tecla de Windows + q reinicia
562 bind[] = Mod1+q # des-hace la combinación Alt + q
563 .Ed
564 .Pp
565 Multiples combinaciones de teclas pueden hacer lo mismo.
566 .Sh QUIRKS
567 .Nm
568 te da "quirks" (o forzados) ventanas que tienen que ser tratas de manera especial,
569 como por ejemplo, popups, aplicaciones de pantalla completa, etc.
570 .Pp
571 Los "quirks" (o forzados) por defecto son:
572 .Pp
573 .Bl -tag -width "OpenOffice.org N.M:VCLSalFrame<TAB>XXX" -offset indent -compact
574 .It Firefox\-bin:firefox\-bin
575 TRANSSZ
576 .It Firefox:Dialog
577 FLOAT
578 .It Gimp:gimp
579 FLOAT + ANYWHERE
580 .It MPlayer:xv
581 FLOAT + FULLSCREEN
582 .It OpenOffice.org 2.4:VCLSalFrame
583 FLOAT
584 .It OpenOffice.org 3.1:VCLSalFrame
585 FLOAT
586 .It pcb:pcb
587 FLOAT
588 .It xine:Xine Window
589 FLOAT + ANYWHERE
590 .It xine:xine Panel
591 FLOAT + ANYWHERE
592 .It xine:xine Video Fullscreen Window
593 FULLSCREEN + FLOAT
594 .It Xitk:Xitk Combo
595 FLOAT + ANYWHERE
596 .It Xitk:Xine Window
597 FLOAT + ANYWHERE
598 .It XTerm:xterm
599 XTERM_FONTADJ
600 .El
601 .Pp
602 Los "quirks" (o forzados) se describen a continuación:
603 .Pp
604 .Bl -tag -width "XTERM_FONTADJ<TAB>XXX" -offset indent -compact
605 .It FLOAT
606 Esta ventana no tiene que ser acomodada, pero le permitimos flotar libremente.
607 .It TRANSSZ
608 Ajusta el tamaño de las ventanas transitorias que son demasiado pequeñas utilizando dialog_ratio
609 (ver
610 .Sx ARCHIVOS DE CONFIGURACIÓN ) .
611 .It ANYWHERE
612 Permite que la ventana se ponga donde quiera.
613 .It XTERM_FONTADJ
614 Ajusta las fuentes de xterm cuando se redimenciona.
615 .It FULLSCREEN
616 Quita el borde para permitir las ventanas en pantalla completa.
617 .It FOCUSPREV
618 El enfoque de salida fuerza la solicitud de aplicacisn que 
619 anteriormente se centraba en la aplicacion anterior del stack.
620 .El
621 .Pp
622 Las configuraciones de "quirks" (o forzados) en el archivo de configuración se ven a continuación:
623 .Pp
624 .Dl quirk[<clases>:<nombre>] = <quirk> [ + <quirk> ... ]
625 .Pp
626 .Aq clases
627 y
628 .Aq nombre
629 especifica la ventana en la cual el "quirk(s)" (o forzados) se aplica, y
630 .Aq quirk
631 es uno de los "quirks" (o forzados) de la lista.
632 Por ejemplo:
633 .Bd -literal -offset indent
634 quirk[MPlayer:xv] = FLOAT + FULLSCREEN # dejamos que mplayer funcione libremente
635 quirk[pcb:pcb] = NONE  # borramos el quirk existente
636 .Ed
637 .Pp
638 Podes obtener
639 .Aq clases
640 y
641 .Aq nombre
642 corriendo el programa xprop(1) y luego clickear en la ventana que quieras.
643 En el proximo ejemplo, podremos verlo en acción con una ventana de Firefox:
644 .Bd -literal -offset indent
645 $ xprop | grep WM_CLASS
646 WM_CLASS(STRING) = "Navigator", "Firefox"
647 .Ed
648 .Sh EWMH
649 .Nm
650 parcialmente implementa los Consejos de ventana extendido Manager (EWMH) especificacion.
651 Esto permite el control de las ventanas, asi como
652 .Nm
653 si a partir de scripts y programas externos. Esto se logra mediante
654 .Nm
655 responder a ciertos eventos ClientMessage. Desde la terminal de estos eventos
656 se puede enviar facilmente el uso de herramientas tales como
657 .Xr wmctrl 1
658 y
659 .Xr xdotool 1 .
660 para el
661 formato real de estos eventos ClientMessage, consulte la especificacion EWMH.
662 .Pp
663 La Identificacion de la ventana actualmente enfocada se almacena en el _NET_ACTIVE_WINDOW
664 propiedad de la ventana raiz. Esto puede ser usado por ejemplo para recuperar el
665 titulo de la ventana activa con
666 .Xr xprop 1
667 y
668 .Xr grep 1 :
669 .Bd -literal -offset indent
670 $ WINDOWID=`xprop \-root _NET_ACTIVE_WINDOW | grep \-o "0x.*"`
671 $ xprop \-id $WINDOWID WM_NAME | grep \-o "\\".*\\""
672 .Ed
673 .Pp
674 Una ventana se puede enfocar mediante el envio de un mensaje del cliente _NET_ACTIVE_WINDOW
675 a la ventana principal. Por ejemplo, usando
676 .Xr wmctrl 1
677 para enviar el mensaje
678 (suponiendo que 0x4a0000b es el ID de la ventana para ser especifico):
679 .Bd -literal -offset indent
680 $ wmctrl \-i \-a 0x4a0000b
681 .Ed
682 .Pp
683 Ventanas se pueden cerrar mediante el envmo de un mensaje del cliente _NET_CLOSE_WINDOW
684 a la ventana principal. Por ejemplo, usando
685 .Xr wmctrl 1
686 para enviar el mensaje
687 (suponiendo que 0x4a0000b es el ID de la ventana se cierre):
688 .Bd -literal -offset indent
689 $ wmctrl \-i \-c 0x4a0000b
690 .Ed
691 .Pp
692 Las ventanas se pueden flotar y flotar sin-mediante la adicion o eliminacion de la
693 _NET_WM_STATE_ABOVE atom desde _NET_WM_STATE la propiedad de la ventana
694 Esto se puede lograr mediante el envio de un mensaje a los clientes _NET_WM_STATE
695 raiz de la ventana. Por ejemplo, el siguiente cambia el estado de la flota.
696 .Xr wmctrl 1
697 para enviar el mensaje (suponiendo que 0x4a0000b es el ID de la ventana flotante
698 o no-flotante):
699 .Bd -literal -offset indent
700 $ wmctrl \-i \-r 0x4a0000b \-b toggle,_NET_WM_STATE_ABOVE
701 .Ed
702 .Pp
703 Ventanas flotantes tambien se puede cambiar el tamano y movido por el envio de un
704 _NET_MOVERESIZE_WINDOW Mensaje del cliente de la ventana raiz. Por ejemplo,
705 uso
706 .Xr wmctrl 1
707 para enviar el mensaje (suponiendo que 0x4a0000b es el ID de
708 la ventana a redimensionar / mover):
709 .Bd -literal -offset indent
710 $ wmctrl \-i \-r 0x4a0000b \-e 0,100,50,640,480
711 .Ed
712 .Pp
713 Esto mueve la ventana de (100,50) y cambia el tamaqo a 640x480.
714 .Pp
715 Todos los eventos _NET_MOVERESIZE_WINDOW recibido por las ventanas apiladas se ignoran.
716 .Pp
717 .Sh SIGNALS
718 Enviando
719 .Nm
720 una senal de HUP reinicia scrotwm.
721 .Pp
722 .Sh ARCHIVOS
723 .Bl -tag -width "/etc/scrotwm.confXXX" -compact
724 .It Pa ~/.scrotwm.conf
725 .Nm
726 archivo de configuración especifico del usuario.
727 .It Pa /etc/scrotwm.conf
728 .Nm
729 configuraciones globales.
730 .El
731 .Sh HISTORIA
732 .Nm
733 fue inspirado en xmonad y dwm.
734 .Sh AUTORES
735 .An -nosplit
736 .Pp
737 .Nm
738 fue escrito por
739 .An Marco Peereboom Aq marco@peereboom.us ,
740 .An Ryan Thomas McBride Aq mcbride@countersiege.com
741 and
742 .An Darrin Chandler Aq dwchandler@stilyagin.com .
743 .Sh BUGS
744 Actualmente el menu, se llama con
745 .Cm M-p ,
746 depende de dmenu.