1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
|
.\" -*- mode: troff; coding: utf-8 -*-
.\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
.ie n \{\
. ds C` ""
. ds C' ""
'br\}
.el\{\
. ds C`
. ds C'
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode transform.
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\"
.\" If the F register is >0, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD. Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.\"
.\" Avoid warning from groff about undefined register 'F'.
.de IX
..
.nr rF 0
.if \n(.g .if rF .nr rF 1
.if (\n(rF:(\n(.g==0)) \{\
. if \nF \{\
. de IX
. tm Index:\\$1\t\\n%\t"\\$2"
..
. if !\nF==2 \{\
. nr % 0
. nr F 2
. \}
. \}
.\}
.rr rF
.\" ========================================================================
.\"
.IX Title "ICEWM 1"
.TH ICEWM 1 2024-05-20 "icewm 3.5.0" "User Commands"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SS NAME
.IX Subsection "NAME"
.Vb 1
\& icewm \- lightweight X11 window manager
.Ve
.SS SYNOPSIS
.IX Subsection "SYNOPSIS"
\&\fBicewm\fR [\fIOPTIONS\fR]
.SS DESCRIPTION
.IX Subsection "DESCRIPTION"
\&\fBicewm\fR is a window manager for the X11 window system.
It aims to be small, fast and familiar to new users.
.PP
\&\fBicewm\fR is called a re-parenting window manager,
because it draws small frames around application windows.
By dragging this frame with the mouse, windows are resized or moved.
.PP
Because windows may overlap, \fBicewm\fR is also a stacking window manager.
Many windows may exist, some hidden behind others.
.PP
\&\fBicewm\fR supports a configurable number of virtual desktops. These are
called workspaces. Related windows are grouped on a dedicated workspace.
By switching between workspaces, the user can attend to different tasks,
while keeping oversight. This is supported by a task bar and a pager.
.PP
The installation comes with several themes. Choose a theme via a menu.
.PP
\&\fBicewm\fR is compliant with the ICCCM and EWMH window manager specifications.
.SS PROGRAMS
.IX Subsection "PROGRAMS"
The \fBicewm\fR package includes several programs:
.IP \fBicewm\fR\|(1) 4
.IX Item "icewm"
The actual window manager. It positions application windows on screen
and decorates them with borders. It gives input focus to the current
active application. \fBicewm\fR supports different focus modes, which are
explained below. It draws a small task bar at the bottom of the screen,
that gives easy access to programs, to virtual desktops, to active
applications, and to a small set of monitoring applets.
.IP \fBicewmbg\fR\|(1) 4
.IX Item "icewmbg"
The background setting application. It can assign plain background color
or images in different formats to the X background. Each workspace can
have its own background. It supports semitransparency. Semitransparent
background image and colour can be configured. When the background image
has changed then \fBicewmbg\fR\|(1) can be notified to update the background.
Multi-head monitor setups are fully supported. See the \fBicewmbg\fR\|(1).
.IP \fBicewm\-session\fR\|(1) 4
.IX Item "icewm-session"
\&\fBicewm\-session\fR\|(1) is the preferred program to start the IceWM system.
It first loads additional environment variables from the optional
\&\fIenv\fR file. Then it starts \fBicewmbg\fR\|(1) and \fBicewm\fR. It also runs
the \fIstartup\fR script and implements basic session management.
On termination the \fIshutdown\fR script will be run first, then
\&\fBicewm\-session\fR\|(1) will terminate \fBicewm\fR and \fBicewmbg\fR\|(1).
\&\fBicewm\-session\fR\|(1) will also start the optional \fBicesound\fR\|(1)
if you give it the \fB\-\-sound\fR option. See \fBicewm\-session\fR\|(1).
.IP \fBicesh\fR\|(1) 4
.IX Item "icesh"
A powerful tool to control window properties and to interact with the
window manager. It is typically used in shell scripts. See \fBicesh\fR\|(1).
.IP \fBicehelp\fR\|(1) 4
.IX Item "icehelp"
A small document browser that is used by \fBicewm\fR to display the
\&'IceWM manual' and some man pages.
.IP \fBicewmhint\fR\|(1) 4
.IX Item "icewmhint"
A utility for passing IceWM-specific window options to \fBicewm\fR.
The options are used to configure the first application that is started
subsequently. See \fBicewmhint\fR\|(1).
.IP \fBicesound\fR\|(1) 4
.IX Item "icesound"
Plays audio files on GUI events that are raised by \fBicewm\fR.
It supports ALSA, AO and OSS. See the \fBicesound\fR\|(1) man page.
.IP \fBicewm\-menu\-fdo\fR\|(1) 4
.IX Item "icewm-menu-fdo"
Generate an \fBicewm\fR menu with executable desktop applications
according to XDG specifications. See the \fBicewm\-menu\-fdo\fR\|(1) man page.
.IP \fBicewm\-set\-gnomewm\fR\|(1) 4
.IX Item "icewm-set-gnomewm"
Configures GNOME to start IceWM instead of its own WM.
.SS OPTIONS
.IX Subsection "OPTIONS"
.SS "COMMON OPTIONS"
.IX Subsection "COMMON OPTIONS"
Each of the IceWM executables supports the following options:
.IP "\fB\-c\fR, \fB\-\-config\fR=\fIFILE\fR" 4
.IX Item "-c, --config=FILE"
Use \fIFILE\fR as the source of configuration options. By default \fBicewm\fR
looks for a file named \fIpreferences\fR. This is a readable text file
that can be modified with the help of a text editor.
.IP "\fB\-t\fR, \fB\-\-theme\fR=\fINAME\fR" 4
.IX Item "-t, --theme=NAME"
Use \fINAME\fR as the name of the \fBicewm\fR theme to use. A theme defines
the look and feel of \fBicewm\fR, like colors, fonts and buttons.
.IP "\fB\-d\fR, \fB\-\-display\fR=\fIDISPLAY\fR" 4
.IX Item "-d, --display=DISPLAY"
Connect to the X11 server on \fIDISPLAY\fR. By default
the environment variable \f(CW\*(C`DISPLAY\*(C'\fR is used.
.IP "\fB\-o\fR, \fB\-\-output=FILE\fR" 4
.IX Item "-o, --output=FILE"
Redirect all output to \fIFILE\fR.
A leading tilde or environment variable is expanded.
.IP \fB\-\-sync\fR 4
.IX Item "--sync"
This option specifies to use a slower synchronous communication mode
with the X11 server. This is irrelevant for normal use.
.IP "\fB\-h\fR, \fB\-\-help\fR" 4
.IX Item "-h, --help"
Gives a complete list of all the available command-line options with
some very brief explanation.
.IP "\fB\-V\fR, \fB\-\-version\fR" 4
.IX Item "-V, --version"
Shows the software release version for this program.
.SS "ICEWM OPTIONS"
.IX Subsection "ICEWM OPTIONS"
The \fBicewm\fR program supports some additional options:
.IP "\fB\-a\fR, \fB\-\-alpha\fR" 4
.IX Item "-a, --alpha"
Use a 32\-bit visual for translucency. This can also be set in
the preferences file as \f(CW\*(C`Alpha=1\*(C'\fR.
.IP \fB\-\-replace\fR 4
.IX Item "--replace"
Instructs \fBicewm\fR to replace an existing window manager. Provided that
the window manager being replaced is ICCCM 2.0 compliant, once it
notices that it is to be replaced it will cease operations and typically
stop execution. This allows \fBicewm\fR to establish itself as the only
active window manager.
.IP "\fB\-r\fR, \fB\-\-restart\fR" 4
.IX Item "-r, --restart"
Tell \fBicewm\fR to restart itself. This reloads the configuration from
file. If no window manager is active, then it starts one.
.IP "\fB\-s\fR, \fB\-\-splash\fR=\fIIMAGE\fR" 4
.IX Item "-s, --splash=IMAGE"
Briefly show \fIIMAGE\fR on startup in the center of the screen.
This can also be set in the preferences file as Splash=\f(CW\*(C`image.jpg\*(C'\fR.
.IP \fB\-\-configured\fR 4
.IX Item "--configured"
Shows a list of configuration options that were enabled when \fBicewm\fR
was compiled from source code. This can be helpful if one suspects some
functionality may be missing.
.IP \fB\-\-directories\fR 4
.IX Item "--directories"
Gives a list of directories where \fBicewm\fR will look for configuration
data. This list is printed in the actual order in which \fBicewm\fR uses
it to search for configuration files.
.IP "\fB\-l\fR, \fB\-\-list\-themes\fR" 4
.IX Item "-l, --list-themes"
\&\fBicewm\fR will search all the configuration directories for theme files
and print a list of all found themes.
.IP "\fB\-i\fR, \fB\-\-install\fR=\fITHEME\fR" 4
.IX Item "-i, --install=THEME"
Install \fITHEME\fR from icewm-extra and exit. When \fITHEME\fR is \fIlist\fR,
print a listing of available themes to install.
.IP "\fB\-p\fR, \fB\-\-postpreferences\fR" 4
.IX Item "-p, --postpreferences"
This gives a long list of all the internal \fBicewm\fR options with their
actual values after \fBicewm\fR has processed all of the configuration and
theme files. In some advanced scenarios this can be helpful to inspect
which configuration was chosen or whether option formatting was correct.
.IP \fB\-\-rewrite\-preferences\fR 4
.IX Item "--rewrite-preferences"
Overwrite an existing preferences file with an icewm default preferences,
but preserve all modifications insofar they deviate from the defaults.
.IP \fB\-\-extensions\fR 4
.IX Item "--extensions"
Give a list of the current X extensions, their versions and status.
.IP \fB\-\-trace\fR=\fIconf\fR,\fIfont\fR,\fIicon\fR,\fIprog\fR,\fIsystray\fR 4
.IX Item "--trace=conf,font,icon,prog,systray"
Enable tracing of the paths that are used to load configuration,
fonts, icons, executed programs, and/or system tray applets.
.SS USAGE
.IX Subsection "USAGE"
.SS TASKBAR
.IX Subsection "TASKBAR"
On startup \fBicewm\fR launches the task bar at the bottom of the screen.
The task bar consists from left to right of the following components:
.PP
The \fIMenu\fR button in the lower left corner gives access to the \fBicewm\fR
root menu. This menu has sub-menus to start applications, to control
\&\fBicewm\fR settings, and the \fBicewm\fR \fILogout\fR menu.
.PP
The \fIShow Desktop\fR button unmaps all application windows to fully
uncover the desktop.
.PP
The \fIWindow List Menu\fR button gives access to a menu with a list of
active windows for the current workspace and a list of workspaces
with sub-menus for their active application windows.
.PP
The \fIToolbar\fR is a list of icons for applications that are defined in
the toolbar configuration file.
.PP
The \fIWorkspace Pane\fR shows one button for each workspace. The current
workspace is indicated by a pressed button. Clicking another workspace
switches to that workspace. Press left mouse, then the Shift key, then
release the left mouse, takes the current window to that workspace.
Press left, then Alt, then release left, moves only the focused window
to other workspace, without changing the current workspace.
.PP
The workspaces are defined in the \fIpreferences\fR file. To change a name
for only this session, double click, edit the name and hit Enter.
When \f(CW\*(C`PagerShowPreview\*(C'\fR is turned on, a small graphical window summary
for each workspace is shown. They support drag-and-drop: dragging a
Firefox tab to a workspace button changes the current workspace.
Then releasing it moves that tab to a new window in that workspace.
.PP
The \fITask Pane\fR consists of a list of wide buttons for each application
that is running on the current workspace, or all workspaces if
\&\f(CW\*(C`TaskBarShowAllWindows=1\*(C'\fR. Each task button shows the
application icon and the application title. The active application is
indicated by a pressed button. This is the application that has input
focus. Pressing another button activates that application: it is
brought to the foreground and receives input focus. Other mouse
controlled activities on the window buttons are: dragging window buttons
with the left mouse button to rearrange the order, closing the application
window with \f(CW\*(C`Alt\*(C'\fR + middle button, lowering the application window with
\&\f(CW\*(C`Ctrl\*(C'\fR + middle button, or bringing the application window to the current
workspace with \f(CW\*(C`Shift\*(C'\fR + middle button if \f(CW\*(C`TaskBarShowAllWindows=1\*(C'\fR.
.PP
If there are not many application buttons then a stretch of plain task
bar is visible. Clicking on it with the right mouse button gives the
task bar menu. Even with a full task pane, this menu can be usually
accessed by right-clicking the bottom right corner of the taskbar.
.PP
The \fITray Applet\fR shows system tray objects.
.PP
The \fIAPM Applet\fR shows battery power status.
.PP
The \fINet Applet\fR shows network activity. Network devices to monitor
are given by the \f(CW\*(C`NetworkStatusDevice\*(C'\fR option.
.PP
The \fIMemory Applet\fR monitors memory usage.
.PP
The \fICPU Applet\fR monitors processor utilization.
.PP
The \fIMailbox Applet\fR monitors mailbox status changes.
See the section MAILBOX MONITORING below.
.PP
The \fIClock Applet\fR shows the current time and date. It is configured
by the \f(CW\*(C`TimeFormat\*(C'\fR option.
.PP
The \fITask Bar Collapse\fR button collapses the task bar and hides it.
.PP
Not all \fBicewm\fR applets may show up on the task bar. They must have
been enabled during configuration of the \fBicewm\fR software. Their
appearance is also controlled by options in the \fIpreferences\fR file.
.SS "INPUT FOCUS"
.IX Subsection "INPUT FOCUS"
Of all visible windows only one can be the active window. This is the
window that has input focus. It is the primary receiver of keyboard
and mouse events and hence one can interact with the application that
created that window. A primary task of a window manager is to allow the
user to switch input focus between different windows. The primary means
to do this is the mouse pointer. By moving the mouse pointer over the
screen to another window, and perhaps also by clicking on a window,
input focus can be directed.
.PP
The \f(CW\*(C`FocusMode\*(C'\fR option controls the way \fBicewm\fR gives input focus to
applications. It is initialized by the \fIfocus_mode\fR configuration
file. The focus mode is set via the \fIFocus\fR menu. \fBicewm\fR supports
six focus models:
.IP "\fB1. Click-to-focus\fR" 4
.IX Item "1. Click-to-focus"
The default focus mode. In this mode changing input focus requires to
click a window with the left mouse button. The window is raised if
needed. When an application requests focus its task pane button
flashes. This gives the option to honor this request or to ignore it.
When a new application window appears it automatically receives focus.
Also when a hidden application raises to the front it receives focus.
.IP "\fB2. Sloppy-mouse-focus\fR" 4
.IX Item "2. Sloppy-mouse-focus"
Sets input focus merely by moving the mouse pointer over a window. It
is called sloppy, because if the mouse then leaves the window and moves
to the desktop background the input focus remains with the last active
window. When a window receives focus it is raised. When an application
requests focus its task pane button flashes. A new application or an
application that raises to the front automatically receives focus.
.IP "\fB3. Explicit-focus\fR" 4
.IX Item "3. Explicit-focus"
Focus is even more user-controlled than \fBClick-to-focus\fR. When a
window receives focus it is not raised by default, unless the frame
border is clicked. No flashing occurs when an application requests
focus. When a new application window appears it does not receive focus.
Only by explicit clicking on a window is focus directed.
.IP "\fB4. Strict-mouse-focus\fR" 4
.IX Item "4. Strict-mouse-focus"
Like \fBSloppy\fR but focus remains with the last window. New applications
don't receive focus and are mapped behind other windows. When an
application raises to the front it still does not get focus.
.IP "\fB5. Quiet-sloppy-focus\fR" 4
.IX Item "5. Quiet-sloppy-focus"
Like \fBSloppy\fR but no disturbing flashing occurs on the task bar when an
application requests focus.
.IP "\fB6. Custom-mode\fR" 4
.IX Item "6. Custom-mode"
A focus mode that is defined by the following ten options:
\&\f(CW\*(C`ClickToFocus\*(C'\fR,
\&\f(CW\*(C`FocusOnAppRaise\*(C'\fR,
\&\f(CW\*(C`RequestFocusOnAppRaise\*(C'\fR,
\&\f(CW\*(C`RaiseOnFocus\*(C'\fR,
\&\f(CW\*(C`RaiseOnClickClient\*(C'\fR,
\&\f(CW\*(C`FocusChangesWorkspace\*(C'\fR,
\&\f(CW\*(C`FocusOnMap\*(C'\fR,
\&\f(CW\*(C`FocusOnMapTransient\*(C'\fR,
\&\f(CW\*(C`FocusOnMapTransientActive\*(C'\fR,
\&\f(CW\*(C`MapInactiveOnTop\*(C'\fR.
.Sp
All non-Custom focus modes override these ten options.
.PP
Apart from the mouse, \fBicewm\fR supports changing input focus in two
ways by keyboard. By pressing \f(CW\*(C`Alt+Esc\*(C'\fR or \f(CW\*(C`Alt+Shift+Esc\*(C'\fR,
input focus is immediately changed to the next or previous window,
which will be raised to make it fully visible. The other method
involves the quick switch.
.SS "QUICK SWITCH"
.IX Subsection "QUICK SWITCH"
The \fBQuickSwitch\fR is a means to quickly and interactively change
the input focus to another window. It is activated by pressing the
\&\f(CW\*(C`Alt+Tab\*(C'\fR or \f(CW\*(C`Alt+Shift+Tab\*(C'\fR key combination. A window pops up
in the centre of the screen with a list of windows to choose from.
A narrow band indicates a selection: the candidate window that will
be activated to receive input focus when the Alt key is released.
.PP
The selection can be changed by repeatedly pressing the Tab key, while
keeping the Alt key down. If a Shift key is also down, the direction of
traversal is reversed. Or use the scroll wheel of the mouse. Or use
one of the digit keys to select the corresponding window from the list.
Arrow keys are also supported, as well as the Home and End key.
.PP
To make a selected window the active window, just release the Alt key,
or hit the Return key, or click on it. To cancel the QuickSwitch,
press Escape or click outside of the QuickSwitch window.
.PP
A selected window can be closed by Delete, \f(CW\*(C`Alt+F4\*(C'\fR, or the middle
mouse button. While the QuickSwitch window is up, one can still change
workspace with the usual workspace hotkeys.
.PP
The QuickSwitch has two distinct modes: vertical and horizontal.
The window list can include all windows or be limited to the current
workspace. There is an option to raise the selected candidate.
See the many preferences available for the QuickSwitch.
.SS "WINDOW PLACEMENT"
.IX Subsection "WINDOW PLACEMENT"
A second important task of a window manager is to place new windows on
the screen. By default \fBicewm\fR chooses a placement with minimal
overlap, but this is determined by the \f(CW\*(C`SmartPlacement\*(C'\fR option in the
\&\fIpreferences\fR file. If \f(CW\*(C`SmartPlacement\*(C'\fR is turned off then windows
are placed in sequence from left to right and top to bottom. One can
also turn on \f(CW\*(C`ManualPlacement\*(C'\fR. Then new windows appear initially in
the top left corner and the mouse cursor changes into a fist. By moving
the fist cursor to a suitable location and clicking the new window will
appear at the mouse click location.
.SS "WINDOW LAYERS"
.IX Subsection "WINDOW LAYERS"
Windows can overlap. Which window appears on top is determined by three
features. Newer windows appear over older windows. By clicking on a
window it is raised to the top. But both are overruled by the window
layer. Windows can be placed in different layers via the \fILayers\fR
menu. Click with the right mouse button on the window frame and select
\&\fILayer\fR. From there choose one of seven window layers. These are
ordered from higher to lower. Windows in higher layers appear over
windows in lower layers.
.SS "TABBED WINDOWS"
.IX Subsection "TABBED WINDOWS"
A window frame may contain multiple client windows. Only one client can
be visible, while the others are hidden. This is called tabbing. This
can be helpful to reduce the number of visible windows. To create a tab,
drag the title bar with the middle mouse button, while holding down a
shift key, onto the title bar of another frame. The two title bars will
start to flash to indicate that they can merge. Release the mouse button
to merge the client of the upper window to the lower frame. Now the
lower frame will have multiple clients, called tabs. The title bar will
show a vertical bar with triple dots to indicate this.
To change the current tab either:
.IP \(bu 4
Click on the triple dots next to the vertical bar.
.IP \(bu 4
Use \f(CW\*(C`KeyWinNext=Alt+F6\*(C'\fR to select the next tab.
.IP \(bu 4
Use \f(CW\*(C`KeyWinPrev=Alt+Shift+F6\*(C'\fR for the previous tab.
.IP \(bu 4
Use the QuickSwitch.
.IP \(bu 4
Use the window list window.
.IP \(bu 4
Use a submenu in the window menu.
.PP
To change the mouse binding for creating tabs, modify
\&\fBMouseWinTabbing\fR=\f(CW\*(C`Shift+Pointer_Button2\*(C'\fR. Another
useful setting is \fBMouseWinTabbing\fR=\f(CW\*(C`Pointer_Button1\*(C'\fR.
.PP
\&\f(CW\*(C`Alt+F4\*(C'\fR closes all tabs. To close just the active tab add to \f(CW\*(C`keys\*(C'\fR:
.PP
.Vb 1
\& key "Ctrl+Shift+F4" icesh \-f close
.Ve
.PP
To move the active tab to its own window frame by key, add to \f(CW\*(C`keys\*(C'\fR:
.PP
.Vb 1
\& key "Alt+u" icesh \-f untab
.Ve
.PP
To open all chrome windows in the same frame add this to \f(CW\*(C`winoptions\*(C'\fR:
.PP
.Vb 1
\& google\-chrome.frame: chrome
.Ve
.SS WORKSPACES
.IX Subsection "WORKSPACES"
\&\fBicewm\fR supports multiple virtual desktops called workspaces. A
workspace is like a screen where a subset of all application windows are
mapped. Thanks to multiple workspaces we can more easily manage a
large number of applications. The number of workspaces and their names
are configurable in the \fIpreferences\fR file through the
\&\f(CW\*(C`WorkspaceNames\*(C'\fR option. By default four workspaces are created
with the names 1, 2, 3 and 4 thus:
.PP
.Vb 1
\& WorkspaceNames=" 1 ", " 2 ", " 3 ", " 4 "
.Ve
.PP
This syntax is typical for \fBicewm\fR options that receive multiple
values. It is a list of comma-separated values each of which can be
quoted.
.PP
The workspaces are visible on the toolbar. One can switch to a
different workspace by pressing the workspace button in the toolbar,
but after becoming familiar with the 'keyboard shortcuts' below one will
want to use a hotkey to choose a workspace. If the \f(CW\*(C`EdgeSwitch\*(C'\fR
options is enabled in the \fIpreferences\fR file (with sub-options
\&\f(CW\*(C`HorizontalEdgeSwitch\*(C'\fR and \f(CW\*(C`VerticalEdgeSwitch\*(C'\fR) then one can move to
the next or previous workspace by moving the mouse to the edge of the
screen. The \f(CW\*(C`ContinuousEdgeSwitch\*(C'\fR option enables continuous movement
to subsequent workspaces. The \f(CW\*(C`EdgeSwitchDelay\*(C'\fR option says how long
to wait before a change of workspace occurs.
.PP
To move an application window to a different workspace one can use a
keyboard shortcut. Another option is to select the \fIMove To\fR submenu
in the window menu of the window frame.
.SS "DRAG AND DROP"
.IX Subsection "DRAG AND DROP"
The task bar supports drag and drop operations. When a drag
is in progress, the destination window can be activated by
hovering the drag icon over the task button for that window.
Alternatively, the current workspace can be changed by
hovering the drag icon over the desired workspace button.
When edge switching is enabled, the current workspace can
also be changed by bringing the drag icon to the screen edge.
.SS "ADDRESS BAR"
.IX Subsection "ADDRESS BAR"
The task bar contains a command-line prompt called the address bar,
if \fBEnableAddressBar\fR=1. It is always shown when \fBShowAddressBar\fR=1,
otherwise it is activated by \fBKeySysAddressBar\fR=\f(CW\*(C`Alt+Ctrl+Space\*(C'\fR.
In it a shell command can be typed, which is executed by the
\&\fBAddressBarCommand\fR=\f(CW\*(C`/bin/sh\*(C'\fR when pressing \f(CW\*(C`Enter\*(C'\fR.
On \f(CW\*(C`Control+Enter\*(C'\fR this command is executed in a new terminal
as given by \fBTerminalCommand\fR.
.PP
Commands are executed relative to the working directory of icewm.
This can be shown by executing \f(CW\*(C`pwd\*(C'\fR. It can be changed using the \f(CW\*(C`cd\*(C'\fR
command. Without argument it defaults to the home directory. With one
argument it is changed. This argument is expanded when it starts with a
dollar or tilde. When it is equal to \f(CW\*(C`\-\*(C'\fR, it reverts to the previous
directory.
.PP
The address bar has a history that is navigable by \fIUp\fR and \fIDown\fR.
It supports file completion using \f(CW\*(C`Tab\*(C'\fR or \f(CW\*(C`Ctrl+I\*(C'\fR, cut/copy/paste
and these editing operations:
.IP "Ctrl+a: select all" 4
.IX Item "Ctrl+a: select all"
.PD 0
.IP "Ctrl+backslash: deselect all" 4
.IX Item "Ctrl+backslash: deselect all"
.IP "Ctrl+u: delete selected or to line start" 4
.IX Item "Ctrl+u: delete selected or to line start"
.IP "Ctrl+v: paste selected" 4
.IX Item "Ctrl+v: paste selected"
.IP "Ctrl+w: delete selected or previous word" 4
.IX Item "Ctrl+w: delete selected or previous word"
.IP "Ctrl+x: cut selection" 4
.IX Item "Ctrl+x: cut selection"
.IP "Ctrl+c: copy selection" 4
.IX Item "Ctrl+c: copy selection"
.IP "Ctrl+i: completion" 4
.IX Item "Ctrl+i: completion"
.IP "Ctrl+Left: back a word" 4
.IX Item "Ctrl+Left: back a word"
.IP "Ctrl+Right: forward a word" 4
.IX Item "Ctrl+Right: forward a word"
.IP "Ctrl+Shift+Backspace: delete to beginning" 4
.IX Item "Ctrl+Shift+Backspace: delete to beginning"
.IP "Ctrl+Shift+Delete: delete to end" 4
.IX Item "Ctrl+Shift+Delete: delete to end"
.IP "Ctrl+Delete: delete word" 4
.IX Item "Ctrl+Delete: delete word"
.IP "Ctrl+Backspace: delete previous word" 4
.IX Item "Ctrl+Backspace: delete previous word"
.IP "Shift+Delete: cut selection" 4
.IX Item "Shift+Delete: cut selection"
.IP "Shift+Insert: paste selected" 4
.IX Item "Shift+Insert: paste selected"
.IP "Tab: completion" 4
.IX Item "Tab: completion"
.IP "Left: move cursor left" 4
.IX Item "Left: move cursor left"
.IP "Right: move cursor right" 4
.IX Item "Right: move cursor right"
.IP "Home: move cursor to line start" 4
.IX Item "Home: move cursor to line start"
.IP "End: move cursor to line end" 4
.IX Item "End: move cursor to line end"
.IP "Delete: delete next character" 4
.IX Item "Delete: delete next character"
.IP "Backspace: delete previous character" 4
.IX Item "Backspace: delete previous character"
.PD
.SS "WINDOW LIST"
.IX Subsection "WINDOW LIST"
The window list window shows a list of all workspaces. For each
workspace it shows the window titles of the windows that are mapped
on it. The bottom entry reads \f(CW\*(C`All Workspaces\*(C'\fR. It holds the sticky
windows. These windows are mapped in all workspaces.
.PP
The window list window is normally hidden. Choose one of the following
four methods to make it visible:
.IP \(bu 4
Select the bottom window list menu entry.
.IP \(bu 4
Press the \f(CW\*(C`KeySysWindowList=Ctrl+Alt+Esc\*(C'\fR key.
.IP \(bu 4
Press the right Windows key if \f(CW\*(C`Win95Keys=1\*(C'\fR
.IP \(bu 4
Press the \f(CW\*(C`DesktopWinListButton=2\*(C'\fR mouse button in the root window.
.IP \(bu 4
Press the middle mouse button in a workspace button on the task bar.
.PP
A single-click on a window entry selects it. A group of windows can
be selected by \f(CW\*(C`Shift+Pointer_Button1\*(C'\fR or by dragging with the left
mouse button. Use \f(CW\*(C`Ctrl+Pointer_Button1\*(C'\fR to individually select
windows in a multi-selection. A right mouse click over a selection
will popup the system menu for this selection. To close the selected
windows, press \f(CW\*(C`Delete\*(C'\fR. Press \f(CW\*(C`Shift+Delete\*(C'\fR to forcefully kill them.
Right mouse click below the sticky windows for a menu with window
arranging actions.
.PP
Double-click on a workspace to switch to it. Double-click on a window
to activate it. Or navigate by arrow keys and press Enter.
The space bar toggles a selection of a window. \f(CW\*(C`Ctrl+a\*(C'\fR and \f(CW\*(C`Ctrl+/\*(C'\fR
will select the entire list of windows. \f(CW\*(C`Ctrl+\e\e\*(C'\fR deselects everything.
Press the first letter of a window title to navigate to it and select
it. If titles of multiple windows start with the same letter then
repeatedly pressing the first letter cycles over those windows.
\&\f(CW\*(C`Home\*(C'\fR selects the first entry and \f(CW\*(C`End\*(C'\fR the last. \f(CW\*(C`PageUp\*(C'\fR and
\&\f(CW\*(C`PageDown\*(C'\fR move up or down by ten entries. Combine this with the
\&\f(CW\*(C`Shift\*(C'\fR key to extend a selection over the range of motion.
.SS "SYSTEM DIALOG"
.IX Subsection "SYSTEM DIALOG"
The system dialog offers quick access to a set of general controls.
It can lock the screen, suspend the system, logout or cancel a pending
logout, reboot the system, shutdown the system, show the window list,
restart icewm, show the about dialog, reload the winoptions file or
the keys file. It is activated by \fBKeySysDialog\fR=\f(CW\*(C`Ctrl+Alt+Del\*(C'\fR.
To cancel it, hit the Escape key.
.SS "MAILBOX MONITORING"
.IX Subsection "MAILBOX MONITORING"
The task bar can show one or more icons to reflect the status of a
mailbox. The mailbox can be a local file or a remote POP or IMAP
account. For this a couple of options must be set. First,
\&\fITaskBarShowMailboxStatus\fR must be enabled, which it is by default.
Then the location of the mailbox must be set. Icewm first looks for
\&\fIMailBoxPath\fR in preferences. If this is unset, it looks at the
environment variables \f(CW\*(C`MAILPATH\*(C'\fR and \f(CW\*(C`MAIL\*(C'\fR. \fIMailBoxPath\fR may
contain a space-separated list of mailboxes, while \f(CW\*(C`MAILPATH\*(C'\fR may
contain a colon-separated list of mailboxes. If a mailbox starts
with a slash \f(CW\*(C`/\*(C'\fR, then it is a local file, otherwise a URL.
These are six examples of possible mailboxes:
.PP
.Vb 6
\& file:///var/spool/mail/captnmark
\& file:///home/captnmark/Maildir/
\& pop3://markus:%2f%40%3a@maol.ch/
\& pop3s://markus:password@pop.gmail.com/
\& imap://mathias@localhost/INBOX.Maillisten.icewm\-user
\& imaps://mathias:password@imap.gmail.com/INBOX
.Ve
.PP
The POP3S and IMAPS schemes use \f(CW\*(C`openssl\*(C'\fR for TLS/SSL encryption.
Note that for IceWM to access Gmail you must first configure
your Gmail account to enable POP3 or IMAP access.
Make sure you have secure file permissions on your IceWM
preferences file and the directory that contains it.
.PP
Reserved characters in the password, like \fIslash\fR, \fIat\fR and \fIcolon\fR
can be specified using escape sequences with a hexadecimal encoding
like \f(CW%2f\fR for the slash or \f(CW%40\fR for the at sign.
For example, to hex-encode \f(CW\*(C`!p@a%s&s~\*(C'\fR use this Perl snippet:
.PP
.Vb 2
\& perl \-e \*(Aqforeach(split("", $ARGV[0])) { printf "%%%02x", ord($_); };
\& print "\en";\*(Aq \*(Aq!p@a%s&s~\*(Aq
.Ve
.PP
Which will print:
.PP
.Vb 1
\& %21%40%23%24%25%5e%26%2a%7e
.Ve
.PP
This is the hex-encoded password. However, it is unwise to store a
password in your preferences. Consider a wallet extension for IceWM.
.PP
IceWM will check a mailbox periodically. The period in seconds can
be set by the \fIMailCheckDelay\fR option, which is 30 seconds by default.
.PP
Whenever new mail arrives, the mailbox icon will be highlighted.
The color will indicate if the mail has been read or not. Hovering
the mouse over the mailbox icon will show a tooltip with more details.
A command can be also be run on new mail. Set the \fINewMailCommand\fR
option. Its environment will have these variables set by IceWM:
.IP ICEWM_MAILBOX 4
.IX Item "ICEWM_MAILBOX"
The mailbox index number of \fIMailBoxPath\fR starting from 1.
.IP ICEWM_COUNT 4
.IX Item "ICEWM_COUNT"
The total number of messages in this mailbox.
.IP ICEWM_UNREAD 4
.IX Item "ICEWM_UNREAD"
The number of unread messages in this mailbox.
.SS "KEYBOARD LAYOUT SWITCHING"
.IX Subsection "KEYBOARD LAYOUT SWITCHING"
To control keyboard layouts on the task bar, define in \fIpreferences\fR
the option \fBKeyboardLayouts\fR to a comma-separated list of your
preferred keyboard layouts. For example:
.PP
.Vb 1
\& KeyboardLayouts = "de", "fr", "jp"
.Ve
.PP
A keyboard layout can simply be a name. Usually this is a two-letter
country code. See the directory \fI/usr/share/X11/xkb/symbols\fR for
a list of available keyboard layouts for your system. If it is
enclosed in double quotes, it can also be a space-separated list of
command-line arguments to an invocation of the \f(CW\*(C`setxkbmap\*(C'\fR program.
.PP
The first layout is the default. It will be installed when icewm starts.
The task bar will show the current keyboard layout. If an icon can
be found for the first two letters of the layout, then that icon
will be shown. Otherwise the first two letters of the name of the
layout will be shown.
.PP
Click on the current keyboard layout to cycle through all the
available keyboard layouts, or use the \fBKeySysKeyboardNext\fR key.
Click with the right mouse button to open a menu of all available
keyboard layouts.
.PP
It is also possible to configure a default keyboard layout for
each program individually in the \fBicewm\-winoptions\fR\|(5) file.
Whenever such a program receives input focus, icewm will install
this configured keyboard layout automatically. The keyboard status
on the task bar will be updated to reflect this.
.PP
Please note that for keyboard layout switching to work, the
\&\f(CW\*(C`setxkbmap\*(C'\fR program must be installed. To see your current
keyboard layout settings, do \f(CW\*(C`setxkbmap \-query\*(C'\fR.
.SS "KEYBOARD SHORTCUTS"
.IX Subsection "KEYBOARD SHORTCUTS"
\&\fBicewm\fR supports a large number of hotkeys to activate some behaviour
with a single key combination. These are all configurable in the
\&\fIpreferences\fR file. Here we give their preferences name, followed by
their default value in double quotes, and a short descriptions of their
effect.
.PP
Note that all use one or more key modifiers. Icewm supports the
following modifiers: Alt, AltGr, Ctrl, Hyper, Meta, Shift, Super.
Setting \fBModSuperIsCtrlAlt=1\fR makes the Super modifier an alias
for Ctrl+Alt.
.ie n .IP "\fBKeyWinRaise\fR=""Alt+F1""" 4
.el .IP \fBKeyWinRaise\fR=\f(CWAlt+F1\fR 4
.IX Item "KeyWinRaise=Alt+F1"
Raises the window that currently has input focus.
.ie n .IP "\fBKeyWinOccupyAll\fR=""Alt+F2""" 4
.el .IP \fBKeyWinOccupyAll\fR=\f(CWAlt+F2\fR 4
.IX Item "KeyWinOccupyAll=Alt+F2"
Makes the active window occupy all workspaces.
.ie n .IP "\fBKeyWinLower\fR=""Alt+F3""" 4
.el .IP \fBKeyWinLower\fR=\f(CWAlt+F3\fR 4
.IX Item "KeyWinLower=Alt+F3"
Lowers the window that currently has input focus.
.ie n .IP "\fBKeyWinClose\fR=""Alt+F4""" 4
.el .IP \fBKeyWinClose\fR=\f(CWAlt+F4\fR 4
.IX Item "KeyWinClose=Alt+F4"
Closes the active window.
.ie n .IP "\fBKeyWinRestore\fR=""Alt+F5""" 4
.el .IP \fBKeyWinRestore\fR=\f(CWAlt+F5\fR 4
.IX Item "KeyWinRestore=Alt+F5"
Restores the active window to its visible state.
.ie n .IP "\fBKeyWinNext\fR=""Alt+F6""" 4
.el .IP \fBKeyWinNext\fR=\f(CWAlt+F6\fR 4
.IX Item "KeyWinNext=Alt+F6"
Switches focus to the next window.
.ie n .IP "\fBKeyWinPrev\fR=""Alt+Shift+F6""" 4
.el .IP \fBKeyWinPrev\fR=\f(CWAlt+Shift+F6\fR 4
.IX Item "KeyWinPrev=Alt+Shift+F6"
Switches focus to the previous window.
.ie n .IP "\fBKeyWinMove\fR=""Alt+F7""" 4
.el .IP \fBKeyWinMove\fR=\f(CWAlt+F7\fR 4
.IX Item "KeyWinMove=Alt+F7"
Starts movement of the active window.
.ie n .IP "\fBKeyWinSize\fR=""Alt+F8""" 4
.el .IP \fBKeyWinSize\fR=\f(CWAlt+F8\fR 4
.IX Item "KeyWinSize=Alt+F8"
Starts resizing of the active window.
.ie n .IP "\fBKeyWinMinimize\fR=""Alt+F9""" 4
.el .IP \fBKeyWinMinimize\fR=\f(CWAlt+F9\fR 4
.IX Item "KeyWinMinimize=Alt+F9"
Iconifies the active window.
.ie n .IP "\fBKeyWinMaximize\fR=""Alt+F10""" 4
.el .IP \fBKeyWinMaximize\fR=\f(CWAlt+F10\fR 4
.IX Item "KeyWinMaximize=Alt+F10"
Maximizes the active window with borders.
.ie n .IP "\fBKeyWinMaximizeVert\fR=""Alt+Shift+F10""" 4
.el .IP \fBKeyWinMaximizeVert\fR=\f(CWAlt+Shift+F10\fR 4
.IX Item "KeyWinMaximizeVert=Alt+Shift+F10"
Maximizes the active window vertically.
.ie n .IP "\fBKeyWinMaximizeHoriz\fR=""undefined""" 4
.el .IP \fBKeyWinMaximizeHoriz\fR=\f(CWundefined\fR 4
.IX Item "KeyWinMaximizeHoriz=undefined"
Maximizes the active window horizontally.
.ie n .IP "\fBKeyWinFullscreen\fR=""Alt+F11""" 4
.el .IP \fBKeyWinFullscreen\fR=\f(CWAlt+F11\fR 4
.IX Item "KeyWinFullscreen=Alt+F11"
Maximizes the active window without borders.
.ie n .IP "\fBKeyWinRollup\fR=""Alt+F12""" 4
.el .IP \fBKeyWinRollup\fR=\f(CWAlt+F12\fR 4
.IX Item "KeyWinRollup=Alt+F12"
Rolls up the active window.
.ie n .IP "\fBKeyWinHide\fR=""Alt+Shift+F12""" 4
.el .IP \fBKeyWinHide\fR=\f(CWAlt+Shift+F12\fR 4
.IX Item "KeyWinHide=Alt+Shift+F12"
Hides the active window.
.ie n .IP "\fBKeyWinMenu\fR=""Alt+Space""" 4
.el .IP \fBKeyWinMenu\fR=\f(CWAlt+Space\fR 4
.IX Item "KeyWinMenu=Alt+Space"
Posts the window menu.
.ie n .IP "\fBKeyWinArrangeNW\fR=""Ctrl+Alt+KP_7""" 4
.el .IP \fBKeyWinArrangeNW\fR=\f(CWCtrl+Alt+KP_7\fR 4
.IX Item "KeyWinArrangeNW=Ctrl+Alt+KP_7"
Moves the active window to the top left corner of the screen.
.ie n .IP "\fBKeyWinArrangeN\fR=""Ctrl+Alt+KP_8""" 4
.el .IP \fBKeyWinArrangeN\fR=\f(CWCtrl+Alt+KP_8\fR 4
.IX Item "KeyWinArrangeN=Ctrl+Alt+KP_8"
Moves the active window to the top middle of the screen.
.ie n .IP "\fBKeyWinArrangeNE\fR=""Ctrl+Alt+KP_9""" 4
.el .IP \fBKeyWinArrangeNE\fR=\f(CWCtrl+Alt+KP_9\fR 4
.IX Item "KeyWinArrangeNE=Ctrl+Alt+KP_9"
Moves the active window to the top right of the screen.
.ie n .IP "\fBKeyWinArrangeE\fR=""Ctrl+Alt+KP_6""" 4
.el .IP \fBKeyWinArrangeE\fR=\f(CWCtrl+Alt+KP_6\fR 4
.IX Item "KeyWinArrangeE=Ctrl+Alt+KP_6"
Moves the active window to the middle right of the screen.
.ie n .IP "\fBKeyWinArrangeSE\fR=""Ctrl+Alt+KP_3""" 4
.el .IP \fBKeyWinArrangeSE\fR=\f(CWCtrl+Alt+KP_3\fR 4
.IX Item "KeyWinArrangeSE=Ctrl+Alt+KP_3"
Moves the active window to the bottom right of the screen.
.ie n .IP "\fBKeyWinArrangeS\fR=""Ctrl+Alt+KP_2""" 4
.el .IP \fBKeyWinArrangeS\fR=\f(CWCtrl+Alt+KP_2\fR 4
.IX Item "KeyWinArrangeS=Ctrl+Alt+KP_2"
Moves the active window to the bottom middle of the screen.
.ie n .IP "\fBKeyWinArrangeSW\fR=""Ctrl+Alt+KP_1""" 4
.el .IP \fBKeyWinArrangeSW\fR=\f(CWCtrl+Alt+KP_1\fR 4
.IX Item "KeyWinArrangeSW=Ctrl+Alt+KP_1"
Moves the active window to the bottom left of the screen.
.ie n .IP "\fBKeyWinArrangeW\fR=""Ctrl+Alt+KP_4""" 4
.el .IP \fBKeyWinArrangeW\fR=\f(CWCtrl+Alt+KP_4\fR 4
.IX Item "KeyWinArrangeW=Ctrl+Alt+KP_4"
Moves the active window to the middle left of the screen.
.ie n .IP "\fBKeyWinArrangeC\fR=""Ctrl+Alt+KP_5""" 4
.el .IP \fBKeyWinArrangeC\fR=\f(CWCtrl+Alt+KP_5\fR 4
.IX Item "KeyWinArrangeC=Ctrl+Alt+KP_5"
Moves the active window to the center of the screen.
.IP "\fBKeyWinTileLeft\fR=""""" 4
.IX Item "KeyWinTileLeft="""""
Let the active window occupy the left half of the screen.
.IP "\fBKeyWinTileRight\fR=""""" 4
.IX Item "KeyWinTileRight="""""
Let the active window occupy the right half of the screen.
.IP "\fBKeyWinTileTop\fR=""""" 4
.IX Item "KeyWinTileTop="""""
Let the active window occupy the top half of the screen.
.IP "\fBKeyWinTileBottom\fR=""""" 4
.IX Item "KeyWinTileBottom="""""
Let the active window occupy the bottom half of the screen.
.IP "\fBKeyWinTileTopLeft\fR=""""" 4
.IX Item "KeyWinTileTopLeft="""""
Let the active window occupy the top left quarter of the screen.
.IP "\fBKeyWinTileTopRight\fR=""""" 4
.IX Item "KeyWinTileTopRight="""""
Let the active window occupy the top right quarter of the screen.
.IP "\fBKeyWinTileBottomLeft\fR=""""" 4
.IX Item "KeyWinTileBottomLeft="""""
Let the active window occupy the bottom left quarter of the screen.
.IP "\fBKeyWinTileBottomRight\fR=""""" 4
.IX Item "KeyWinTileBottomRight="""""
Let the active window occupy the bottom right quarter of the screen.
.IP "\fBKeyWinTileCenter\fR=""""" 4
.IX Item "KeyWinTileCenter="""""
Let the active window occupy the center quarter of the screen.
.ie n .IP "\fBKeyWinSmartPlace\fR=""Ctrl+Alt+Shift+KP_5""" 4
.el .IP \fBKeyWinSmartPlace\fR=\f(CWCtrl+Alt+Shift+KP_5\fR 4
.IX Item "KeyWinSmartPlace=Ctrl+Alt+Shift+KP_5"
Smart place the active window.
.ie n .IP "\fBKeySysWinMenu\fR=""Shift+Esc""" 4
.el .IP \fBKeySysWinMenu\fR=\f(CWShift+Esc\fR 4
.IX Item "KeySysWinMenu=Shift+Esc"
Posts the system window menu.
.ie n .IP "\fBKeySysWinNext\fR=""Alt+Esc""" 4
.el .IP \fBKeySysWinNext\fR=\f(CWAlt+Esc\fR 4
.IX Item "KeySysWinNext=Alt+Esc"
Give focus to the next window and raise it.
.ie n .IP "\fBKeySysWinPrev\fR=""Alt+Shift+Esc""" 4
.el .IP \fBKeySysWinPrev\fR=\f(CWAlt+Shift+Esc\fR 4
.IX Item "KeySysWinPrev=Alt+Shift+Esc"
Give focus to the previous window and raise it.
.ie n .IP "\fBKeySysDialog\fR=""Ctrl+Alt+Del""" 4
.el .IP \fBKeySysDialog\fR=\f(CWCtrl+Alt+Del\fR 4
.IX Item "KeySysDialog=Ctrl+Alt+Del"
Opens the IceWM system dialog in the center of the screen.
.ie n .IP "\fBKeySysMenu\fR=""Ctrl+Esc""" 4
.el .IP \fBKeySysMenu\fR=\f(CWCtrl+Esc\fR 4
.IX Item "KeySysMenu=Ctrl+Esc"
Activates the IceWM root menu in the lower left corner.
.ie n .IP "\fBKeySysWindowList\fR=""Alt+Ctrl+Esc""" 4
.el .IP \fBKeySysWindowList\fR=\f(CWAlt+Ctrl+Esc\fR 4
.IX Item "KeySysWindowList=Alt+Ctrl+Esc"
Opens the IceWM system window list in the center of the screen.
.ie n .IP "\fBKeySysAddressBar\fR=""Alt+Ctrl+Space""" 4
.el .IP \fBKeySysAddressBar\fR=\f(CWAlt+Ctrl+Space\fR 4
.IX Item "KeySysAddressBar=Alt+Ctrl+Space"
Opens the address bar in the task bar where a command can be typed.
.ie n .IP "\fBKeySysWorkspacePrev\fR=""Alt+Ctrl+Left""" 4
.el .IP \fBKeySysWorkspacePrev\fR=\f(CWAlt+Ctrl+Left\fR 4
.IX Item "KeySysWorkspacePrev=Alt+Ctrl+Left"
Goes one workspace to the left.
.ie n .IP "\fBKeySysWorkspaceNext\fR=""Alt+Ctrl+Right""" 4
.el .IP \fBKeySysWorkspaceNext\fR=\f(CWAlt+Ctrl+Right\fR 4
.IX Item "KeySysWorkspaceNext=Alt+Ctrl+Right"
Goes one workspace to the right.
.ie n .IP "\fBKeySysWorkspaceLast\fR=""Alt+Ctrl+Down""" 4
.el .IP \fBKeySysWorkspaceLast\fR=\f(CWAlt+Ctrl+Down\fR 4
.IX Item "KeySysWorkspaceLast=Alt+Ctrl+Down"
Goes to the previous workspace.
.ie n .IP "\fBKeySysWorkspacePrevTakeWin\fR=""Alt+Ctrl+Shift+Left""" 4
.el .IP \fBKeySysWorkspacePrevTakeWin\fR=\f(CWAlt+Ctrl+Shift+Left\fR 4
.IX Item "KeySysWorkspacePrevTakeWin=Alt+Ctrl+Shift+Left"
Takes the active window one workspace to the left.
.ie n .IP "\fBKeySysWorkspaceNextTakeWin\fR=""Alt+Ctrl+Shift+Right""" 4
.el .IP \fBKeySysWorkspaceNextTakeWin\fR=\f(CWAlt+Ctrl+Shift+Right\fR 4
.IX Item "KeySysWorkspaceNextTakeWin=Alt+Ctrl+Shift+Right"
Takes the active window one workspace to the right.
.ie n .IP "\fBKeySysWorkspaceLastTakeWin\fR=""Alt+Ctrl+Shift+Down""" 4
.el .IP \fBKeySysWorkspaceLastTakeWin\fR=\f(CWAlt+Ctrl+Shift+Down\fR 4
.IX Item "KeySysWorkspaceLastTakeWin=Alt+Ctrl+Shift+Down"
Takes the active window to the previous workspace.
.ie n .IP "\fBKeySysWorkspace1\fR=""Alt+Ctrl+1""" 4
.el .IP \fBKeySysWorkspace1\fR=\f(CWAlt+Ctrl+1\fR 4
.IX Item "KeySysWorkspace1=Alt+Ctrl+1"
Goes to workspace 1.
.ie n .IP "\fBKeySysWorkspace2\fR=""Alt+Ctrl+2""" 4
.el .IP \fBKeySysWorkspace2\fR=\f(CWAlt+Ctrl+2\fR 4
.IX Item "KeySysWorkspace2=Alt+Ctrl+2"
Goes to workspace 2.
.ie n .IP "\fBKeySysWorkspace3\fR=""Alt+Ctrl+3""" 4
.el .IP \fBKeySysWorkspace3\fR=\f(CWAlt+Ctrl+3\fR 4
.IX Item "KeySysWorkspace3=Alt+Ctrl+3"
Goes to workspace 3.
.ie n .IP "\fBKeySysWorkspace4\fR=""Alt+Ctrl+4""" 4
.el .IP \fBKeySysWorkspace4\fR=\f(CWAlt+Ctrl+4\fR 4
.IX Item "KeySysWorkspace4=Alt+Ctrl+4"
Goes to workspace 4.
.ie n .IP "\fBKeySysWorkspace5\fR=""Alt+Ctrl+5""" 4
.el .IP \fBKeySysWorkspace5\fR=\f(CWAlt+Ctrl+5\fR 4
.IX Item "KeySysWorkspace5=Alt+Ctrl+5"
Goes to workspace 5.
.ie n .IP "\fBKeySysWorkspace6\fR=""Alt+Ctrl+6""" 4
.el .IP \fBKeySysWorkspace6\fR=\f(CWAlt+Ctrl+6\fR 4
.IX Item "KeySysWorkspace6=Alt+Ctrl+6"
Goes to workspace 6.
.ie n .IP "\fBKeySysWorkspace7\fR=""Alt+Ctrl+7""" 4
.el .IP \fBKeySysWorkspace7\fR=\f(CWAlt+Ctrl+7\fR 4
.IX Item "KeySysWorkspace7=Alt+Ctrl+7"
Goes to workspace 7.
.ie n .IP "\fBKeySysWorkspace8\fR=""Alt+Ctrl+8""" 4
.el .IP \fBKeySysWorkspace8\fR=\f(CWAlt+Ctrl+8\fR 4
.IX Item "KeySysWorkspace8=Alt+Ctrl+8"
Goes to workspace 8.
.ie n .IP "\fBKeySysWorkspace9\fR=""Alt+Ctrl+9""" 4
.el .IP \fBKeySysWorkspace9\fR=\f(CWAlt+Ctrl+9\fR 4
.IX Item "KeySysWorkspace9=Alt+Ctrl+9"
Goes to workspace 9.
.ie n .IP "\fBKeySysWorkspace10\fR=""Alt+Ctrl+0""" 4
.el .IP \fBKeySysWorkspace10\fR=\f(CWAlt+Ctrl+0\fR 4
.IX Item "KeySysWorkspace10=Alt+Ctrl+0"
Goes to workspace 10.
.ie n .IP "\fBKeySysWorkspace11\fR=""Alt+Ctrl+minus""" 4
.el .IP \fBKeySysWorkspace11\fR=\f(CWAlt+Ctrl+minus\fR 4
.IX Item "KeySysWorkspace11=Alt+Ctrl+minus"
Goes to workspace 11.
.ie n .IP "\fBKeySysWorkspace12\fR=""Alt+Ctrl+equal""" 4
.el .IP \fBKeySysWorkspace12\fR=\f(CWAlt+Ctrl+equal\fR 4
.IX Item "KeySysWorkspace12=Alt+Ctrl+equal"
Goes to workspace 12.
.ie n .IP "\fBKeySysWorkspace1TakeWin\fR=""Alt+Ctrl+Shift+1""" 4
.el .IP \fBKeySysWorkspace1TakeWin\fR=\f(CWAlt+Ctrl+Shift+1\fR 4
.IX Item "KeySysWorkspace1TakeWin=Alt+Ctrl+Shift+1"
Takes the active window to workspace 1.
.ie n .IP "\fBKeySysWorkspace2TakeWin\fR=""Alt+Ctrl+Shift+2""" 4
.el .IP \fBKeySysWorkspace2TakeWin\fR=\f(CWAlt+Ctrl+Shift+2\fR 4
.IX Item "KeySysWorkspace2TakeWin=Alt+Ctrl+Shift+2"
Takes the active window to workspace 2.
.ie n .IP "\fBKeySysWorkspace3TakeWin\fR=""Alt+Ctrl+Shift+3""" 4
.el .IP \fBKeySysWorkspace3TakeWin\fR=\f(CWAlt+Ctrl+Shift+3\fR 4
.IX Item "KeySysWorkspace3TakeWin=Alt+Ctrl+Shift+3"
Takes the active window to workspace 3.
.ie n .IP "\fBKeySysWorkspace4TakeWin\fR=""Alt+Ctrl+Shift+4""" 4
.el .IP \fBKeySysWorkspace4TakeWin\fR=\f(CWAlt+Ctrl+Shift+4\fR 4
.IX Item "KeySysWorkspace4TakeWin=Alt+Ctrl+Shift+4"
Takes the active window to workspace 4.
.ie n .IP "\fBKeySysWorkspace5TakeWin\fR=""Alt+Ctrl+Shift+5""" 4
.el .IP \fBKeySysWorkspace5TakeWin\fR=\f(CWAlt+Ctrl+Shift+5\fR 4
.IX Item "KeySysWorkspace5TakeWin=Alt+Ctrl+Shift+5"
Takes the active window to workspace 5.
.ie n .IP "\fBKeySysWorkspace6TakeWin\fR=""Alt+Ctrl+Shift+6""" 4
.el .IP \fBKeySysWorkspace6TakeWin\fR=\f(CWAlt+Ctrl+Shift+6\fR 4
.IX Item "KeySysWorkspace6TakeWin=Alt+Ctrl+Shift+6"
Takes the active window to workspace 6.
.ie n .IP "\fBKeySysWorkspace7TakeWin\fR=""Alt+Ctrl+Shift+7""" 4
.el .IP \fBKeySysWorkspace7TakeWin\fR=\f(CWAlt+Ctrl+Shift+7\fR 4
.IX Item "KeySysWorkspace7TakeWin=Alt+Ctrl+Shift+7"
Takes the active window to workspace 7.
.ie n .IP "\fBKeySysWorkspace8TakeWin\fR=""Alt+Ctrl+Shift+8""" 4
.el .IP \fBKeySysWorkspace8TakeWin\fR=\f(CWAlt+Ctrl+Shift+8\fR 4
.IX Item "KeySysWorkspace8TakeWin=Alt+Ctrl+Shift+8"
Takes the active window to workspace 8.
.ie n .IP "\fBKeySysWorkspace9TakeWin\fR=""Alt+Ctrl+Shift+9""" 4
.el .IP \fBKeySysWorkspace9TakeWin\fR=\f(CWAlt+Ctrl+Shift+9\fR 4
.IX Item "KeySysWorkspace9TakeWin=Alt+Ctrl+Shift+9"
Takes the active window to workspace 9.
.ie n .IP "\fBKeySysWorkspace10TakeWin\fR=""Alt+Ctrl+Shift+0""" 4
.el .IP \fBKeySysWorkspace10TakeWin\fR=\f(CWAlt+Ctrl+Shift+0\fR 4
.IX Item "KeySysWorkspace10TakeWin=Alt+Ctrl+Shift+0"
Takes the active window to workspace 10.
.ie n .IP "\fBKeySysWorkspace11TakeWin\fR=""Alt+Ctrl+Shift+minus""" 4
.el .IP \fBKeySysWorkspace11TakeWin\fR=\f(CWAlt+Ctrl+Shift+minus\fR 4
.IX Item "KeySysWorkspace11TakeWin=Alt+Ctrl+Shift+minus"
Takes the active window to workspace 11.
.ie n .IP "\fBKeySysWorkspace12TakeWin\fR=""Alt+Ctrl+Shift+equal""" 4
.el .IP \fBKeySysWorkspace12TakeWin\fR=\f(CWAlt+Ctrl+Shift+equal\fR 4
.IX Item "KeySysWorkspace12TakeWin=Alt+Ctrl+Shift+equal"
Takes the active window to workspace 12.
.ie n .IP "\fBKeySysTileVertical\fR=""Alt+Shift+F2""" 4
.el .IP \fBKeySysTileVertical\fR=\f(CWAlt+Shift+F2\fR 4
.IX Item "KeySysTileVertical=Alt+Shift+F2"
Tiles all windows from left to right maximized vertically.
.ie n .IP "\fBKeySysTileHorizontal\fR=""Alt+Shift+F3""" 4
.el .IP \fBKeySysTileHorizontal\fR=\f(CWAlt+Shift+F3\fR 4
.IX Item "KeySysTileHorizontal=Alt+Shift+F3"
Tiles all windows from top to bottom maximized horizontally.
.ie n .IP "\fBKeySysCascade\fR=""Alt+Shift+F4""" 4
.el .IP \fBKeySysCascade\fR=\f(CWAlt+Shift+F4\fR 4
.IX Item "KeySysCascade=Alt+Shift+F4"
Makes a horizontal cascade of all windows which are maximized vertically.
.ie n .IP "\fBKeySysArrange\fR=""Alt+Shift+F5""" 4
.el .IP \fBKeySysArrange\fR=\f(CWAlt+Shift+F5\fR 4
.IX Item "KeySysArrange=Alt+Shift+F5"
Rearranges the windows.
.ie n .IP "\fBKeySysUndoArrange\fR=""Alt+Shift+F7""" 4
.el .IP \fBKeySysUndoArrange\fR=\f(CWAlt+Shift+F7\fR 4
.IX Item "KeySysUndoArrange=Alt+Shift+F7"
Undoes arrangement.
.ie n .IP "\fBKeySysArrangeIcons\fR=""Alt+Shift+F8""" 4
.el .IP \fBKeySysArrangeIcons\fR=\f(CWAlt+Shift+F8\fR 4
.IX Item "KeySysArrangeIcons=Alt+Shift+F8"
Rearranges icons.
.ie n .IP "\fBKeySysMinimizeAll\fR=""Alt+Shift+F9""" 4
.el .IP \fBKeySysMinimizeAll\fR=\f(CWAlt+Shift+F9\fR 4
.IX Item "KeySysMinimizeAll=Alt+Shift+F9"
Minimizes all windows.
.ie n .IP "\fBKeySysHideAll\fR=""Alt+Shift+F11""" 4
.el .IP \fBKeySysHideAll\fR=\f(CWAlt+Shift+F11\fR 4
.IX Item "KeySysHideAll=Alt+Shift+F11"
Hides all windows.
.ie n .IP "\fBKeySysShowDesktop\fR=""Alt+Ctrl+d""" 4
.el .IP \fBKeySysShowDesktop\fR=\f(CWAlt+Ctrl+d\fR 4
.IX Item "KeySysShowDesktop=Alt+Ctrl+d"
Unmaps all windows to show the desktop.
.ie n .IP "\fBKeySysCollapseTaskBar\fR=""Alt+Ctrl+h""" 4
.el .IP \fBKeySysCollapseTaskBar\fR=\f(CWAlt+Ctrl+h\fR 4
.IX Item "KeySysCollapseTaskBar=Alt+Ctrl+h"
Hides the task bar.
.ie n .IP "\fBKeyTaskBarSwitchNext\fR=""undefined""" 4
.el .IP \fBKeyTaskBarSwitchNext\fR=\f(CWundefined\fR 4
.IX Item "KeyTaskBarSwitchNext=undefined"
Switches to the next window in the task bar.
.ie n .IP "\fBKeyTaskBarSwitchPrev\fR=""undefined""" 4
.el .IP \fBKeyTaskBarSwitchPrev\fR=\f(CWundefined\fR 4
.IX Item "KeyTaskBarSwitchPrev=undefined"
Switches to the previous window in the task bar.
.ie n .IP "\fBKeyTaskBarMoveNext\fR=""undefined""" 4
.el .IP \fBKeyTaskBarMoveNext\fR=\f(CWundefined\fR 4
.IX Item "KeyTaskBarMoveNext=undefined"
Moves the task bar button of the current window
right.
.ie n .IP "\fBKeyTaskBarMovePrev\fR=""undefined""" 4
.el .IP \fBKeyTaskBarMovePrev\fR=\f(CWundefined\fR 4
.IX Item "KeyTaskBarMovePrev=undefined"
Moves the task bar button of the current window
left.
.ie n .IP "\fBKeySysWinListMenu\fR=""undefined""" 4
.el .IP \fBKeySysWinListMenu\fR=\f(CWundefined\fR 4
.IX Item "KeySysWinListMenu=undefined"
Shows the window list menu.
.ie n .IP "\fBKeySysKeyboardNext\fR=""undefined""" 4
.el .IP \fBKeySysKeyboardNext\fR=\f(CWundefined\fR 4
.IX Item "KeySysKeyboardNext=undefined"
Switch to the next keyboard layout in the KeyboardLayouts list.
.ie n .IP "\fBKeySysSwitchNext\fR=""Alt+Tab""" 4
.el .IP \fBKeySysSwitchNext\fR=\f(CWAlt+Tab\fR 4
.IX Item "KeySysSwitchNext=Alt+Tab"
Opens the \f(CW\*(C`QuickSwitch\*(C'\fR popup (see "INPUT FOCUS")
and/or moves the selector in the \f(CW\*(C`QuickSwitch\*(C'\fR popup.
.ie n .IP "\fBKeySysSwitchLast\fR=""Alt+Shift+Tab""" 4
.el .IP \fBKeySysSwitchLast\fR=\f(CWAlt+Shift+Tab\fR 4
.IX Item "KeySysSwitchLast=Alt+Shift+Tab"
Works like \f(CW\*(C`KeySysSwitchNext\*(C'\fR but moving in the
opposite direction.
.ie n .IP "\fBKeySysSwitchClass\fR=""Alt+grave""" 4
.el .IP \fBKeySysSwitchClass\fR=\f(CWAlt+grave\fR 4
.IX Item "KeySysSwitchClass=Alt+grave"
Is like \f(CW\*(C`KeySysSwitchNext\*(C'\fR but only for windows
with the same WM_CLASS property as the currently focused window.
.SS "MOUSE BINDINGS"
.IX Subsection "MOUSE BINDINGS"
You can control windows by a modified mouse button press:
.ie n .IP "\fBMouseWinMove\fR=""Alt+Pointer_Button1""" 4
.el .IP \fBMouseWinMove\fR=\f(CWAlt+Pointer_Button1\fR 4
.IX Item "MouseWinMove=Alt+Pointer_Button1"
Moves the window under the mouse over the screen.
.ie n .IP "\fBMouseWinSize\fR=""Alt+Pointer_Button3""" 4
.el .IP \fBMouseWinSize\fR=\f(CWAlt+Pointer_Button3\fR 4
.IX Item "MouseWinSize=Alt+Pointer_Button3"
Resizes the window. Keep the key and button pressed.
To enlarge the window move the mouse button away from the center. To
shrink it move towards the centre.
.ie n .IP "\fBMouseWinRaise\fR=""Ctrl+Alt+Pointer_Button1""" 4
.el .IP \fBMouseWinRaise\fR=\f(CWCtrl+Alt+Pointer_Button1\fR 4
.IX Item "MouseWinRaise=Ctrl+Alt+Pointer_Button1"
Raises the window under the mouse.
.ie n .IP "\fBMouseWinLower\fR=""Ctrl+Alt+Pointer_Button1""" 4
.el .IP \fBMouseWinLower\fR=\f(CWCtrl+Alt+Pointer_Button1\fR 4
.IX Item "MouseWinLower=Ctrl+Alt+Pointer_Button1"
Lowers the window under the mouse.
If this is equal to \f(CW\*(C`MouseWinRaise\*(C'\fR and the window can be raised
then \f(CW\*(C`MouseWinRaise\*(C'\fR takes preference over \f(CW\*(C`MouseWinLower\*(C'\fR.
.IP "\fBMouseWinTabbing\fR=""Shift+Pointer_Button2""" 4
.IX Item "MouseWinTabbing=""Shift+Pointer_Button2"""
Mouse binding to create tabs.
Drag the title bar with this button over another title bar.
When they start to flash, release the button to merge the frame tabs.
.PP
The title frame of a window also listens for mouse clicks. Left double
clicking maximizes the window (\f(CW\*(C`TitleBarMaximizeButton=1\*(C'\fR). Press
Shift to only maximize vertically. Press Alt+Shift for horizontally.
Middle double clicking rolls up the window (\f(CW\*(C`TitleBarRollupButton=2\*(C'\fR).
Also press Shift to maximize horizontally. If \fBTitleBarRollupButton\fR
is either 4 or 5 then the scroll wheel controls rolling up or down.
Pressing a mouse button and moving it will move the window.
\&\f(CW\*(C`Alt+Pointer_Button1\*(C'\fR lowers the window.
.PP
When the mouse is on the window frame then a left click raises the
window. Dragging with the left button down resizes the window.
Clicking the right button pops up the context menu. Dragging with the
right button moves the window.
.PP
Clicking on the desktop activates a menu. The middle button shows the
window list (\f(CW\*(C`DesktopWinListButton=2\*(C'\fR). The right button shows the
root menu (\f(CW\*(C`DesktopMenuButton=3\*(C'\fR). If you press \f(CW\*(C`Ctrl+Alt\*(C'\fR then
the mouse wheel will focus all applications in turn.
.SS SIGNALS
.IX Subsection "SIGNALS"
\&\fBicewm\fR supports the following signals:
.IP \fBSIGHUP\fR 4
.IX Item "SIGHUP"
\&\fBicewm\fR will restart itself. It is a way to reload the configuration.
.IP "\fBSIGINT\fR, \fBSIGTERM\fR" 4
.IX Item "SIGINT, SIGTERM"
\&\fBicewm\fR will cease to manage application windows and terminate.
.IP \fBSIGQUIT\fR 4
.IX Item "SIGQUIT"
\&\fBicewm\fR will initiate the logout procedure. If a \f(CW\*(C`LogoutCommand\*(C'\fR
preferences option was configured it will be executed.
.IP \fBSIGUSR2\fR 4
.IX Item "SIGUSR2"
Toggle the logging of X11 events, if \f(CW\*(C`logevents\*(C'\fR was configured.
.SS "ENVIRONMENT VARIABLES"
.IX Subsection "ENVIRONMENT VARIABLES"
.IP \fBICEWM_PRIVCFG\fR 4
.IX Item "ICEWM_PRIVCFG"
The directory for user private configuration files. When this
environment variable is not specified, the default directory is
\&\fR\f(CI$XDG_CONFIG_HOME\fR\fI/icewm\fR when that directory exists, otherwise the
default value is \fI\fR\f(CI$HOME\fR\fI/.icewm\fR.
.IP \fBDISPLAY\fR 4
.IX Item "DISPLAY"
The name of the X11 server. See \fBXorg\fR\|(1) or \fBXserver\fR\|(1). This
value can be overridden by the \fB\-\-display\fR option.
.IP "\fBMAILPATH\fR, \fBMAIL\fR" 4
.IX Item "MAILPATH, MAIL"
Gives the location of your mailbox. If the schema is omitted the local
"file" schema is assumed. This is used by the mailbox applet in the
task bar to show the status of your mailbox. If the \f(CW\*(C`MailBoxPath\*(C'\fR
option in the \fIpreferences\fR file is set, then that one takes
precedence.
.SS FILES
.IX Subsection "FILES"
.SS "CONFIGURATION DIRECTORIES"
.IX Subsection "CONFIGURATION DIRECTORIES"
\&\fBicewm\fR looks for configuration files in the following directories, in
the given order, until it finds one:
.ie n .IP \fR\fI$ICEWM_PRIVCFG\fR\fI/\fR 4
.el .IP \fR\f(CI$ICEWM_PRIVCFG\fR\fI/\fR 4
.IX Item "$ICEWM_PRIVCFG/"
Contains user-specific configurations. When \fBICEWM_PRIVCFG\fR is
specified, this directory takes precedence over
\&\fR\f(CI$XDG_CONFIG_HOME\fR\fI/icewm\fR and \fI\fR\f(CI$HOME\fR\fI/.icewm\fR.
.ie n .IP \fR\fI$XDG_CONFIG_HOME\fR\fI/icewm/\fR 4
.el .IP \fR\f(CI$XDG_CONFIG_HOME\fR\fI/icewm/\fR 4
.IX Item "$XDG_CONFIG_HOME/icewm/"
Contains user-specific configurations. When this directory exists it
take precedence over \fR\f(CI$HOME\fR\fI/.icewm\fR.
.ie n .IP \fR\fI$HOME\fR\fI/.icewm/\fR 4
.el .IP \fR\f(CI$HOME\fR\fI/.icewm/\fR 4
.IX Item "$HOME/.icewm/"
Contains user-specific configurations. This is the historical default
directory.
.IP \fI/etc/icewm/\fR 4
.IX Item "/etc/icewm/"
Contains system-wide customized defaults. Please note that your local
installation may have been configured to use a different system
location. The output of \f(CW\*(C`icewm \-\-directories\*(C'\fR will show this location.
.IP \fI/usr/share/icewm/\fR 4
.IX Item "/usr/share/icewm/"
Default local installation settings.
.SS "CONFIGURATION FILES"
.IX Subsection "CONFIGURATION FILES"
.IP \fIenv\fR 4
.IX Item "env"
\&\fBicewm\-session\fR\|(1) loads additional environment variables from the file
\&\fIenv\fR. Each line is subjected to POSIX shell expansion by
\&\fBwordexp\fR\|(3). Comment lines starting by a hash-sign (\f(CW\*(C`#\*(C'\fR) are ignored.
\&\fBicewm\-session\fR\|(1) will load those expanded lines that contain a name,
followed by an equals sign, followed by the value (which may be empty).
.Sp
See \fBicewm\-env\fR\|(5).
.IP \fIfocus_mode\fR 4
.IX Item "focus_mode"
Defines the initial value for \f(CW\*(C`FocusMode\*(C'\fR. Its default value is
\&\f(CW\*(C`FocusMode=1\*(C'\fR (Click-to-focus). This can be changed via the menu.
\&\fBicewm\fR will save the Focus menu choice in this file.
.Sp
See \fBicewm\-focus_mode\fR\|(5).
.IP \fIkeys\fR 4
.IX Item "keys"
Global keybindings to launch applications, which need not be window
manager related. Each non-empty line starts with the word \f(CW\*(C`key\*(C'\fR.
After one or more spaces follows a double-quoted string of the bound X11
key combination like \f(CW\*(C`Alt+Ctrl+Shift+X\*(C'\fR. Then after at least one space
follows a shell command-line that will be executed by \fBicewm\fR whenever
this key combination is pressed. For example, the following line
creates a hotkey to reload the \fBicewm\fR configuration:
.Sp
.Vb 1
\& key "Ctrl+Shift+r" icesh restart
.Ve
.Sp
See \fBicewm\-keys\fR\|(5).
.IP \fImenu\fR 4
.IX Item "menu"
A menu of applications; usually customized by the user. \fBicewm\fR
provides the \fBicewm\-menu\-fdo\fR\|(1) program to generate a default menu.
Similar programs are \fBxdg_menu\fR\|(1), \fBmmaker\fR\|(1) (MenuMaker),
\&\fBxde\-menu\fR\|(1), \fBxdgmenumaker\fR\|(1).
.Sp
See \fBicewm\-menu\fR\|(5).
.IP \fIpreferences\fR 4
.IX Item "preferences"
Contains general settings like paths, colors and fonts, but also options
to control the \fBicewm\fR focus behaviour and the applets that are
started in the task bar. The \fBicewm\fR installation will provide a
default \fIpreferences\fR file, which can be copied to the \fBicewm\fR user
configuration directory and modified.
.Sp
See \fBicewm\-preferences\fR\|(5).
.IP \fIprefoverride\fR 4
.IX Item "prefoverride"
Settings which override the settings from a theme. Some of the \fBicewm\fR
configuration options from the preferences file that control the
look-and-feel may be overridden by the theme, if the theme designer
thinks this is desirable. However, this \fIprefoverride\fR file will again
override this for a few specific options of your choosing. It is safe
to leave this file empty initially.
.Sp
See \fBicewm\-prefoverride\fR\|(5).
.IP \fIprograms\fR 4
.IX Item "programs"
An automatically generated menu of applications. This could be used by
\&\fBwmconfig\fR\|(1), menu or similar programs to give easy access to all the
desktop applications that are installed on the system.
.Sp
See \fBicewm\-programs\fR\|(5).
.IP \fItheme\fR 4
.IX Item "theme"
This file contains the name of the default theme. On startup \fBicewm\fR
reads this file to obtain the theme name, unless \fBicewm\fR was started
with the \fB\-\-theme\fR option. Whenever a different theme is selected from
the \fBicewm\fR Menu then the theme file is overwritten with the name of
the selected theme. This theme file contains the keyword \f(CW\*(C`Theme\*(C'\fR,
followed by an equals sign, followed by a double-quoted string with the
theme name. The theme name is the name of the theme directory, followed
by a slash, followed by the theme file. Usually the theme file is just
\&\fIdefault.theme\fR, but a theme may have alternatives. Alternatives are
small tweaks of a theme. These are specified in their own \fI.theme\fR
file, which replaces \fIdefault.theme\fR. If no theme file exists then
\&\fBicewm\fR will use the default setting of
\&\f(CW\*(C`Theme="default/default.theme"\*(C'\fR.
.Sp
See \fBicewm\-theme\fR\|(5).
.IP \fItoolbar\fR 4
.IX Item "toolbar"
Contains names of quick to launch applications with icons for the task
bar. Each non-empty non-comment line starts with the keyword \fBprog\fR.
After one or more spaces follows a name, which is displayed in a tool
tip whenever the mouse cursor hovers over the toolbar icon. This name
may be a double quoted string. Then follows the bare name of the icon
to use without extensions. This icon will be shown in the toolbar. The
last component is a shell command-line that will be executed whenever
the user presses the icon in the toolbar. For example, the following
line in toolbar will create a button with tool tip \f(CW\*(C`Mozilla Firefox\*(C'\fR
with the \fIfirefox\fR icon that launches \fBfirefox\fR\|(1) when clicked:
.Sp
.Vb 1
\& prog "Mozilla Firefox" firefox /usr/bin/firefox \-\-private\-window
.Ve
.Sp
See \fBicewm\-toolbar\fR\|(5).
.IP \fIwinoptions\fR 4
.IX Item "winoptions"
Contains settings to control window appearance and behaviour that are
specific to applications or groups of applications. Options can control
the border, whether it appears on the task bar, the window list, the
system tray and the workspaces. Also its layer, geometry, whether it
can be moved, resized and closed.
.Sp
See \fBicewm\-winoptions\fR\|(5).
.IP \fIstartup\fR 4
.IX Item "startup"
Contains commands to be executed on \fBicewm\fR startup. This is an
executable script with commands to tweak X11 settings and launch some
applications that need to be active whenever \fBicewm\fR is started.
It is run by \fBicewm\-session\fR\|(1) when \fBicewm\fR starts.
.Sp
See \fBicewm\-startup\fR\|(5).
.IP \fIshutdown\fR 4
.IX Item "shutdown"
Contains commands to be executed on \fBicewm\fR shutdown. This is an
executable script with commands to be executed in the last stage of
\&\fBicewm\fR termination. Typically they may undo some of the effects of
the \fIstartup\fR script. It is run by \fBicewm\-session\fR\|(1) when \fBicewm\fR
terminates.
.Sp
See \fBicewm\-shutdown\fR\|(5).
.SS "CONFIGURATION SUBDIRECTORIES"
.IX Subsection "CONFIGURATION SUBDIRECTORIES"
.IP \fIcursors\fR 4
.IX Item "cursors"
May contain cursor icons in the XPM image format. These overrule cursors
provided by a theme. There are 3 direction cursors: \fIleft.xpm\fR,
\&\fIright.xpm\fR, \fImove.xpm\fR, 8 resize cursors: \fIsizeR.xpm\fR, \fIsizeTR.xpm\fR,
\&\fIsizeT.xpm\fR, \fIsizeTL.xpm\fR, \fIsizeL.xpm\fR, \fIsizeBL.xpm\fR, \fIsizeB.xpm\fR,
\&\fIsizeBR.xpm\fR, and 4 scroll cursors: \fIscrollL.xpm\fR, \fIscrollR.xpm\fR,
\&\fIscrollU.xpm\fR, and \fIscrollD.xpm\fR.
By default an XPM header defines four dimensions: width, height, colors
and chars-per-pixel. For cursors this must be extended to six. The last
two are the \fIx\-hotspot\fR and the \fIy\-hotspot\fR. These define which point
in the XPM image is the sensitive point for the mouse pointer.
.IP \fIicons\fR 4
.IX Item "icons"
Contains icons for applications and keyboard layouts. These can be in
XPM, PNG or SVG format. The filename of an \fIapplication icon\fR may
follow a specific naming pattern, like \fIapp_32x32.xpm\fR. They start
with a base name, which usually is just a single word. Then follows
an underscore, followed by a size specification, as in \f(CW\*(C`SIZExSIZE\*(C'\fR.
This is followed by a dot and the file extension, where the extension
denotes the icon image format. Common sizes are 16, 32 and 48.
This depends on the respective \f(CW\*(C`IconSize\*(C'\fR preferences options.
.IP \fIledclock\fR 4
.IX Item "ledclock"
Pictures of digits for the LED clock which is displayed in the
bottom-right corner of the task bar. These can be seen when the
\&\f(CW\*(C`TaskBarShowClock\*(C'\fR and \f(CW\*(C`TaskBarClockLeds\*(C'\fR options are both set to 1.
.IP \fImailbox\fR 4
.IX Item "mailbox"
Icons that are used to display different states of the mailbox applet
in the task bar. There are five states and each has its own icon:
\&\fImail.xpm\fR, \fInewmail.xpm\fR, \fIunreadmail.xpm\fR, \fInomail.xpm\fR,
\&\fIerrmail.xpm\fR.
.IP \fIsounds\fR 4
.IX Item "sounds"
Audio files that are played by \fBicesound\fR\|(1) on GUI events. These
are: \fIstartup.wav\fR, \fIshutdown.wav\fR, \fIrestart.wav\fR, \fIlaunchApp.wav\fR,
\&\fIworkspaceChange.wav\fR, \fIwindowOpen.wav\fR, \fIwindowClose.wav\fR,
\&\fIdialogOpen.wav\fR, \fIdialogClose.wav\fR, \fIwindowMax.wav\fR,
\&\fIwindowRestore.wav\fR, \fIwindowMin.wav\fR, \fIwindowHide.wav\fR,
\&\fIwindowRollup.wav\fR, \fIwindowMoved.wav\fR, \fIwindowSized.wav\fR,
\&\fIwindowLower.wav\fR.
.IP \fItaskbar\fR 4
.IX Item "taskbar"
Pictures to customize the look of the task bar. These include:
\&\fItaskbarbg.xpm\fR, \fItaskbuttonactive.xpm\fR, \fItaskbuttonbg.xpm\fR,
\&\fItaskbuttonminimized.xpm\fR, \fItoolbuttonbg.xpm\fR,
\&\fIworkspacebuttonactive.xpm\fR, \fIworkspacebuttonbg.xpm\fR.
.IP \fIthemes\fR 4
.IX Item "themes"
A directory to store themes. Each theme is stored in its own
sub-directory in the \fIthemes\fR directory. A theme contains at least a
\&\fIdefault.theme\fR file, and optionally theme alternatives which are
additional files that have a \fI.theme\fR file name extension and that
contain tweaks of the \fIdefault.theme\fR file.
How to create a theme is explained in the
IceWM Theme Creation Howto.
.IP \fIworkspace\fR 4
.IX Item "workspace"
If \f(CW\*(C`PagerShowPreview\*(C'\fR is disabled, icewm looks in the \f(CW\*(C`workspace\*(C'\fR
directory for images to draw on a workspace button. The image filename
should have the name of the workspace. The image extension is optional.
.SS OPACITY
.IX Subsection "OPACITY"
IceWM supports window opacity and transparency in connection with an
external compositor like \fBcompton\fR\|(1) or \fBpicom\fR\|(1).
If a client window sets the \f(CW\*(C`_NET_WM_WINDOW_OPACITY\*(C'\fR property on
its window, then \fBicewm\fR will copy this to the outer frame window,
where the compositor will read it and adjust the opacity accordingly.
.PP
The opacity can also be set in the \fBicewm\-winoptions\fR\|(5) file.
\&\fBicesh\fR\|(1) can control the opacity level of running applications.
.PP
The _NET_WM_WINDOW_TYPE properties that \fBicewm\fR sets on its windows
are \fIDIALOG\fR, \fINOTIFICATION\fR, \fIPOPUP_MENU\fR and \fITOOLTIP\fR. The output
of \f(CW\*(C`icesh windows\*(C'\fR shows their WM_CLASS values. These can be helpful
to configure compton.
.SS EXAMPLES
.IX Subsection "EXAMPLES"
Examples of the above configuration files can be found in the default
installation path or in the system-wide defaults. See the output of
\&\f(CW\*(C`icewm \-\-directories\*(C'\fR for their locations.
.SS "CONFORMING TO"
.IX Subsection "CONFORMING TO"
ICCCM 2.0: partial. NetWM/EWMH: extensive.
See the file \fICOMPLIANCE\fR in the distribution for full details.
.SS "SEE ALSO"
.IX Subsection "SEE ALSO"
\&\fBicehelp\fR\|(1),
\&\fBicesh\fR\|(1),
\&\fBicesound\fR\|(1),
\&\fBicewm\-env\fR\|(5),
\&\fBicewm\-focus_mode\fR\|(5),
\&\fBicewm\-keys\fR\|(5),
\&\fBicewm\-menu\fR\|(5),
\&\fBicewm\-menu\-fdo\fR\|(1),
\&\fBicewm\-menu\-xrandr\fR\|(1),
\&\fBicewm\-preferences\fR\|(5),
\&\fBicewm\-prefoverride\fR\|(5),
\&\fBicewm\-programs\fR\|(5),
\&\fBicewm\-session\fR\|(1),
\&\fBicewm\-set\-gnomewm\fR\|(1),
\&\fBicewm\-shutdown\fR\|(5),
\&\fBicewm\-startup\fR\|(5),
\&\fBicewm\-theme\fR\|(5),
\&\fBicewm\-toolbar\fR\|(5),
\&\fBicewm\-winoptions\fR\|(5),
\&\fBicewmbg\fR\|(1),
\&\fBicewmhint\fR\|(1),
\&\fBsetxkbmap\fR\|(1),
\&\fBXorg\fR\|(1),
\&\fBXserver\fR\|(1),
\&\fBxinit\fR\|(1),
\&\fBxprop\fR\|(1),
\&\fBxwininfo\fR\|(1),
\&\fBwmctrl\fR\|(1).
.SS BUGS
.IX Subsection "BUGS"
Please report bugs at <https://github.com/bbidulock/icewm/issues>.
.SS AUTHOR
.IX Subsection "AUTHOR"
Brian Bidulock <mailto:bidulock@openss7.org>.
.PP
See \fB\-\-copying\fR for full copyright notice and copying permissions.
.SS LICENSE
.IX Subsection "LICENSE"
\&\fBIceWM\fR is licensed under the GNU Library General Public License.
See the \fICOPYING\fR file in the distribution or use the \fB\-\-copying\fR flag
to display copying permissions.
|